Я і ubuntu »- створення простого маршрутизатора на базі gnu
Створення простого маршрутизатора на базі GNU / Linux.
Нещодавно зіткнувся з проблемою настройки маршрутизатора на базі GNU / Linux, так як iptables я знаю досить погано. Отже трохи почитавши про це фаєрволі я таки знайшов кілька рядків з допомогою яких можна реалізувати вихід клієнтів через шлюз в глобальну мережу та мережу провайдера.
1.Ітак, для початку необхідно встановити GNU / Linux систему, я вибрав Ubuntu server. На цьому етапі загострювати увагу я не буду, так як ця тема добре висвітлена на багатьох ресурсах.
2.Настроіть з'єднання з локальною мережею і VPN сервером (актуально для моєї мережі, але не критично для інших типів підключення).
Бажано всі налаштування вводити безпосередньо в конфігураційні файли, для Ubuntu цей файл розташований тут. / Etc / network / interfaces
auto lo
iface lo inet loopback
auto eth1
iface eth1 inet dhcp
auto eth0
iface eth0 inet static
address 192.168.0.1
netmask 255.255.255.0
lo - інтерфейс локального лупбека, eth1 - інтерфейс дивиться в локальну мережу провайдера (налаштовується по DHCP), eth0 - інтерфейс дивиться в вашу мережу (домашню чи корпоративну).
3. Редагуємо файл /etc/rc.local, дабавляем в нього рядки:
iptables -F
iptables -t nat -F
iptables -t mangle -F
iptables -X
iptables -t mangle -A FORWARD -p tcp --tcp-flags SYN, RST SYN -j TCPMSS --clamp-mss-to-pmtu
iptables -t nat -A POSTROUTING -o eth1 -s 192.168.0.0/24 -j MASQUERADE
iptables -t nat -A POSTROUTING -o ppp0 -s 192.168.0.0/24 -j MASQUERADE
echo 1> / proc / sys / net / ipv4 / ip_forward
Отже тут вам потрібно поміняти лише імена ваших інтерфейсів, в моєму варіанті відбувається НАТінг всієї локальної мережі провайдера і VPN в мою локальну мережу (192.168.0.0/24).
4.Ітак впринципі маршрутизатор готовий до роботи, але для поліпшення швидкодії і зручності користувачів можете налаштувати кешуючий DNS сервер bind9. Отже встановимо сам демон:
sudo apt-get install bind9
5. 5.Право файл /etc/resolv.conf і додаємо туди свої DNS
nameserver X.X.X.X
nameserver X.X.X.X
Перезавантажуємо сервер. Отже сервер готовий до роботи.