Ich habe ein System mit zwei Schnittstellen. Beide Schnittstellen sind mit dem Internet verbunden. Eine davon ist als Standardroute festgelegt; Ein Nebeneffekt davon ist, dass, wenn ein Paket auf der Nicht-Standardroutenschnittstelle eingeht, die Antwort über die Standardroutenschnittstelle zurückgesendet wird. Gibt es eine Möglichkeit, iptables (oder etwas anderes) zu verwenden, um die Verbindung zu verfolgen und die Antwort über die Schnittstelle zurückzusenden, von der sie kam?
Akzeptierte Antwort:
echo 200 isp2 >> /etc/iproute2/rt_tables
ip rule add from <interface_IP> table isp2 prio 1
ip route add default via <gateway_IP> dev <interface> table isp2
Das Obige erfordert keine Paketmarkierung mit ipfilter. Es funktioniert, weil die ausgehenden (Antwort-)Pakete die IP-Adresse haben, die ursprünglich verwendet wurde, um sich mit der 2. Schnittstelle als Quelladresse (von) des ausgehenden Pakets zu verbinden.