Как переслать интернет-соединение на eth2 в LAN на eth1?

У меня есть две сетевые карты / соединения:

  • eth2 подключен к интернету
  • eth1 подключен к моей локальной сети

Я хочу разрешить компьютерам в локальной сети на eth1 доступ к моему интернет-соединению на eth2.

Пожалуйста, предоставьте мне подробное пошаговое руководство или руководство, чтобы помочь мне решить эту проблему, так как я новичок в Ubuntu.

1 ответ

Сначала определите ips ваших сетевых карт.

Откройте терминал,

Нажмите Ctrl + Alt + T

Запустить его:

sudo -i
ifconfig -a

Давайте предположим, что:

eth2 10.0.10.2  --- Internet
eth1 10.0.20.5  --- LAN

Примечание. Измените IP-адреса по вашим картам.

Затем отключите диспетчер сети и вручную настройте статические ips.

Запустите в терминале:

nano /etc/NetworkManager/NetworkManager.conf 

Установите "managed=false", показанное под [ifupdown]

[ifupdown]
managed=false

Ctrl + O, сохранить файл. Ctrl + X, закрыть нано.

Затем в /etc/network/interfaces добавьте информацию об интерфейсах:

nano /etc/network/interfaces 

Установите это:

The loopback network interface
auto lo
iface lo inet loopback

auto eth2      # internet
allow-hotplug eth0
iface eth0 inet static
address 10.0.10.2
netmask 255.255.255.0
network 10.0.10.0/24
gateway 10.0.10.1

auto eth1  # lan 
allow-hotplug eth1
iface eth1 inet static 
address 10.0.20.5
netmask 255.255.255.0
network 10.0.20.0/24
broadcast 10.0.20.255
gateway 10.0.10.1

Ctrl + O, сохранить файл. Ctrl + X, закрыть нано.

И для простого примера NAT запустите:

/sbin/iptables -F  
/sbin/iptables -A INPUT -i lo -j ACCEPT
/sbin/iptables -A INPUT -s 10.0.20.0/24 -i eth1 -j ACCEPT
/sbin/iptables -t  nat  -A POSTROUTING -s 10.0.20.0/24 -o eth2 -j MASQUERADE
echo 1 > /proc/sys/net/ipv4/ip_forward        

Если все работает правильно, создайте скрипт для запуска при запуске

sudo -i    
nano /etc/init.d/my_iptables.sh

Поместите этот контент

#! /bin/sh
/sbin/iptables -F              &&echo
/sbin/iptables -A INPUT -i lo -j ACCEPT
/sbin/iptables -A INPUT -s 10.0.20.0/24 -i eth1 -j ACCEPT
/sbin/iptables -t  nat  -A POSTROUTING -s 10.0.20.0/24 -o eth0 -j MASQUERADE
echo 1 > /proc/sys/net/ipv4/ip_forward      

Ctrl + O, сохранить файл. Ctrl + X, закрыть нано.

И продолжайте бежать:

chmod +x /etc/init.d/my_iptables.sh
ln -s /etc/init.d/my_iptables.sh /etc/rcd.2/s99my_iptables.sh
ln -s /etc/init.d/my_iptables.sh /etc/rcd.3/s99my_iptables.sh
ln -s /etc/init.d/my_iptables.sh /etc/rcd.4/s99my_iptables.sh
ln -s /etc/init.d/my_iptables.sh /etc/rcd.5/s99my_iptables.sh
ln -s /etc/init.d/my_iptables.sh /etc/rcd.S/s99my_iptables.sh
update-rc.d my_iptables.sh defaults
Другие вопросы по тегам