Показаны сообщения с ярлыком vpn. Показать все сообщения
Показаны сообщения с ярлыком vpn. Показать все сообщения

среда, 12 февраля 2014 г.

Если не работает VPN через роутер

Убил кучу времени на решение проблемы, так что опишу решение здесь.

Итак, картина маслом по хлебу: при смене провайдера перестал работать VPN (securityKISS, kebrum) в Ubuntu. Соединения настроены через Network Manager. Однако, обнаружилось, что если подключить кабель к ноутбуку напрямую, а не через роутер, то всё работает.

Схема такая: Интернет → Провайдер → PPPoE → Роутер (Zyxel Keenetic Lite) → Компьютеры с Ubuntu (12.04.4 64 бита).

До этого провайдер не использовал PPPoE и всё работало.

Итак, тут есть сразу две проблемы. Во-первых, нужно проверить, включен ли проброс пакетов в ядре:
cat /proc/sys/net/ipv4/ip_forward
Ответом должно быть "1". Если ответ "0", то нужно включить проброс пакетов на постоянной основе (будет действовать после перезагрузки):
echo "net.ipv4.ip_forward=1" | sudo tee -a /etc/sysctl.conf
Но перезагружаться не обязательно, можно включить проброс пакетов в текущей сессии:
echo 1 | sudo tee /proc/sys/net/ipv4/ip_forward
Но это только полбеды. Если у вас заработал VPN - поздравляю. Если нет - читаем дальше. Проблема тут в том, что провайдер использует PPPoE. А это значит, MTU (максимальный размер пакета) уменьшается. Роутер его тоже уменьшит. Проверяем:
$ traceroute --mtu 8.8.8.8
Ответом будет что-то вроде:
traceroute to 8.8.8.8 (8.8.8.8), 30 hops max, 65000 byte packets
1  192.168.1.1 (192.168.1.1)  0.868 ms F=1400  0.740 ms  0.669 ms
2  x.x.x.x (x.x.x.x)  1.722 ms  1.684 ms  1.582 ms
Вот там есть F=1400 это и есть наш MTU. Заходим в свойства соединения с роутером в Network Manager и меняем MTU на это число.

Собственно, всё, после этого VPN должен работать.

суббота, 16 июня 2012 г.

Ubuntu 12.04 и внутренние DNS при использовании VPN

Допустим, для доступа в сеть предприятия вы используете VPN. В сети предприятия поддерживаются свои сервера доменных имён (DNS) для внутренних адресов, например, вида *.intranet или *.krutaya.firma, ну или ещё какие.

Так вот, Network Manager в Ubuntu 12.04 - это прекрасное и простое средство для управления подключениями, в том числе по VPN, т.е. как раз наш случай. Проблема в том, что в Ubuntu 12.04 в нём произвели значительные улучшения - подключили resolvconf и dnsmasq, которые, в принципе, работают неплохо. Но вот в этой связке Network Manager + resolvconf + dnsmasq + VPN случается проблема, которая не позволяет работать с локальными адресами. Об этой проблеме разработчикам известно, они работают над исправлением.

А что же делать пока проблема не решена?