Привет форумчанам!
Ситуация такая:
Машина с двумя сетевыми интерфейсами (eth0 и eth1)
eth0 - смотрит в мир (статический адрес)
eth1 - в локальную сеть (статический адрес)
Что я делаю:
1. Настройка сетевых интерфейсов.
Набираю команду sudo nano /etc/network/interfaces
Привожу фаил к вот такому виду:
auto eth0
iface eth0 inet static
address 10.0.1.126 [b] - выданный провайдером статический адрес[/b]
netmask 255.255.255.252
network 10.0.1.0
broadcast 10.0.1.255
gateway 10.0.1.125 [b] - выданный провайдером статический шлюз[/b]
dns-nameservers 10.1.2.3 10.1.2.6
pre-up iptables-restore < /etc/iptables.up.rules
auto eth1
iface eth1 inet static
address 192.168.0.2 [b] - локальный адрес машины (шлюза)[/b]
netmask 255.255.255.0
network 192.168.0.0
broadcast 192.168.0.255
После чего сохраняю изминения в файле и делаю следующее:
Обнуляю настройки iptables (на всякий случай) следующими командами:
iptables --flush
iptables --table nat --flush
iptables --delete-chain
iptables --table nat --delete-chain
Настраиваю NAT:
sudo iptables -A FORWARD -i eth0 -o eth1 -s 192.168.0.0/24 -m conntrack --ctstate NEW -j ACCEPT
sudo iptables -A FORWARD -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
sudo iptables -A POSTROUTING -t nat -j MASQUERADE
Включаю IP-форвардинг командой:
sudo sh -c "echo 1 > /proc/sys/net/ipv4/ip_forward"
Редактирую файл sysctl.conf, для активации роутинга:
sudo nano /etc/sysctl.conf
Добавляю в него вот эти две строки для активации роутинга:
net.ipv4.conf.default.forwarding=1
net.ipv4.conf.all.forwarding=1
Сохраняю правила iptables в фаил:
sudo sh -c "iptables-save > /etc/iptables.up.rules"
После сохранения правил, перезапускаю машину.
Интернет серфинг у клиентов работает отлично! НО ЕСТЬ ПРОБЛЕМА! Если кто либо хочет отправить письмо с вложенным файлом размер которого больше чем 2-3 Мегабайта, письмо не уходит.
Как решить проблемму?
Была найденна ошибка товарищем drako в настройках eth0 интерфейса.
auto eth0
iface eth0 inet static
address 10.0.1.126 - выданный провайдером статический адрес
netmask 255.255.255.252
network 10.0.1.0 - ошибка
broadcast 10.0.1.255 - ошибка
gateway 10.0.1.125 - выданный провайдером статический шлюз
dns-nameservers 10.1.2.3 10.1.2.6
pre-up iptables-restore < /etc/iptables.up.rules
Исправление:
auto eth0
iface eth0 inet static
address 10.0.1.126 - выданный провайдером статический адрес
netmask 255.255.255.252
network 10.0.1.124 - исправление
broadcast 10.0.1.127 - исправление
gateway 10.0.1.125 - выданный провайдером статический шлюз
dns-nameservers 10.1.2.3 10.1.2.6
pre-up iptables-restore < /etc/iptables.up.rules
Ошибка в том что маска 255.255.255.252 - это 4 адреса, а было прописано что адрес сети и широковещательный адрес прописаны как будто маска 255.255.255.0 (упущение)
Проверил на работе с поправкой конфига, без изменений. upload так же коряво работает
С MTU все в норме. Проверенно!