proto udp или tcp-client: коју ваш сервер чује?
Директива одређује транспорт спољашње везе. Њено локално уређивање не може да створи слушаоца на серверу, зато прво проверите remote запис.
Профил који је радио прошлог месеца сада истиче, и неко предлаже да proto udp замените са proto tcp-client. Понекад је то прави потез, а понекад настаје клијент који се повезује на порт где ништа не слуша, јер сервер никада није био конфигурисан за други транспорт. Директива описује како ваша страна говори; она не може да створи слушаоца на другој страни. Прочитајте профил и сервер заједно пре него што промените било који од њих.
Прочитајте транспорт који користи изабрана веза
Профил може да носи неколико remote записа, а сваки може да наведе сопствени транспорт. Клијент их обрађује редом, тако да прва линија коју видите није нужно она која се примењује.
Пронађите запис који се стварно покушава, затим прочитајте његов транспорт. Редослед је важан, јер клијент не прелази даље тихо. Неке градње покушавају следећи запис тек после истека времена, тако да се радна алтернатива на дну датотеке постиже неколико секунди касније него што очекујете. Пратите у дневнику која се крајња тачка покушава, уместо да претпоставите да је прва линија победила.
Ако датотека има једну proto линију при врху и неколико remote записа испод, та линија је подразумевана за сваки remote који је не надјачава. Локална измена подразумеване вредности не чини ништа за remote запис који наводи сопствени транспорт.
grep -nE '^(remote|proto)\b' client.ovpnUDP и TCP нису подешавање брзине
UDP шаље датаграме без изградње уређеног тока, тако да сопствени саобраћај тунела није умотан у други поуздан транспорт. TCP вам даје пут кроз мреже које одбацују или блокирају UDP, уз цену угнежђеног поновног преноса који може учинити да веза с губицима делује лошије.
То је трговина достижношћу, а не универзални поредак. Исправан избор је онај који мрежа испред клијента дозвољава. Пут који одбацује UDP на VPN порту никада се неће договорити, колико год профил био добро написан. Тестирајте пут, затим изаберите транспорт.
Бирање између њих само на основу мерења је грешка, јер одговор зависи од тога шта мрежа испред вас дозвољава. Хотел или корпоративни прокси може да дозволи одлазни TCP на 443 и ништа друго, зато добављачи нуде ту варијанту. То остаје OpenVPN веза на том порту, а не HTTPS сесија, иако је број порта познати.
Шта tcp-client заиста значи
Директива на страни клијента именује крај који започиње TCP везу. Страна сервера користи свој облик слушања, а копирање клијентове речи у конфигурацију сервера ствара слушаоца који очекује да га позову, а не оног који прихвата.
Подударање значи да се две стране слажу о транспорту, а не да деле исти низ.
grep -nE '^proto\b' /etc/openvpn/server/server.conf
ss -lntp | grep openvpnПитајте сервер на шта слуша пре него што претпоставите да је профил погрешан. UDP слушалац се не појављује у списку TCP сокета, и обрнуто је такође тачно, зато гледајте приказ специфичан за протокол, а не општи.
Када се профил увезе, али никада не повеже
Увезени профил који одмах истиче обично не успева пре било какве аутентикације. Пакет одлази на порт без слушаоца, или га мрежа тихо одбаци.
Тестирајте пут на најједноставнији могући начин: повежите се на исти хост и порт с транспортом који профил тврди, с исте мреже као клијент који не успева.
Ако UDP провера не добије ништа, а TCP провера се повеже, сервер нуди други транспорт и профил је једноставно застарео. Ако ниједна не одговори, проблем је изнад избора транспорта и никаква измена профила га неће поправити. Разликовање та два случаја траје минут и штеди сат времена отклањања грешака са сертификатима које никада није било релевантно.
Запишите радни транспорт
Када комбинација проради, запишите је са сервером, портом и протоколом и забележите с које је мреже тестирана.
Иначе ће следећа особа која наиђе на истек времена поновити исти експеримент у другом смеру и вероватно променити сервер који је био исправан.
Ако добављач објављује обе варијанте, задржите обе датотеке и означите их према мрежи којој одговарају. Два јасно именована профила спречавају случајно мешање клијентског транспорта са серверским слушаоцем који за њега никада није био конфигурисан.