SSH трафик через OpenVPN соединение останавливается, когда я кошка файла

У меня есть openvpn (версия 2.1_rc15 на обоих концах) для установки соединения между двумя коробками gentoo с использованием общих ключей. это работает отлично по большей части. Я использую mysql, http, ftp, scp через vpn без проблем. Но когда я ssh от клиента к серверу через VPN, происходят странные вещи. Я могу войти, я могу выполнить несколько команд. Но если я попытаюсь запустить приложение ncurses, такое как top, или попытаться перехватить файл, соединение прекратит работу, и мне придется разорвать сессию ssh.

Я могу, например, выполнить "echo blah; echo .; Echo blah", и он выведет три строки текста в течение сессии ssh. Но если я выполню "cat /etc/motd", сессия остановится, как только я нажму клавишу ввода.

Я скомпилировал openvpn 2.1.1 на моем Mac и скопировал мой каталог конфигурации из моего клиента gentoo. Макинтош подключился и сессии ssh работали нормально без зависания.

Затем я скомпилировал его на моем старом пакете gentoo (ядро 2.6.26), которое я удаляю из-за умирающего жесткого диска, и ssh поверх него также отлично работает.

Почему он не работает на моем новом Gentoo Box? Я попытался скомпилировать три разных ядра на случай, если это так, но кроме этого не должно быть никакой разницы между моим старым и моим новым Gentoo Box ами, о которых я могу думать.

Любые предложения о том, что не так?

5 ответов

Решение

Пахнет мту вопрос. Попробуйте опустить его, как описано в официальном руководстве или в этом сообщении в блоге.

Эта команда решает это для меня:

$ sudo ip link set dev tun0 mtu 1350 && echo ":)"

Вы можете проверить настройки tun0 с помощью

$ ip a s

Ура!

Да, это все о MTU.

Но в моем случае у меня проблема еще более странная. Дома, используя Windows-клиент OpenVPN, он зависает. Но у меня в офисе все работает нормально.

Я попытался изменить его на моем модеме ADSL, но безуспешно. В моем офисе я использую кабельный модем и другой интернет-провайдер.

После изменения MTU адаптера Windows TAP на 1200 все работает нормально. Что-то более высокое, чем это, замерзнет для меня.

У меня была проблема с аналогами, когда OpenVPN подключался через 3g с плохим покрытием и потерял потерю пакета. Переключение на TCP вместо UDP устранило все проблемы, которые у меня были после этого. Надеюсь, что это помогает вам.

Я использовал tunnelblick вместо OpenVPN, и я не смог найти конфигурацию для значения MTU. Вместо этого я нашел интерфейс для VPN в выводе ifconfig (в моем случае это было utun0) и установите для него MTU вручную так:

ifconfig utun0 mtu 576

После этого моя сессия SSH больше не зависает.

Другие вопросы по тегам