LINUX.ORG.RU
ФорумAdmin

openvpn сеть работает нестабильно, взгляните на конфиги:


0

1

на клиенте:

remote х.х.х.х client dev tun topology subnet tun-mtu 1500 tls-client dh xxx.pem ca xxx.crt cert xxxx.crt key xxxx.key keepalive 15 60 comp-lzo verb 4 mute 10

на сервере:

mode server dev tun topology subnet tun-mtu 1500 ifconfig 10.3.0.1 255.255.255.0 route .......... client-config-dir clients client-to-client tls-server dh xxx.pem ca xxx.crt cert xxxx.crt key xxxx.key keepalive 10 120 comp-lzo max-clients 15 persist-tun status openvpn-status.log verb 4 mute 30

в фале на сервере для клиента: ifconfig-push push «route .... iroute ....

проблема: случаются сбои при копировании фалов по сети, в буквальном смысле FAR говорит: „непредвиденная ошибка сети“ и при повторном копировании все проходит как надо.

трогать эти конфиги довольно хлопотно (надо прекращать работу 30ти человек), но я уже готов, т.к. такие „залипания“ реально достали.

сам бы я: verb поставил в 0, keepalive 30 180 и убрал бы comp-lzo с обоих сторон.

Может еще кто подскажет?

Спасибо.



Последнее исправление: kpush (всего исправлений: 1)

Попробуй потрогать mtu. У меня от него дома как-то похожая фигня была с openvpn.

Deleted
()

если на туннеле mtu 1500, то на реальном интерфейсе он должен быть >1500, что скорее всего не так. Попробуй вообще убрать mtu из конфигов как клиента так и сервера

Pinkbyte ★★★★★
()
Ответ на: комментарий от Pinkbyte

--tun-mtu n Take the TUN device MTU to be n and derive the link MTU from it (default=1500). In most cases, you will probably want to leave this parameter set to its default value.

т.е. «убрать» это значит оставить действующим значение 1500.

kpush
() автор топика

пока я собрался пробовать:

tun-mtu 1400 fragment 1300 mssfix

Читал описания, но не понял: зачем так много параметров, если они друг с другом связаны? Вот про связь даже нашел:

При включении опций --tun-mtu 1500 --fragment 1400 --mssfix
- при «ping 10.8.0.1 -l 1343» OpenVPN IP/udp-пакет проходит 1428-байтовым IP-пакетом
(1343 данные + 28 ICMP/IP + 25 OpenVPN + 4 OpenVPN fragment + 28 UDP/IP) = 1428
- при «ping 10.8.0.1 -l 1344» OpenVPN IP/udp-пакетов уже 2 - 745+741 байт = 1486, оба IP-НЕфрагментированные
(1344 данные + 28 ICMP/IP = 1372) + 2*(25 OpenVPN + 4 OpenVPN fragment + 28 UDP/IP) = 1486
Деление на 2 фрагмента происходит примерно поровну, но с каким-то округлением, вероятно к 4 байтам, первый пакет обычно чуть крупнее второго.

Вывод: ИМХО, fragment это макс.размер UDP-данных и его надо ставить равным не более MTU маршрута минус 28. 28 это размер заголовков IP (20) и UDP (8) «внешнего» пакета.

P.S. mssfix не исследовал, но следуя аналогии его надо ставить равным не более MTU маршрута минус 40. 40 это размер заголовков IP (20) и TCP (20) «внешнего» пакета.

kpush
() автор топика
Ответ на: комментарий от kpush

у меня эти опции вообще не указаны(внешний интернет - ADSL, mtu меньше 1500) - всё работает хорошо. Единственное что - есть MSS fix в iptables для транзитного трафика

Pinkbyte ★★★★★
()
Ответ на: комментарий от Pinkbyte

прошла, причина проблем, оказалась далека от VPN. Но, возможно я не зря разобрался в этих параметрах. Благодарю всех откликнувшихся.

kpush
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.