Probleme mit der Linux-IP-Weiterleitung

Probleme mit der Linux-IP-Weiterleitung

In meiner Umgebung haben die meisten Server zwei Netzwerkkarten. Eine primäre/Benutzernetzwerkkarte, die von der Anwendung verwendet wird, und einen sekundären/Backup-Adapter, der für Backups, Massenkopien usw. verwendet wird.

Ich habe gerade einen neuen Server eingerichtet und habe ein Problem damit, seinen sekundären Adapter von einem Client aus anzupingen, der nur einen Primär-/Benutzeradapter hat.

Von meinem Testclient aus kann ich meine anderen Server über ihre primären/sekundären Adapter anpingen.

Die Netzwerke:

  • 192.168.151.0 == Benutzernetzwerk mit meinen Servern

  • 192.168.147.0 == Benutzernetzwerk mit meinem Client

  • 192.168.245.0 == Backup-Netzwerk

Die Computer:

newServer (rhel 6) [auch bekannt als der Unruhestifter]

  • eth0: 192.168.151.180 (Benutzernetzwerk)

  • eth1: 192.168.245.187 (Backup-Netzwerk)

alterServer (rhel 5)

  • eth0: 192.168.151.203 (Benutzernetzwerk)

  • eth1: 192.168.245.236 (Backup-Netzwerk)

pubClient (rhel5) [Client-System mit nur einer Benutzeroberfläche]

  • eth0: 192.168.147.118 (Benutzer)

Von pubClient aus kann ich oldServer entweder über seine eth0- oder eth1-IP-Adressen anpingen. Mir ist aufgefallen (tcpdump), dass der Rückpfad des Pings die eth0-Schnittstelle von oldServer ist, wenn ich eth1 anpinge.

Von pubClient aus kann ich die eth0-Schnittstelle von newServer anpingen, aber wenn ich den eth1-Adapter von newServer anpinge, passiert nichts. Mit tcpdump sehe ich, dass der Datenverkehr in die Backup-Netzwerkschnittstelle eingeht, aber kein Datenverkehr ausgeht. Der eth1-Adapter funktioniert einwandfrei – von newServer aus kann ich andere Geräte im Backup-Netzwerk über die 245-Schnittstelle oder pubClient anpingen, ohne dass ein Problem auftritt.

Die Routing-Tabellen auf beiden Servern sind einfach und funktional identisch.

newServer # ip route list
192.168.151.0/24 dev eth0  proto kernel  scope link  src 192.168.151.180
192.168.245.0/24 dev eth1  proto kernel  scope link  src 192.168.245.187
default via 192.168.151.5 dev eth0

oldServer # ip route list
192.168.151.0/24 dev eth0  proto kernel  scope link  src 192.168.151.203
192.168.245.0/24 dev eth1  proto kernel  scope link  src 192.168.245.236
default via 192.168.151.5 dev eth2

Auf beiden Rechnern laufen keine Firewalls. net.ipv4.ip_forward = 0 Auf beiden Servern. Der neue Server läuft mit RHEL6. Ich frage mich, ob eine Art Netzwerkdurchquerung (wie ip_forward) standardmäßig deaktiviert ist?

Meine Netzwerkleute bestehen darauf, dass mit dem Routing zwischen diesen Maschinen alles in Ordnung ist.

Ich bin für jede Vermutung dankbar, wo das Problem liegen könnte.

Prost

-Scott

Antwort1

GELÖST!

Danke, Wayne.

Auf dem neuen (rhel6-Server)

echo "0" >/proc/sys/net/ipv4/conf/eth0/rp_filter
echo "0" >/proc/sys/net/ipv4/conf/eth1/rp_filter  

„Die uRPF-Prüfung prüft die Quelladresse der Pakete, wenn sie eingehen. Wenn die Route zu dieser Quelladresse nicht über diese Schnittstelle hinausgeht, wird das Paket verworfen.“

http://lartc.org/howto/lartc.kernel.html

verwandte Informationen