garibaldi69
Goto Top

Wie funktioniert DNAT mit einem Cisco 1841

Hallo zusammen.

Ich habe ein Problem mit der Konfiguration von NAT. Mein Problem sieht so aus:

System A System B
x.x.x.x/x (nicht 192.168.1.x) x.x.x.x/x (nicht 192.168.1.x)
| |
| |
|
Router A (Cisco 1841)
Inside: x.x.x.x/x
Outside: 192.168.1.100/24
|
|
|
Intranet
|
|
|
Router B (Cisco 1841)
Outside: 172.1.1.100/24
Inside: y.y.y.y/y
|
|
|
SystemC
10.0.3.100/24


Hinter den Systemen A -C stecken kleine Netzwerke bzw. sehr spezielle Hardware. Die Router A und B bauen untereinander einen Tunnel mit GRE auf. Die Verbindungen als solche funktionieren. Ping ist also grundsätzlich kein Problem. Das große Problem stellt System C dar. Ich muss sowohl von System A als auch System B auf System C Port 1024 zugreifen. Für System C muss dieser Zugriff aber absolut zwingend (!) von den IPs 10.0.3.101 und 10.0.3.102 kommen. Die beiden Router sind vollständig unter meiner "Konfigurationsgewalt". Lediglich die IP Adressen in Richtung outside sind fest vorgegeben. Die IP Adressen von System A und B kann ich ebenfalls frei wählen. Mit den Einschränkungen, dass sie nicht im selben Subnet liegen und 192.168.1.x nicht genommen werden darf.

Wie lässt sich das realisieren? Mein Wissen/Verständnis von NAT reicht leider nicht aus, um aus anderen Beiträgen hier im Forum eine funktionierende Config zu bauen.
Ideal wäre, wenn sich das mit den Cisco 1841 machen ließe. Destination NAT ist mit diesen Routern aber scheinbar nicht möglich. Sollte das tatsächlich so sein, mit welchen (Marken-) Routern geht das?

Danke für Eure Antworten.

Content-Key: 232829

Url: https://administrator.de/contentid/232829

Printed on: April 19, 2024 at 09:04 o'clock

Member: dog
dog Mar 18, 2014, updated at Mar 21, 2014 at 11:58:29 (UTC)
Goto Top
Destination NAT ist mit diesen Routern aber scheinbar nicht möglich.

Du willst Source NAT:
Für System C muss dieser Zugriff aber absolut zwingend (!) von den IPs 10.0.3.101 und 10.0.3.102 kommen.

Die Regel kommt auf Router B und sollte etwa so aussehen:
ip nat outside source static 192.168.1.101 10.0.3.101

Ich habe grade keinen Router zum Testen, aber folgende Probleme sind möglich:
  • Der Router macht kein Proxy-ARP und die Antwort kommt nicht zurück. In dem Fall musst du ihm die 10.0.3.101 als secondary IP vergeben und noch eine DNAT-Regel erstellen
  • Die Antwort kommt zwar zum Router, aber der macht keine Rückübersetzung. In dem Fall musst du noch die umgekehrte Regel erstellen:
ip nat outside source static 10.0.3.101 192.168.1.101
  • Evtl. musst du die add-route option an die Regel anfügen, weil das Antwort-Paket sonst verworfen wird

(Die Befehle sind nicht wirklich intuitiv, aber müssen so. Siehe http://www.cisco.com/c/en/us/support/docs/ip/network-address-translatio ... Tabelle am Ende).
Member: Garibaldi69
Garibaldi69 Mar 20, 2014 at 11:26:25 (UTC)
Goto Top
* Der Router macht kein Proxy-ARP und die Antwort kommt nicht zurück. In dem Fall musst du ihm die 10.0.3.101 als secondary
IP vergeben und noch eine DNAT-Regel erstellen

Genau das ist ja meine Frage: Wie erstelle ich eine DNAT-Regel?

* Die Antwort kommt zwar zum Router, aber der macht keine Rückübersetzung. In dem Fall musst du noch die umgekehrte
Regel erstellen:
> ip nat outside source static 10.0.3.101 192.168.1.101
  • Evtl. musst du die add-route option an die Regel anfügen, weil das Antwort-Paket sonst verworfen wird

Das hat was gebracht! Damit kommen die Pakte tatsächlich wieder zurück. Für das System C funktioniert das jetzt alles.

Ich habe allerdings das Problem etwas zu einfach dargestellt. System A und B sind in der Realität lediglich zwei Netzwerkkarten ein und des selben Systems. Damit wird das Routing kompliziert. Ich benötige also zwingend zwei Zieladressen, da sonst immer über eine NIC die Verbindung aufgebaut wird.
Das klingt alles etwas seltsam, muss aber leider so sein.
Member: dog
dog Mar 20, 2014 updated at 14:41:10 (UTC)
Goto Top
Also ich habe mir den Post nochmal durchgelesen...und wozu brauchst du überhaupt NAT?
Du willst doch einfach nur die Systeme A,B,C in ein virtuelles, gemeinsames Netzwerk bekommen?
Mit GRE hast du schon die notwendige Verbindung. Bridge den Tunnel einfach auf beiden Seiten mit dem Inside-Interface und gib A und B dann die richtigen IPs.

z.B.:
http://www.cisco.com/c/en/us/support/docs/ip/layer-two-tunnel-protocol- ...
Member: Garibaldi69
Garibaldi69 Mar 20, 2014 at 15:05:46 (UTC)
Goto Top
Du willst doch einfach nur die Systeme A,B,C in ein virtuelles, gemeinsames Netzwerk bekommen?

Nicht ganz, A und B dürfen auf keinem Fall in einem gemeinsamen Netzwerk liegen. Es handelt sich dabei, wie oben beschrieben, um zwei verschiedene Netzwerkkarten des gleichen Rechners.