CentOS Multi Nic und Policy Routing?

CentOS Multi Nic und Policy Routing?

Ich kenne mich mit CentOS nicht aus und brauche Hilfe beim Routing hierfür. Ich habe eine CentOS-Box mit 3 Netzwerkkarten.

eth0      Link encap:Ethernet  
          inet addr:10.50.121.16  Bcast:10.50.121.255  Mask:255.255.255.0


eth1      Link encap:Ethernet  
          inet addr:10.50.128.134  Bcast:10.50.128.255  Mask:255.255.255.0

eth2      Link encap:Ethernet  
          inet addr:10.50.140.97  Bcast:10.50.140.255  Mask:255.255.255.0

eth0 war eine vorhandene Schnittstelle und hat die Standardroute, ich habe eth1 und eth2 hinzugefügt. Es gibt Gateways in den Segmenten eth1 und eth2 (die .1-Adresse auf beiden). Ich brauche einige Netzwerkflüsse zwischen den NICs eth1 und eth2 (über ihre jeweiligen Gateways), um einige Tests durchführen zu können. Also muss ich dafür wohl eine Richtlinienweiterleitung einrichten?

Bearbeiten: Entschuldigen Sie, um das klarzustellen, ich sage nicht, dass ich versuche, Pakete zwischen den beiden neuen Schnittstellen zu routen. Ich muss einige Pakete von der IP von eth1 an die IP von eth2 über eine Infrastruktur senden (und so eine Konversation zwischen dem VLAN von eth1 und dem VLAN von eth2 simulieren). Ich möchte also Folgendes tun: eth1 -> eth1-vlan-router -> ??? -> eth2-vlan-router->eth2 und dann über die umgekehrte Route antworten können. Mein Fehler, dass ich mich hier nicht ganz klar ausgedrückt habe.

Antwort1

IPv4-Routing ändern /etc/sysctl.confund aktivieren.

net.ipv4.ip_forward = 1

Führen Sie es dann aus sysctl -p, um die Einstellungen anzuwenden.

Um den aktuellen Wert von anzuzeigen net.ipv4.ip_forward, verwenden Sie:

sysctl net.ipv4.ip_forward

Antwort2

Mit Standard-Netzwerk-APIs ist dies nicht möglich.

Der Linux-Netzwerk-Stack verwendet den sog.schwaches Wirtsmodell, was insbesondere bedeutet, dass jede Adresse, die einer lokalen Schnittstelle zugewiesen ist, als lokal betrachtet wird. Wenn Sie versuchen, ein Paket an eine lokale Schnittstelle zu senden, wird es lokal in eine Schleife gesendet und erreicht nie das Netzwerk.

Obwohl Sie mithilfe von Raw Sockets wahrscheinlich etwas zusammenbasteln könnten, besteht die beste Lösung wahrscheinlich in der Verwendung eines zweiten Hosts, der möglicherweise als virtuelle Maschine implementiert ist.

verwandte Informationen