Есть Linux-сервер с 3-мя сетевыми интерфейсами, eth0, eth1, eth2
. На этом сервере включена переадресация IP.
10.0.1.1
.172.16.1.1
. Сервер A может проверить связь с маршрутизатором C по адресу 172.16.1.2.192.168.1.1
. Сервер A может пинговать сервер B по адресу 192.168.1.2.[10.0.1.0/24] | 172.16.2.0/24------| | [C]------172.16.1.0/24------[A]------192.168.1.0/24------[B] 172.16.3.0/24------|
Мы установили MASQUERADE на eth0. Когда сервер B (192.168.1.2) подключается к 10.0.1.0/24, IP MASQUERADE произойдет на eth0.
Можно ли установить MASQUERADE на eth1? Можно ли установить MASQUERADE более чем на 1 сетевой интерфейс в Linux?
Да, иметь несколько MASQUERADE
правила. Обычно каждое правило соответствует пакетам, выходящим через определенный интерфейс, например:
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
iptables -t nat -A POSTROUTING -o eth1 -j MASQUERADE
Первое правило соответствует исходящим пакетам eth0
, а второй соответствует исходящим пакетам eth1
.