NAT Router im (virtuellen) Testbetrieb

09/10/2012 - 20:29 von Thomas Wildgruber | Report spam
Hi Group,

um einem Azubi das Routing nàher zu bringen haben wir uns einen Router und
zwei Clients (jeweils als VM) gebaut. Ein Client für jedes Netz in dem der
Router mit einem Interface steht. Bei den Clients wurde keine Default Route
konfiguriert, sondern eine statische Netzroute ins jeweils andere Netz
konfiguriert. Klappt auch alles soweit wie erwartet.

Im nàchsten Schritt haben wir den Router zum NAT Router umgebaut (iptables
masquerade an eth1) und die IP einer Verbindung aus dem "internen" LAN wird
durch das Masquerade an eth1 (dem "externen" Interface) auch schön durch
die IP des "externen" Interface ersetzt. Klappt demnach auch wie erwartet.

Als nàchstes wollte ich dann DNAT (resp. Port Forwarding) ins Spiel bringen
und musste festellen, dass der "externe" Client (quasi vor dem NAT Router)
immer noch eine Verbindung zu dem Client hinter dem NAT Router aufbauen
kann ... noch ganz ohne Port Forwarding. Jetzt hab ich mich am Kopf
gekratzt und mich gefragt warum...?

Okay, der Router macht nur was man ihm sagt und bislang haben wir ihm ja
nur gesagt, dass er die IP der Pakete die ihn durch das Interface eth1
verlassen, mit seiner IP ersetzen soll. Der gegensàtzliche Weg wurde ja
nicht explizit verboten ... aber das ist er bei anderen NAT Devices doch
auch nicht oder liege ich da falsch.

Wie muss ich das gesamte Testsystem aufbauen um einen halbwegs
realistischen (und immer noch einleuchtenden) Anwendungsfall für einen
(D)NAT Router zu simulieren?

Thx & Bye Tom
"Ich weiß nicht, was der französische Staatspràsident Mitterand denkt, aber
ich denke dasselbe." (Helmut Kohl)
 

Lesen sie die antworten

#1 Paul Muster
09/10/2012 - 20:48 | Warnen spam
On 09.10.2012 20:29, Thomas Wildgruber wrote:

um einem Azubi das Routing nàher zu bringen haben wir uns einen Router und
zwei Clients (jeweils als VM) gebaut. Ein Client für jedes Netz in dem der
Router mit einem Interface steht. Bei den Clients wurde keine Default Route
konfiguriert, sondern eine statische Netzroute ins jeweils andere Netz
konfiguriert. Klappt auch alles soweit wie erwartet.

Im nàchsten Schritt haben wir den Router zum NAT Router umgebaut (iptables
masquerade an eth1) und die IP einer Verbindung aus dem "internen" LAN wird
durch das Masquerade an eth1 (dem "externen" Interface) auch schön durch
die IP des "externen" Interface ersetzt. Klappt demnach auch wie erwartet.

Als nàchstes wollte ich dann DNAT (resp. Port Forwarding) ins Spiel bringen
und musste festellen, dass der "externe" Client (quasi vor dem NAT Router)
immer noch eine Verbindung zu dem Client hinter dem NAT Router aufbauen
kann ... noch ganz ohne Port Forwarding. Jetzt hab ich mich am Kopf
gekratzt und mich gefragt warum...?



Was sagen "cat /proc/net/nf_conntrack" und "cat /proc/net/ip_conntrack"?

Okay, der Router macht nur was man ihm sagt und bislang haben wir ihm ja
nur gesagt, dass er die IP der Pakete die ihn durch das Interface eth1
verlassen, mit seiner IP ersetzen soll. Der gegensàtzliche Weg wurde ja
nicht explizit verboten ... aber das ist er bei anderen NAT Devices doch
auch nicht oder liege ich da falsch.

Wie muss ich das gesamte Testsystem aufbauen um einen halbwegs
realistischen (und immer noch einleuchtenden) Anwendungsfall für einen
(D)NAT Router zu simulieren?



Mal booten? ;-)


mfG Paul

Ähnliche fragen