CentOS 8: zwei externe Netzwerkadapter, zwei ISPs – Routing-Probleme

CentOS 8: zwei externe Netzwerkadapter, zwei ISPs – Routing-Probleme

Gegeben: ein CentOS 8-Computer mit drei Netzwerkadaptern.

eth0, eth2: extern, mit zwei verschiedenen ISPs verbunden
eth1: mit dem Heimnetzwerk (Intranet) verbunden

Die Aufgabe: ermöglicht den Zugriff auf bestimmte interne Dienste von beiden ISPs aus. Es gibt mehrere Dienste, ich erwähne unten nur SSH.

In den folgenden Konfigurationen:
IP1: externe IP beim ersten ISP (ISP1), zugewiesen an eth0
Gateway1: IP des Gateways, bereitgestellt von ISP1
Network1,Netmask1: bezogen auf IP1
IP2: externe IP beim zweiten ISP (ISP2), zugewiesen an eth2
Gateway2: IP des Gateways, bereitgestellt von ISP2
Network2,Netmask2: bezogen auf IP2
LocalSSHIP: IP im Intranet (eth1), wo der SSH-Server läuft

Aktuelle Konfigurationen folgen. Routingtabellen:

echo "200 isp1" >> /etc/iproute2/rt_tables
echo "201 isp2" >> /etc/iproute2/rt_tables

Routing-Richtlinien:
/etc/sysconfig/network-scripts/route-eth0

Network1 dev eth0 src IP1 table isp1
default via Gateway1 dev eth0 table isp1

/etc/sysconfig/network-scripts/route-eth2

Network2 dev eth2 src IP2 table isp2
default via Gateway2 dev eth2 table isp2

Routing-Regeln:
/etc/sysconfig/network-scripts/rule-eth0

from IP1/32 table isp1

/etc/sysconfig/network-scripts/rule-eth2

from IP2/32 table isp2

iptables-Ausschnitte. Externer Datenverkehr wird von beiden Schnittstellen an den lokalen SSH-Server weitergeleitet:

iptables -A PREROUTING -t nat -i eth0 -p tcp -d IP1 --dport 22 -j DNAT --to LocalSSHIP:22
iptables -A PREROUTING -t nat -i eth2 -p tcp -d IP2 --dport 22 -j DNAT --to LocalSSHIP:22
iptables -A FORWARD -p tcp -d LocalSSHIP --dport 22 -j ACCEPT

eth0 ist Standard-Gateway:
$ ip route

default via Gateway1 dev eth0 proto static metric 100 
default via Gateway2 dev eth2 proto static metric 101 
...

$ IP-Regel

0:  from all lookup local
32764:  from IP2 lookup isp2
32765:  from IP1 lookup isp1
32766:  from all lookup main
32767:  from all lookup default

SNAT wird für den von eth1 stammenden Datenverkehr angewendet:

iptables -t nat -A POSTROUTING -i eth1 -o eth0 -j SNAT --to-source IP1

Momentane Situation:

  1. Alle von eth0 weitergeleiteten Dienste funktionieren normal.
  2. Der gesamte Datenverkehr aus dem Intranet wird normal hin- und zurückgeleitet.
  3. Bei allen Versuchen, auf Dienste von eth2 zuzugreifen, kommt es zu einer Zeitüberschreitung.

Es gibt keine offensichtlichen Hinweise in /var/log/messages (wie etwa Beschwerden über „Marsian-IPs“).

Ich bin da etwas ratlos und wäre für alle Ratschläge sehr dankbar.

verwandte Informationen