Раздача интернета через вторую сетевую карту (NAT и iptables)

Автор: Гость | от 2016 » Август » 21 | посмотрело: 501

0

NAT (от англ. Network Address Translation — «преобразование сетевых адресов») — это механизм в сетях TCP/IP, позволяющий преобразовывать IP-адреса транзитных пакетов. Также имеет названия IP Masquerading, Network Masquerading и Native Address Translation.

Дано:
Сетевая карточка eth0 подключенная с помощью PPPoE к интернету и eth1 подключенная к сети с адресом 172.20.0.1 в которой будет подключена сеть с адресами 172.20.0.* в которой нужно раздать интернет.


Для начала включим форвардинг:

Код
$ sudo echo 1 > /proc/sys/net/ipv4/ip_forward

Чтобы форвардинг автоматически включался при запуске системы открываем файл /etc/sysctl.conf:

Код
$ sudo nano /etc/sysctl.conf

И раскоментируем/добавим строчку:

Код
net.ipv4.ip_forward = 1

Затем включаем NAT:

Код
$ sudo iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE

Где ppp0 название вашего интерфейса через который выходите в интернет.

Чтобы NAT работал после перезагрузки, делаем следующее:

Сохраняем настройки iptables в файл:

Код
$ sudo iptables-save > /etc/iptables.up.rules

И добавляем в конец файла /etc/network/interfaces:

Код
$ sudo nano /etc/network/interfaces

Эту строчку, для автоматической подгрузки правил:

Код
pre-up iptables-restore < /etc/iptables.up.rules

Так же в этот файл добавляем правила роутинга:

Код
up route add -net 172.20.0.0 netmask 255.255.255.0 dev eth1
up route add -net 0.0.0.0 netmask 255.255.255.255 dev eth0


Назначаем статический IP и шлюз соответсвенно, на принимающей машине:



Категория: Интернет

Уважаемый посетитель, Вы зашли на сайт как незарегистрированный пользователь.
Мы рекомендуем Вам зарегистрироваться или войти на сайт под своим именем.
Всего комментариев: 0
avatar