Routing zwischen Schnittstellen und NAT (IP-Aliasing)

Routing zwischen Schnittstellen und NAT (IP-Aliasing)

Ich habe 2 Server, beide verbinden sich über Switch0 (kein VLAN) Server1 hat 2 NICS

eth0 --> switch0
ppp0 --> modem --> internet
cat /proc/sys/net/ipv4/ip_forward 1

192.168.1.0/24
192.168.1.212 netmask 255.255.255.0

Route:

Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         0.0.0.0         0.0.0.0         U     0      0        0 ppp0
10.10.10.0      10.10.10.1      255.255.255.0   UG    0      0        0 tun0
10.10.10.1      0.0.0.0         255.255.255.255 UH    0      0        0 tun0
151.7.202.72    0.0.0.0         255.255.255.255 UH    0      0        0 ppp0
172.16.212.0    0.0.0.0         255.255.255.0   U     0      0        0 vmnet1
192.168.1.0     0.0.0.0         255.255.255.0   U     0      0        0 eth0
192.168.116.0   0.0.0.0         255.255.255.0   U     0      0        0 vmnet8

Server2 ist:

192.168.1.0/24
192.168.1.252 netmask 255.255.255.0 --> switch0

mit 3 LANs, 3 NICS:

192.168.1.0/24 netmask 255.255.255.0 --> switch0
192.168.2.0/24 netmask 255.255.255.0 --> switch1
193.168.3.0/24 netmask 255.255.255.0 --> switch2

Route:

Destination        Gateway            Flags    Refs      Use  Netif Expire
default            192.168.1.212      UGS         0   168553   bge0
10.10.10.0/24      10.10.10.1         UGS         0        0   tun0
10.10.10.1         link#12            UH          0        0   tun0
10.10.10.2         link#12            UHS         0        0    lo0
127.0.0.1          link#10            UH          0     1897    lo0
192.168.1.0/24     link#1             U           0    42375   bge0
192.168.1.252      link#1             UHS         0        4    lo0
192.168.2.0/24     link#7             U           0   117807    rl0
192.168.2.252      link#7             UHS         0        0    lo0
192.168.3.0/24     link#8             U           0   161828    rl1
192.168.3.252      link#8             UHS         0        0    lo0

Ich muss ein Routing von 192.168.1.0/24 zu allen anderen LANs erstellen.

Sollte ich auf Server2 IP-Aliasing verwenden?

Antwort1

Eigentlich ist es ganz einfach.

Auf Server 2: Bearbeiten Sie (als sudo) die Datei /etc/sysctl.conf und suchen Sie diese Zeile

  #net.ipv4.ip_forward=1

und entkommentiere es,

  net.ipv4.ip_forward=1

Speichern Sie die Datei und geben Sie den Befehl ein:

  sudo sysctl -p

Dadurch wird Ihr Kernel lediglich angewiesen, die Weitergabe von Paketen von einer Netzwerkkarte zur anderen zuzulassen.

Außerdem müssen wir NAT darauf konfigurieren, damit Rückpakete korrekt über Server2 geroutet werden können. Geben Sie Folgendes ein:

  sudo iptables -t nat  -A POSTROUTING -o rl0 -j MASQUERADE
  sudo iptables -t nat  -A POSTROUTING -o rl1 -j MASQUERADE

Dies setzt voraus, dass Ihre standardmäßigen iptables-Richtlinien alle auf ACCEPT lauten. Wenn dies nicht zutrifft, müssen wir noch ein paar Löcher in Ihre Firewall schlagen.

Nun zu Server 1. Geben Sie die folgenden Befehle ein:

  sudo route add -net 192.168.2.0/24 default gw 192.168.1.252
  sudo route add -net 192.168.3.0/24 default gw 192.168.1.252

Diese beiden Befehle weisen Ihren Server1 lediglich an, ein Paket, dessen Ziel 192.168.2.0/24 oder 192.168.3.0/24 ist, an Server2 weiterzuleiten, der sich darum kümmert.

Sie haben nicht angegeben, ob Clients auf 192.168.2.0/24 oder 192.168.3.0/24 über Server2 auf 192.168.1.0 zugreifen können sollen. Wenn ja, fügen Sie hinzu

  sudo iptables -t nat -A POSTROUTING -o bge0 -j MASQUERADE

zu Ihrer Firewall.

Abschließend hoffe ich sehr, dass die Subnetze 192.168.2.0/24 und 192.168.3.0/24nichtüber eine andere Route mit Server1 verbunden, da dies bedeuten würde, dass Ihre Konfiguration geschlossene Schleifen enthält, für deren ordnungsgemäße Handhabung einige erweiterte Instrumente erforderlich sind.

verwandte Informationen