Openvpn Потеря пакетов

Hy!

Я получил сервер Openvpn в Linux и использую его для маршрутизации всего трафика ipv4 от моих клиентов (win7,android, pfsense и т. Д.). Я, наконец, хочу по-настоящему понять, что такое маршрутизация, хотя это работает, но больше, потому что мой сервер.conf был сделан методом проб и ошибок:)

Что я не понимаю, какая комбинация опций действительно необходима - что эти push-вещи делают, кроме опции "redirect-gateway def1" (что объясняется в openvpn man)? это правда, что я не могу пропустить redirect-gateway def1, потому что в противном случае трафик туннеля будет направляться через туннель..?

В настоящее время работает следующий набор параметров маршрута на server.conf (помимо других параметров, таких как tun device, client и т. Д.):

сервер 10.10.0.0 255.255.255.0 #ok, я полагаю, что это необходимо для клиента, чтобы узнать, какой IP получить

push "redirect-gateway def1" # я понял, но это не работает на Android или Mac - там я должен установить опцию программы "маршрутизировать все шлюзы через vpn", чтобы туннель действовал как default-route

нажмите "dhcp-option DNS 8.8.8.8" #, поскольку dnsmasq не работает, я предполагаю, что мне это нужно для всех DNS, выполняемых через другой (google) сервер

нажать "маршрут 10.10.0.1"# это полезно? это, кажется, не тормозит, но разве это не должно быть выполнено с помощью redirect-gateway def1? на данный момент, на моем клиенте win7, если я опущу это, это также работает. но с этой опцией или без нее у меня нет записи default-ipv4-gateway на устройстве tap в win7, хотя трафик направляется через туннель.

другая вещь, которую я не получаю, это то, что dhcp установлен в 10.10.0.5, если клиенты получают ip 10.10.0.6. но нет 10.10.0.5, откуда это взялось?

о человеке, пожалуйста, помогите мне понять это, мои знания маршрутизации мало или нет... спасибо!

PS Когда я наконец получил это, я хочу устранить постоянные ошибки "Authenticate/Decrypt package error: неправильный идентификатор пакета (может быть повтор): [ #961 ] ", которые я получаю, уже пробовал фрагмент 1300 mssfix, но, похоже, не помогает, хотя netalyzr сказал, что мой mtu - 1376, и до этого он сказал, что я не могу отправлять или получать фрагментированные пакеты. я подозреваю, что масса моего провайдера с пакетами udp..

редактировать: вот мой server.conf

port 123 
client-to-client
proto udp

dev tun0

ca *.crt
cert *.crt
key *.key
dh *.pem

server 10.10.0.0 255.255.255.0
ifconfig-pool-persist ipp.txt

duplicate-cn
keepalive 10 120

push "redirect-gateway def1"
push "dhcp-option DNS 8.8.8.8"
push "dhcp-option gateway 10.10.0.1"

max-clients 5
client-to-client

fragment 1300
mssfix

edit: команды маршрута теперь понятны, спасибо, наблюдали за частью "сервера" в openvpn man.

Теперь у меня есть следующие проблемы:

в попытке отладить соединение (соединение udp всегда получает воспроизведение пакета) я построил tcp туннель (на основе вышеуказанного конфига, просто переключился на tap0 на сервере), и как только начинается загрузка с клиента openvpn, я получаю следующее вывод журнала:

"MULTI: пакет отброшен из-за насыщения на выходе (multi_process_incoming_tun)"

поэтому я добавил:

tcp-queue-limit 128

что привело к уменьшению количества сообщений, поэтому я увеличил

tcp-queue-limit 256

это приводит к обрыву соединения. Сначала он выводит некоторые из них:

MBUF: пакет mbuf отброшен

затем

запись TCPv4_SERVER: сломанный канал (код =32)

затем

Сброс соединения, перезапуск [0]

поэтому я добавил

bcast-buffers = 4096

что приводит к тому, что больше нет сообщений, но скорость все еще мрачна. Кроме того, я не знаю, является ли это исправлением для некоторых незначительных загрузок, и если он работает стабильно с текущими загрузками, или если буфер заполняется, и он переподключается, поэтому может быть скорее сломан, чем исправлен..

Когда я использую туннель udp, я получаю почти вдвое большую скорость загрузки и многократно это сообщение в журнале:

Ошибка аутентификации / дешифрования пакета: неверный идентификатор пакета (может быть повтор): [ #650 ]

Например, во время выполнения теста на скорость в дубле я получаю около 3 предупреждений о повторном воспроизведении во время теста загрузки и 5-6 во время теста загрузки.

Что я могу сделать для дальнейшего улучшения туннеля? Спасибо!

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

редактировать: теперь, используя 1 ГБ файл с моего сервера openvpn для проверки скорости загрузки вместо oakla, и у меня есть 16 Мбит через tcp, ошибок пока нет. Хорошо, он не маршрутизируется через туннель, он загружается напрямую - я предполагаю, что из-за прямой маршрут к серверу openvpn, необходимый для клиента openvpn.

0 ответов

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