Меркаванне такое, што даданне remote-random ператварае профіль у паваротны пул, і кожнае злучэнне выходзіць з іншага адрасу. Насамрэч дырэктыва робіць іншае: яна адзін раз перамешвае спіс remote-аў, калі кліент пачынае злучацца, а потым спрабуе іх у гэтым новым парадку. Тунель, які ўрэшце ўзнікае, усё роўна сканчаецца ў адной кропцы і застаецца там на ўвесь час існавання сеансу.

Гэтая розніца важная і для тэставання, і для заяў пра прыватнасць.

Што опцыя змяняе ў момант злучэння

Профіль кліента можа ўтрымліваць некалькі радкоў remote, кожны са сваім імем хоста і портам. Без дырэктывы яны спрабуюцца ў парадку файла; з ёй спіс адзін раз перастаўляецца ў пачатку сеансу і перамагае першы адрас, які адказаў. Астатнія застаюцца запаснымі варыянтамі для гэтай спробы, а не паралельнымі шляхамі. Профіль з адным remote не дае дырэктыве нічога перамешваць, і гэта найхутчэйшы спосаб убачыць, ці можа яна мець значэнне.

Дапаможнік OpenVPN апісвае гэтую опцыю як такую, што ўплывае на парадак спроб злучэння, і менавіта такі абсяг і варта чакаць у паводзінах.

Паўторнае злучэнне пачынае новы цыкл выбару, таму позні сеанс можа апынуцца ў іншым месцы. Жывы тунель не рухаецца, пакуль ён працуе.

Міф: кожны запыт атрымлівае новы сервер

Пасля ўсталявання тунель перадае ўвесь трафік гэтага сеансу абранаму партнёру. Папярэдняга выбару на кожны запыт няма, і дырэктыва не з'яўляецца балансіроўшчыкам нагрузак для асобных злучэнняў: яна перамешвае кандыдатаў, а не размяркоўвае пакеты. Кожная праграма, якая дзеліць гэты тунель, дзеліць і таго ж партнёра. Усё, што браўзер паведамляе пра свой выхад, тычыцца сеансу, а не асобнага запыту.

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

Для чаго патрэбны remote-random-hostname

Другая дырэктыва з падобнай назвай змяняе імя хоста, якое выкарыстоўваецца для развязання, а не парадак спісу remote. Яна існуе для разгортванняў, дзе імя развязваецца ў некалькі адрасоў праз round-robin DNS, і яе варта ўжываць толькі тады, калі сэрвіс для гэтага створаны. Змяняецца толькі крок развязання; парадак спісу кандыдатаў не мяняецца.

Уключаць яе таму, што назвы выглядаюць звязанымі, — распаўсюджаная памылка. Сертыфікат з падстаўнымі знакамі або схема DNS, якая не чакае змененага імя, проста не зможа развязаць або праверыць яго.

Прачытайце абраны канчатковы пункт з журнала

Запішыце, які менавіта партнёр выкарыстоўваўся ў сеансе, перш чым рабіць высновы. Падрабязны вывад называе адрас, які спрабуецца, а сам профіль паказвае, колькі ёсць кандыдатаў. Параўнайце гэтую колькасць з адрасам у журнале, перш чым вінаваціць перамешванне.

grep -c '^remote ' client.ovpn
openvpn --config client.ovpn --verb 4 2>&1 | grep -i -E 'attempting|peer connection'
openvpn --help | grep -A2 remote-random
head -20 client.ovpn

Для параўнання прадукцыйнасці замацуйце канчатковы пункт, закаментаваўшы іншыя remote, каб зменнай у тэсце быў пратакол або кліент, а не шлях. Для пытання прыватнасці ацэньвайце ідэнтычнасць сэрвісу і яго журналы ў цэлым; перамешаны першы выбар не ачышчае кукі, не выдаляе ўваход ва ўліковы запіс і не робіць двух аператараў роўнымі.

Трымайце пастаўленыя матэрыялы даверу і падтрыманы набор канчатковых пунктаў разам. Перамешванне змяняе толькі парадак, у якім гэты набор спрабуюць.

Падобныя артыкулы