Hallo,
…ich kann mir das nicht erklären. Ich versteh´s nicht.
Vorweg: Die IPs und Hostnames hier sind von mir verändert.
Ich habe Shorewall auf meinem separaten Gateway eingerichtet. Nun will ich in einem total simplen Zwei-Interfaces-Szenario ein paar Port von draussen nach innen umleiten und kriege einen Hirnschaden. Auf EINEM Rechner geht es, auf einem ANDEREN nicht?!
Das hier habe ich in „rules“, um von draussen zwei verschiedene Webserver ansprechen zu können:
DNAT net loc:192.168.167.13:80 tcp 58990 DNAT net loc:192.168.167.1:80 tcp 58991
Resultat: Die zweite Umleitung von Port 58991 auf die .1 (ein Mac OS X Server) geht. Die erste auf einen Linux-Server geht nicht.
Beide Maschinen lassen sich vom Gateway selbst aus ansprechen (w3m 192.168.167.1), die Apaches laufen.
Wenn ich das Problem auf meinen Apache schiebe und statt den Ports für http einfach mal die für ssh umleite (läuft auch auf beiden Kisten) - das gleiche Problem.
Wenn ich die Regeln vertausche, sowohl in der Reihenfolge als auch von den Portnummern her - immer das gleiche: .1 geht, .13 nicht.
Wenn ich die Regel für .1 mal weggkommentiere, geht die für .13 trotzdem nicht, aber die .1-Regel beweisst ja, das die Syntax prinzipiell korrekt ist.
Für keinen der Rechner ist irgendwie eine „Spezialregel“ definiert, beide sind im gleichen Netzwerk und unterliegen ansonsten dem gleichen Regelsatz.
Ich teste die Verbindung ordnungsgemäss „von draussen“.
Wenn ich einen Verbindungsversuch per tcpdump mittrace, dann sehe ich auch was ankommen:
tcpdump -i eth0 -l -q IP h-213.61.96.99.host.de.example.com.43348 > intern13.intern.foo.www: tcp 0
Das stimmt. Genau das ist meine Verbindung. Aber wieso geht da nix zurück?
Auf dem anfragenden Rechner:
telnet 213.61.96.99 58990 Trying 213.61.96.99...
(wartet sich tot...)
Die Logfiles aller beteiligten Maschinen sind diesbezüglich leer.
Kann jemand was gegen das Summen in meinem Kopf tun? Ich rall´s nicht…
Solange die eine Zeile geht und die andere nicht verzichte ich mal auf das Posten von Configfiles. Das ist ja sinnlos. Ach ja, und: Ich habe beide Zeilen schon so oft neu geschrieben, vertauscht, etc,… da sind keine versteckten Steuerzeichen oder so enthalten.
Gruß, Jörg