Всем доброго здоровья!
В примере от Гарри ( Тема: [FAQ] Расшариваем интернет на второй компьютер ) имеем:
eth0 – получает IP адрес из интернета по dhcp
eth1 - сеть для раздачи клиентам
Интерфейс eth0 получает динамический IP адреса по dhcp сети 192.168.0.0/24, на eth1 прописан статический IP адрес 192.168.0.1.
При помощи маскарадинга осуществляется NAT.
в /etc/network/interfaces
auto lo
iface lo inet loopback
post-up iptables-restore </etc/iptables.conf
auto eth0
iface eth0 inet dhcp
auto eth1
iface eth1 inet static
address 192.168.0.1
netmask 255.255.255.0
А если нужно организовать 3 сети (например 192.168.9.0/24, 192.168.10.0/24, 192.168.11.0/24) на интерфейсе eth1.
Изменим несколько условие, а именно, зададим на eth1 вместо 192.168.0.1 адрес 192.168.9.7 (сеть 192.168.9.0/24)
auto lo
iface lo inet loopback
post-up iptables-restore </etc/iptables.conf
auto eth0
iface eth0 inet dhcp
auto eth1
iface eth1 inet static
address 192.168.9.7
netmask 255.255.255.0
Для того что бы все заработало, вероятно, нужно прописать маршрут и переписать правило маскарадинга в iptable.
Должны получить следующие записи:
auto lo
iface lo inet loopback
post-up iptables-restore </etc/iptables.conf
auto eth0
iface eth0 inet dhcp
up route add -net 192.168.9.0/24 gw 192.168.0.1 eth1
auto eth1
iface eth1 inet static
address 192.168.9.1
netmask 255.255.255.0
в файле iptable:
iptables -F FORWARD # На всякий случай очистим цепочку FORWARD
iptables -A FORWARD -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT # Разрешаем проходить пакетам по уже установленным соединениям
iptables -A FORWARD -m conntrack --ctstate NEW -i eth1 -s 192.168.9.0/24 -j ACCEPT # Разрешаем исходящие соединения из локальной сети к интернет-хостам
iptables -P FORWARD DROP # Весь остальной транзитный трафик — запрещаем.
iptables -t nat -F POSTROUTING # На всякий случай очистим цепочку POSTROUTING таблицы nat
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE # Маскарадим весь трафик, идущий через eth0
Вопрос: Правило о маршрутизации должно работать в связке с правилом межсетевого экрана iptable?
Или маршрутизацию (up route add -net 192.168.9.0/24 gw 192.168.0.1 eth1) убрать, маскарадинг сам справится?