Грешката идва при импортирането, преди каквито и да е преговори, и назовава директива, която клиентът отказва да приеме. OpenVPN Connect изпълнява библиотечен код на OpenVPN 3, който изобщо не реализира опцията fragment на общностния клиент. Това превръща въпроса въпрос за съвместимост между два края, а не за настройка на размера на пакета.

Изтриването на реда дава файл, който клиентът ще анализира, и сървър, който може все още да очаква формата, описан от реда. Проследете го от екрана за импорт навън, преди да промените каквото и да е.

Къде спира импортирането

Импортерът анализира директивите, преди да се свърже със сървъра, така че отказът там е локално решение за синтаксиса, а не мрежов резултат, и списъкът с неподдържани директиви на OpenVPN отбелязва същото ограничение. Това обяснява как един файл може да работи в общностния клиент и да се провали в Connect на същата машина. Прочетете в съобщението името на директивата и запазете оригиналния файл, защото този текст е единственото доказателство срещу какво е възразил клиентът. Грешка при импортиране и изтичане на времето за връзка идват от различни етапи и заслужават различни отговори.

Ако съобщението назовава fragment, остава въпросът дали и сървърът зависи от него. Отговорете на това, преди да пипате профила, който са ви дали.

Какво променя fragment в общностния клиент

В общностния клиент директивата включва собственото фрагментиране на дейтаграми на OpenVPN, което разделя полезния товар, преди да стигне до външния IP слой. Съществува, за да оцелее по пътища, които изхвърлят големи UDP дейтаграми, и да запази тунела използваем там, където откриването на MTU на пътя не заслужава доверие. Тя не е синоним на намаляване на MTU на интерфейса и не е фрагментиране на IP ниво, извършвано от операционната система. Клиент без механизма не може да го придобие, като намали число.

Тъй като настройката живее и в конфигурацията на сървъра, премахването ѝ от вашето копие променя само вашата страна. Сървърът може все още да очаква партньор, който разбира опцията, а профил, който се анализира, още не е сесия, която се установява. Тези два факта обясняват объркващото междинно състояние, в което редактиран файл се свързва и след това засяда.

Поискайте профил, създаден за този клиент

Чистият път е втори профил, документиран за OpenVPN Connect, ако услугата публикува такъв. Много доставчици го правят, а разликата обикновено е в директивите, които пропускат, а не в крайната точка, към която сочат. Поискайте го по името на клиента, вместо да описвате грешката, защото поддръжката може да съпостави профил с клиент много по-бързо, отколкото да диагностицира орязан файл.

Ако вие управлявате сървъра, решението е по-широко от вашия клиент. Изключването на фрагментирането засяга всеки партньор, включително тези, които се нуждаеха от него, за да останат свързани по лош път. Публикуването на втори слушател или втора конфигурация за засегнатия клиент запазва работещи съществуващите потребители, докато по-новият клиент получава нещо, което може да анализира. Както и да постъпите, запишете коя конфигурация обслужва кой клиент, защото това съответствие иначе бързо изчезва.

Проверете връзката, не само импортирането

Успешното импортиране доказва само, че анализаторът е приел файла. Установете тунела с общностния клиент на машина, която контролирате, със същия профил, и четете журнала за преговорите по транспорт и шифроване. Командите по-долу правят това, без настолното приложение да пречи.

openvpn --config client.ovpn --verb 3
ip -4 addr show tun0
curl -sS --interface tun0 -o /dev/null -w '%{http_code}\n' --max-time 8 https://example.com/

Журналът показва къде е спрял опитът: грешка в опция се появява преди всякакъв TLS обмен, докато грешка при удостоверяване или шифроване се появява след него. Ако тунелът се вдигне, а заявката все още се проваля, проблемът се е преместил от съвместимост към маршрутизация. Сравнете това с поведението на Connect в същата мрежа, преди да правите каквито и да е изводи за сървъра.

Пазете работещия профил и версията на клиента до бележката. Бъдещо издание на клиента може да добави поддръжка за директива, и това променя отговора, без някой да пипа сървъра.

Подобни статии