Настройка простого роутера на базе Ubuntu Server 14.04.4


Предположим есть старый компьютер с двумя сетевыми интерфейсами, который уже ни на что не годен и еле тянет даже Windows XP. Такой аппарат может легко превратиться в домашний роутер если установить на него Linux, только WIFI не сможет раздать, хотя и это при соответствующем апгрейде можно сделать. В этой статье рассмотрим поэтапно как это сделать. Если говорить о домашних условиях то в большинстве случаев интернет подключение будет по динамическому адресу. Определимся теперь с локальными адресами, предположим что адрес нашей домашней сети будет 192.168.5.0 но можно и другой адрес конечно от 192.168.0.0 до 192.168.255.0, всё это дипозон частных сетей.


Итак:

В первую сетевую карту (она же eth0) идёт провод от провайдера и её подключение имеет автоматический адрес, далее мы помним что адрес нашей локальной сети 192.168.5.0 и это значит что вторую сетевую карту (она же eth1) мы комутируем с простым неуправляемым сетевым коммутатором, в который подключены все остальные клиенты, и далее назначаем ей вполне такой статический адрес нашего роутера 192.168.5.1, и соответственно в таком случае остальные клиенты в сети должны быть в диапозоне от 192.168.5.2 до 192.168.5.254 с маской 255.255.255.0 и шлюзом 192.168.5.1



Для настройки сети в Ubuntu, вам потребуется отредактировать файл /etc/network/interfaces

sudo nano /etc/network/interfaces

В нашем случае содержимое будет таким

# The loopback network interface
auto lo
iface lo inet loopback
#Интернет
auto eth0
iface eth0 inet dhcp



#Локальная сеть
auto eth1
iface eth1 inet static
address 192.168.5.1
netmask 255.255.255.0


Перезагружаем сервер:


sudo reboot

После загрузки проверяем настройки наших сетевых карт:

ifconfig

Далее проверим интернет, например пинг до сервера DNS гугла.

ping 8.8.8.8

Далее нам надо сделать так чтобы наш сервер этот самый интернет раздовал всем желающим клиентам нашей локальной сети.
Для этого нужно создать набор команд, которые будут находиться в определённом файле (допустим /etc/nat) и этот самый файл будет стартовать вместе с системой с помощью например того же /etc/network/interfaces
создаём файл командой touch

touch /etc/nat

Наполним его следующим содержимым:

####



#!/bin/sh
#Включаем форвардинг пакетов
echo 1 > /proc/sys/net/ipv4/ip_forward

#Разрешаем траффик на lo
iptables -A INPUT -i lo -j ACCEPT

#Разрешаем доступ из внутренней сети наружу (интернет)
iptables -A FORWARD -i eth1 -o eth0 -j ACCEPT

#Включаем NAT
iptables -t nat -A POSTROUTING -o eth0 -s 192.168.5.0/24 -j MASQUERADE

#Разрешаем ответы из внешней сети
iptables -A FORWARD -i eth0 -m state --state ESTABLISHED,RELATED -j ACCEPT

#Запрещаем доступ снаружи во внутреннюю сеть
iptables -A FORWARD -i eth0 -o eth1 -j REJECT

####

Далее дадим нашему файлу права на исполнение:
chmod +x /etc/nat

Далее в конце содержимого файла /etc/network/interfaces добавляем строку:

post-up /etc/nat

Перезагружаем сервер и проверяем наличие интернета на клиентах. В настройках сетевой карты клиентов, прописываем IP, маску, шлюз и DNS сервер. Например:

IP адрес – 192.168.5.2
Маска – 255.255.255.0
Основной шлюз – 192.168.5.1
DNS сервер 8.8.8.8


Вот и всё!


------------------------------------------------------- --------------------------------------------------------------------------
счетчик посещений