Я установил openvpn с помощью tun. Я могу пинговать в обоих направлениях между клиентом и сервером. Но я не могу пинговать с клиента на 8.8.4.4 (в качестве теста).
Я добавил нат с помощью:
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
Но, похоже, что-то не направляется от интерфейса tun0 к eth0.
tcpdump
на tun0
показывает, что пакеты поступают (в данном случае пинг до 8.8.4.4 в качестве теста):
12:21:55.956564 IP 10.8.0.10 > google-public-dns-b.google.com: ICMP echo request, id 512, seq 17153, length 40
Но tcpdump
на eth0
не показывает ничего, кроме моего ssh-трафика.
У меня зацикливается пинг от VPN-клиента, и я вижу это в своем tcpdump
на tun0
, но я не вижу ничего "Google" в моем tcpdump
на eth0
.
Есть предположения? Я могу запустить этот пинг с хоста openvpn. iptables пусты, за исключением действия MASQUERADE, по умолчанию принимается.
Ага, это был шаг №1 в этом руководстве по настройке Linux в качестве маршрутизатора ... включите IP Forwarding.
http://www.cyberciti.biz/tips/linux-as-router-for-dsl-t1-line-etc.html
Зачем -j MASQUERADE
@ -o eth0
если вы говорите о битве, я установил openvpn, используя тун?
Вам нужно убедиться, что у вас есть: маршрутизация (фактически, пересылка) включена (sysctl), маршрутизация настроена правильно (необходимые маршруты установлены), NAT правильно настроен, если это необходимо.
Iptables -A FORWARD -j ACCEPT?