OpenVPN или WireGuard? Одлучите по идентитету и транспорту
Кључеви, токови пријаве и транспорт само преко UDP-а обликују избор много пре пропусности. Обавите четири провере и одржите мерење честитим.
Поређење ова два протокола корисно је само ако пореди оно чиме ћете заиста управљати. WireGuard препознаје партнере по јавном кључу и преноси свој протокол преко UDP-а, док OpenVPN нуди шири скуп начина аутентификације и може да ради преко UDP-а или TCP-а када сервер нуди оба. Те разлике обликују постављање и резервни пут много пре него што обликују пропусност. Обавите четири провере испод по реду; прве две обично одлучују избор, а последње две кажу да ли је одлука била исправна.
Почните од идентитета, не од листе шифара
Партнер у WireGuard-у чува један приватни кључ и наводи јавне кључеве до којих може да стигне. Добављач може да обавије то порталом налога, али сам протокол нема размену корисничког имена и лозинке, па животни циклус налога живи у ономе што дели кључеве. OpenVPN може да користи сертификате, додатак према постојећем директоријуму или скрипту за проверу, и зато га организације са системом идентитета често преферирају. Ниједна од две конструкције не уклања питање како се уклања изгубљени уређај.
| Decision | OpenVPN | WireGuard |
|---|---|---|
| Identity | Certificates, plugins or scripts against an existing directory | One private key per peer, public keys listed for the peers it may reach |
| Transport | UDP or TCP profiles when the server offers both | UDP only in the native protocol |
| Routing and DNS | Server pushes routes and DNS options | AllowedIPs maps ranges to peers, and tooling installs the routes |
| Where it usually breaks | Profile mismatch, expired certificate, failing plugin | Blocked UDP, wrong AllowedIPs, key not installed |
Кратка конфигурација није исто што и једноставно постављање. Давање једног приватног кључа већем броју људи чини касније уклањање двосмисленим, јер његово опозивање уклања све одједном. Запишите мапирање особе на кључ или сертификат пре избора, и одлука о протоколу постаје знатно лакша.
Затим погледајте шта транспорт дозвољава
Протокол WireGuard-а користи UDP. OpenVPN услуге могу да нуде и UDP и TCP профиле, а у мрежи која блокира или погоршава UDP та друга опција је практичан резервни пут, а не теоријски. Сервер мора да подржава профил који изаберете, а промена броја порта не претвара тунел у HTTPS нити убеђује заштитни зид да га пропусти.
Преношење TCP-а унутар TCP-а такође мења понашање при губицима, јер оба слоја независно покушавају поново и преређају. TCP профил који ради на ограничавајућој мрежи ипак може бити слаб на мрежи са губицима, и то је разлог да држите оба профила доступним уместо да прогласите један бољим.
Затим проверите рутирање и разрешавање имена
AllowedIPs у WireGuard-у мапира опсеге адреса на партнере и делује као одлука о рутирању унутар протокола, а околни алати користе те опсеге када инсталирају руте. OpenVPN гура руте и DNS опције са сервера. У оба случаја клијент може да се подигне док је предвиђена политика примењена само пола.
ip route show
ip -6 route show
resolvectl status
wg show
Прочитајте излаз пре него што поверујете индикатору повезаности. ip route show наводи шта је клијент инсталирао за IPv4, а варијанта IPv6 хвата тунел који носи само једну фамилију. resolvectl status показује који ће резолвер клијент заиста питати, а wg show штампа AllowedIPs које WireGuard сматра својим. Ако резолвер и даље показује на локалну мрежу док руте тврде пуну покривеност, DNS излази изван тунела.
Затим измерите задатак који вам је важан
Држите уређај, мрежу и одредиште непромењеним и запишите клијенте и крајње тачке које сте користили. Ако две услуге излазе у различитим градовима или раде на различитом хардверу, реците то, јер тада резултат описује те услуге, а не протоколе.
iperf3 -c 203.0.113.20 -t 30
mtr -rwzbc 50 203.0.113.20
Извршите обе команде двапут, једном за сваки пар профила, на истој мрежи и истом уређају. iperf3 даје бројку пропусности, а mtr даје пут и место где се појављују губици, што једна бројка преузимања не може да покаже. Бројка преузимања такође пропушта оно што позив примети: додатну латенцију, треперење и колико траје поновно повезивање. Запишите их одвојено, јер протокол који побеђује у пропусности ипак може да изгуби у задатку који заиста извршавате.
За управљану везу, компатибилност, подршка и напор око обнове могу да надмаше малу разлику у мерењу. За лични излаз, евидентирање и надлежност оператера важнији су од ознаке протокола. Оба протокола могу да носе добру везу; услуга и њена конфигурација одлучују шта добијате.
Запишите пар профила пре тестирања
Изаберите један профил по протоколу пре мерења и запишите шта сваки треба да ради: само приватне подмреже или сав саобраћај са одређеним излазом. Тест који пореди профил подељеног тунела са профилом пуног тунела мери профиле, а не протоколе. Ставите име клијента, верзију клијента и локацију излаза у исту белешку.
Затим извршите исти задатак на оба, на истој мрежи, у истој сесији. Ако један уопште не може да се повеже, тај неуспех је резултат и припада запису заједно са разлогом. Чувајте запис уз документацију услуге да следећи човек упореди исти пар уместо да почне испочетка.