Адрас, які ляжыць невыкарыстаным у размеркаванні арганізацыі, — не слухач, і даданне яго ў міжсеткавы экран не стварае слухача. Нешта павінна завяршаць IKE на гэтым адрасе, і механізм залежыць ад таго, ці шлюз валодае адрасам, ці яго ператварае прылада вышэй па шляху. Менавіта шлях пакета адрознівае гэтыя два выпадкі, і ён вызначае, якая функцыя платформы вам патрэбна, перш чым хтосьці адкрые запыт на змену. Спачатку змадэлюйце шлях, потым выбірайце.

Шлях пакета за адрасам

Пірэр накіроўвае IKE на адрас, які яму далі, праз UDP 500 або праз UDP 4500, калі задзейнічана пранікненне праз NAT. Любая прылада, якая трымае гэты адрас на шляху, альбо атрымлівае дэтаграму лакальна і адказвае на яе, альбо перасылае яе ў іншае месца. Гэта адзіныя дзве магчымасці, і ўсё астатняе ў артыкуле вынікае з таго, якая з іх праўдзівая.

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

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

Мадэль A: адрасам валодае шлюз

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

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

ip -br addr show
ss -lunp | grep -E ':500|:4500'
sudo tcpdump -ni eth0 'udp port 500 or udp port 4500'

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

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

Мадэль B: яго ператварае прылада вышэй па шляху

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

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

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

Ідэнтычнасць — не знешні адрас

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

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

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

Прыміце схему, назіраючы за адным злучэннем

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

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

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

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