Раздача интернета в Ubuntu через NAT
- 28.06.11, 09:45
После того, как оволосатились винды на двух компьютерах, чистки реестра, прогонки антивирусами и прочими плясками с бубном, перевел свой компьютер на Ubuntu. Системой доволен. Пришлось конечно осваивать с нуля, после приличного времени проживания в форточках это было несколько забавно, но да не в том суть.
Появиласть необходимость раздавать интернет со своей машины, ну а как это проще всего сделать? Конечно же настроить NAT. В убунту это делается достаточно просто. Необходимо настроить iptables, есть в убунте такая штука.
Для начала посмотрим какие правила у нас в iptables прописаны, сделать это можно командами в консоли под root’ом:
sudo iptables -L
# iptables -L -t nat
После чего включим NAT и настроим маршрутизацию:
sudo iptables -t nat -A POSTROUTING -s 192.168.0.2 -j MASQUERADE
sudo iptables -A FORWARD -i eth0 -m state --state NEW,RELATED,ESTABLISHED -j ACCEPT
sudo iptables -A FORWARD -i eth1 -m state --state RELATED,ESTABLISHED -j ACCEPT
где 192.168.0.2 – клиентский ip, вместо него может стоять и диапазон адресов 192.168.0./24
eth0 – локальная сеть
eth1 – интернет
Следующим шагом сохраняем правила:
sudo iptables-save
и проверив все ли правильно записано сохраняем правила в файл:
sudo sh -c "iptables-save > /etc/iptables.up.rules"
Для того, чтобы правила запускались при загрузке системы создаем скрипт в папке /etc/network/if-up.d
со следующим содержимым:
#!/bin/sh
iptables-restore < /etc/iptables.up.rules
Так же необходимо добавить или раскомментировать строчку (если закомментирована) в файле /etc/sysctl.conf со следующим содержанием:
net.ipv4.ip_forward = 1
Все должно заработать, по крайней мере у меня все прекрасно работает.
Если возникнет необходимость очистить iptables, необходимо в консоли выполнить следующее:
sudo iptables -F
sudo iptables -t nat -F
2
Коментарі
Гість: Leaving Dry
128.06.11, 11:14
команда sysctl net.ipv4.ip_forward=1 покошерней будет - можно ввиде скрипта запускать...
да, и вначале почиcтить бы все правила в форварде и построуте.
Nech sa paci
229.06.11, 14:22
Вітаю Вас із перемогою.
Гість: evilyesh
321.07.11, 21:19
Милейший, Вы уверены что исходник материалла верно указан? А то как то слово в слово моя статья скопирована... Повбывав бы гадив усих!!!
SerjGroza
421.07.11, 23:16Відповідь на 3 від Гість: evilyesh
Докази в студію!
Гість: evilyesh
523.07.11, 12:47Відповідь на 4 від SerjGroza
http://yesh.spb.ru/yesh/programs/ubuntu-nat/
А я тебе должен доказывать что сам статью написал? Или что?
Дату публикации там глянь Да и любой поисковик покажет тебе кто первоисточник
Совесть включить не забудь
З.Ы.:Этот хабр кейзедный твой?
SerjGroza
624.07.11, 20:57Відповідь на 5 від Гість: evilyesh
По перше - я вказав джерело яким користувався, якщо хтось раніше видав чуже за своє (не вказуючи дійсного автора) то всі претензії до того де закінчуються посилання на першоджерело.
По друге - авторство я не присвоював, коли хочеш визнання за свою працю то почитай коментар до своєї статті.
По третє - стаття недоопрацьована і не дає очікуваного результату. А в коментарях спільними зусиллями можна було б відточити тему до блиску а не розводити дискусії про плагіат.