LINUX.ORG.RU
решено ФорумAdmin

Вырастает x10 latency OpenVPN на OpenWRT

 , ,


0

2

Имеется TP-Link WR842N с OpenWRT 15.05.1, на нём OpenVPN с конфигом вроде:

dev tap0
nobind
proto udp
remote x.x.x.x 1194
topology subnet
mlock
nice -19
fast-io
ifconfig 192.168.254.22 255.255.255.252
mtu-disc maybe
keepalive 10 120
secret /etc/openvpn/openvpn.key
auth SHA1
cipher BF-CBC
user root
group root
persist-key
persist-tun
verb 3
Туннель устанавливается, всё ок, rtt latency канала между OpenWRT и сервером ~10ms. Через некоторое (пока неопределенное) rtt через туннель вырастает до ~100ms, при этом rtt без туннеля не меняется. Проц ничто не жрёт, idle 90-100%.

После перезапуска openvpn всё становится опять хорошо на какое-то время.

На другом OpenWRT (там Linksys WRT160NL с какой-то старой версией) и на просто Linux-клиентах такой бодяги не наблюдаю. Конфиги идентичные.

OpenVPN пробовал как обычный с OpenSSL, так и кастрированный с PolarSSL - один хрен.

Any ideas?

★★★★★

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

Блин, я бы в такой ситуации сразу бы брал strace и какой-нить профилировщик. Пока каких-то более внятных идей нет.

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

Гляну есть ли strace в репах OpenWRT.

Есть подозрения на то что hardware revision v3 моего девайса не поддерживается в релизе OpenWRT, прошивка собрана из транка. Но почему проблема только с OpenVPN проявляется и почему решается его перезапуском - непонятно. Запускал openssl speed bf-cbc во время глюка - скорость на нормальном уровне, т.е. проблема не со скоростью шифрования похоже и не с троттлингом проца.

Думал может кто сталкивался, странный баг какой-то...

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

Может быть эта проблема связана с памятью на устройстве? Если решается перезапуском, то очень похоже. Ну в порядке бреда, не полностью «живая» память. По своему опыту могу сказать что битая память может приводить к совершенно неожиданным спецэффектам.

trancefer ★★
()

Варианты:
1. Попробовать тоже самое на lede
2. Использовать wireguard вместо openvpn есть это допустимо для тебя
3. Поднять openvpn, на компьютере в одной сети с роутером
4. Использовать aes-128-cbc и sha256 (так как sha1 использовать уже не рекомендуется), да и некоторые клиенты могут отказаться соединяться с auth SHA1
5. Попробовать push колдунства

anonymous_sama ★★★★★
()
Последнее исправление: anonymous_sama (всего исправлений: 1)
Ответ на: комментарий от anonymous_sama

1. Девайс от меня на данный момент в 500км, так что перепрошивать его не вариант :)

2. В репах OpenWRT его нет, есть какой-то outdated пакедж. Плюс оно ядерное, не хочу связываться. OpenVPN всем устраивает пока.

3. См. №1

4. У меня все клиенты сидят на Blowfish- на embedded он работает процентов на 10-20 быстрее AES128.

5. Посмотрю, спасибо, но вряд-ли поможет.

В общем, пока не могу проблему воспроизвести. Как появится опять - буду колдовать...

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

Да если что, sysupgrade openwrt <-> lede работает, так что нужен только доступ к роутеру по ssh.

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

Все варианты рассматриваются :) Просто этот маловероятен ИМХО т.к. после рестарта OpenVPN всё оживало. Возможно конечно что DPI увидев новую сессию забивало на время на неё, но параною нужно держать в рамках) Спасибо за идею, если опять вылезет - сменю порт на какой-нибудь рандомный, может DPI не станет в пакеты глядеть :)

blind_oracle ★★★★★
() автор топика

В общем, ситуация за это время ни разу больше не повторилась. Спишу на барабашку и космические лучи.

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