Значит возникла такая проблема. Есть некий роутер (172.16.0.1, eth1), который имеет доступ в инет (внешний ип 10.1.0.133, eth0). Есть второй роутер, который соединен с первым последовательно (eth0, 172.16.0.2: eth1, 172.16.1.1). Ко второму роутеру на eth1 подключена вся локальная сеть (172.16.1.0/24) через свич. Надо настроить роутинг + маскарадинг при выходе во внешний мир.
Вот мои настройки.
Второй роутер (непосредественно подключен к локалке): ifconfig eth0 172.16.0.2 netmask 255.255.255.0 ifconfig eth1 172.16.1.1 netmask 255.255.255.0 route add default gw 172.16.0.1 iptables на первом роутере не трогаем.
Первый роутер (в который кабель с инетом втыкается): ifconfig eth0 10.1.0.133 netmask 255.255.255.192 ifconfig eth1 172.16.0.1 netmask 255.255.255.0 route add 172.16.1.0 netmask 255.255.255.0 gw 172.16.0.2 route add default gw 10.1.0.129 iptables -t nat -A POSTROUTING -s 172.16.1.0/24 -j SNAT --to-source 10.1.0.133 После всего этого со второго роутера доступен первый, но не доступен инет. С первого роутера доступно все - инет+локалка. Из локалки доступен второй роутер (не удивительно) и первый роутер по обоим ипам. В инет ни со второго роутера, ни с локалки попасть не могу. Где я ступил? P.S. Заметил, что после пингования с первого роутера любой машины в локалке таблица arp не содержит записи о пингуемой машине.