DNAT auf einer Bridge

Nemesis

Nemesis

N3RD
hi,
ich habe hier eine Bridge eingerichtet, mit der ich den verkehr zwischen 2 subnetzen leiten möchte.
sämtliche clients7server solen nicht wissen, dass es auch ein anderes subnetz gibt, si esollen denken, dass der angesprochene client/server im eigenen subnetz liegt.
dabei sollen jeweils nur die ersten beiden byte der ip verändert werden.
bsp:
netz a: 194.173.0.1 entspricht netz b: 172.16.0.1

die bridge geht über die interfaces eth0 und eth1, mit brctl showmacs sehe ich, dass sie auch mac-adressen sammelt, mit tcpdump kann ich den verkehr an den interfaces beobachten.

nun leite ich auf layer2-ebene den verkehr mit
Code:
ebtables -t broute -A BROUTING -j DROP
auf die layer3-ebene zu iptables, welches dann mit:
Code:
iptables -t nat -A PREROUTING -m physdev --physdev-in eth1 -d 172.16.0.1 -j DNAT --to-destination 194.173.0.1
die Pakete eigentlich an die gewünschte ip leiten sollte.
mit dem modul ip_conntrack und der regel:
Code:
iptables -A FORWARD -m physdev --physdev-is-bridged -m state --state ESTABLISHED,RELATED -j ACCEPT
sollten die pakete dann eigentlich auch wieder den richtigen weg zurück finden, aber das ganze funktioniert nicht.
im kernel-log finde ich auch eine ganze menge nachrichten aus dem netz von eth0, aber aus dem netz von eth1, in dem sich momentan nur ein rechner befindet bekomme ich fast keine nachrichten.
wenn ich dann hingegen mit
Code:
tcpdump -n -i eth1
schaue, bekomme ich eine ganze menge an arp-anfragen z.b.:
Code:
arp who-has 172.16.120.100 tell 172.16.250.250
wobei hier ersteres ein DNS-Servers ist und zweiteres die ip des einen rechners, der sich in dem netz hinter eth1(172.16.0.0/16) befindet

ja, nun weiss ich nicht weiter ... :(
kann mir da jemand ehlfen ?

thx!
 
Zuletzt bearbeitet:

Ähnliche Themen

Port Forwarding mit iptables

Wired-Lan komisches Verhalten

ip6tables Problem

Internetsharing

Debian Routing Problem

Zurück
Oben