Дано:
Сетевая карточка eth0 подключенная с помощью PPPoE к интернету и
eth1 подключенная к сети с адресом 192.168.0.1 к которой подключена сеть с адресами 192.168.0.* в которой нужно раздать интернет.
Для начала включим форвардинг:
echo 1 > /proc/sys/net/ipv4/ip_forward
Чтобы форвардинг автоматически включался при запуске системы
Открываем файл:
sudo nano /etc/sysctl.conf
и добавляем в него строчку:
net.ipv4.ip_forward = 1
Затем включаем NAT
iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE
Где ppp0 название вашего интерфейса через который выходите в интернет.
Чтобы NAT работал после перезагрузки делаем следующее:
сохраняем настройки iptables в файл
sudo iptables-save > /etc/iptables.up.rules
И добавляем в конец файла:
sudo nano /etc/networks/interfaces
эту строчку, для автоматической подгрузке правил
pre-up iptables-restore < /etc/iptables.up.rules
Так же в этот файл добавляем правила роутинга:
up route add -net 192.168.0.0 netmask 255.255.255.0 dev eth1
up route add -net 0.0.0.0 netmask 255.255.255.255 dev eth0
Комментарии (68)
Лучше вывод
ip a
ip r
А там будем дальше двигаться.
И так.
В кач-ве vpn-сервера был взят openvpn.
eth0 и еще 4 алиаса, что на него навешаны смотрят во внешюю сеть.
tap0 - есть бридж с eth0.
eth1??
ifconfig - eth1 не выводит. Я на него внимания и не обращал. Скорее всего ещё одна сетевая карта, которая нигде не задействована.
Да.
Верно.
Да.
Клиент подключается к OpenVPN серверу. Получает команду использовать шлюзом по умолчанию шлюз-внутренний_ip_удалённого сервера и через него выходит в сеть (из под внешнего ip сервера).
Я не запутал ? Короче банальный VPN шлюз
Допустим:
Я зацепился к тебе.
У тебя должен будет подняться tun-интерфейс уже для маршрутизации ip пактов.
Трафик у тебя будет вылетать через eth0, если верно понял. Таки полагаю на нем и надо натить.
# echo 1 > /proc/sys/net/ipv4/ip_forward
# iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
С маршрутами, на мой взгляд, более ничего писать не надо.
Так же хотелось бы узреть:
# iptables -nvxL
# iptables -nvxL -t nat
# iptables -nvxL -t mangle
Люди, а где-нибудь журналируется активность NAT клиентов ?
если в правилах иптабли задашь логирование - будет логироваться.
Но если "я ничего не трогал" (тм) - то оно по умолчанию не включается в стандартном дебиане\(К)убунте ?
я даже больше скажу - оно по умолчанию вообще нигде не включается. Чтобы включалось - это надо цепочку прописывать с явным указанием ключа. Но Катя права - этим логом ты моментально застрешь винт. Если тебе надо просто побыстрому посмотреть, ходят или не ходят пакеты, то лучше грепать tcpdump.
Не совсем соглашусь с тем, что винт быстро засрется.
Все завист от кол-ва трафика, ну и logrotate'ом тоже можно немного побаловаться.
И не дай бох увидеть этот лог дважды в жизни, оно работает как сниффер... Забьёт диск очень быстро (((
Блин ощущаю себя полным нубом... Имеется:
eth0 (dhcp) для инета. На ней vpn с именем Nlink (собственно, подключение к интернету)
eth1 (static) смотрит в локалку. Ip 192.168.0.1
На втором компе (под хрюшей): ip 192.168.0.3 Gateway 192.168.0.1 и dns от провайдера
После выполнения инструкции на втором компе инет не появился (ping ya.ru превышен интервал ожидание запроса), зато доступный локально сайт моего провайдера прекрасно пингуется. То есть, подключение по eth0 я-таки расшарил. Но теперь главный вопрос - как расшарить висящее на нём vpn? Подскажите, пожалуйста!
sudo -i
iptables -A POSTROUTING -o ppp0 -j MASQUERADE
echo 1 > /proc/sys/net/ipv4/ip_forward
Должно будет достаточно.
Начитавшись кучу статей все таки сделал.
Спасибо.
Еще мне помогла вот эта статья:
http://jakeroid.com/nastraivaem-nat-v-linux.html
Там про DNS и DHCP тоже написано.
По мне так в кач-ве DNS-сервера куда лучше BIND использовать.
для домашней сети на 5 компов городить дхцпсервер и бинд смысла не вижу.
как показывает мой опыт (с 1998 года), использование днсмаска удобно при постановке роутера на машин от 3 до 30-50
больше - обычно начинают появляться потребности которые проще удовлетворить дхцпд и биндом.
так по магазинам, где у мен по 10-20 машин - стоят днсмск, а вот в офисе уже дхцпд и бинд.
Но и задачи центра посложнее.