Я настроил pptpd в качестве моего VPN-сервера на Ubuntu Server 9.04, я могу подключиться к VPN с клиента и получить доступ к локальной сети сервера, но я не могу подключиться к внешней сети через VPN.
Если я войду на сервер через SSH:
$ ping google.com
PING google.com (74.125.67.100) 56(84) bytes of data.
64 bytes from gw-in-f100.google.com (74.125.67.100): icmp_seq=1 ttl=49 time=65.9 ms
64 bytes from gw-in-f100.google.com (74.125.67.100): icmp_seq=2 ttl=49 time=63.2 ms
64 bytes from gw-in-f100.google.com (74.125.67.100): icmp_seq=3 ttl=49 time=63.9 ms
64 bytes from gw-in-f100.google.com (74.125.67.100): icmp_seq=4 ttl=49 time=66.0 ms
Если я подключаюсь к VPN и пингую локально:
$ ping google.com
ping: cannot resolve google.com: Unknown host
У меня есть ощущение, что это проблема с маршрутизацией на сервере, но я не уверен.
это проблема iptable / брандмауэра ... Вам нужно разрешить серверу пересылать пакеты ... просто выполните следующую команду, и все будет в порядке: iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
если хотите, можете добавить этот /etc/rc.local, это автоматически повторит изменения в iptable при перезагрузке ...;)
Можете ли вы пропинговать IP-адрес (74.125.67.100
)?
Возможно, VPN работает, но в вашей конфигурации нет правильных DNS-серверов.
Ваши локальные DNS-серверы, скорее всего, откажутся от подключений с другого конца VPN (или вообще не будут видны, если они находятся в частной подсети, как вы их видите).
Если вы можете пинговать общедоступные IP-адреса через VPN, но не можете получить доступ к объектам по имени, попробуйте указать серверы OpenDNS в качестве серверов имен.
Не могли бы вы провести сравнение /etc/resolv.conf до того, как вы подключите VPN к своей сети, и пока вы используете VPN, я думаю, когда ваш vpn в приложении resolvconf работает и стирает ваш список серверов имен
Если это все еще нормально, то следующая задача - сравнить вашу маршрутизацию до того, как вы подключитесь к vpn, и во время
sudo ip route show
Если локальная подсеть клиента и подсеть VPN (или предоставленные маршруты) конфликтуют, это может вызвать эту проблему.