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

Дзве задзейнічаныя прызначэнні не ўзаемазаменныя. Маршрутызацыя павінна сказаць пра гэта яўна.

Куды насамрэч ідзе пошук партнёра

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

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

ip rule show
ip route show table 220
ip -4 route get 198.51.100.44 from 10.40.0.2
ip xfrm policy list

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

Варыянты выключэння на сучасным шлюзе

Дакументацыя strongSwan пра VPN на аснове маршрутызацыі прапануе два практычныя адказы. Адзін пазначае IKE і ESP, каб правіла, якое паказвае на табліцу XFRM, не супадала з імі. Другі пакідае маршрут партнёра або выключэнне, да якога пошук яшчэ можа дабрацца.

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

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

Адзнака — гэта адзін біт у fwmark пакета, на які нішто іншае на шлюзе не прэтэндуе: 0x1 з маскай 0x1 — звычайны выбар, і яго трэба ўсталяваць у двух месцах, каб выключэнне працавала. Charon патрэбны ён на сокеце IKE, а параметры ўваходнай і выходнай адзнакі даччынага злучэння патрабуюць таго ж значэння, каб інкапсуляваныя пакеты таксама выходзілі пазначанымі. Маска 0x1 замест 0xffffffff пакідае астатнія біты свабоднымі, што важна, калі іншая падсістэма ўжо пазначае пакеты на тым жа хосце. Калі ўсталяваны абодва, правіла запісваецца як выключэнне, таму пазначаныя пакеты прапускаюць табліцу з маршрутам XFRM і пераходзяць у асноўную табліцу:

ip rule add not fwmark 0x1/0x1 lookup 220 pref 1000
ip -4 route get 198.51.100.44 from 10.40.0.2 mark 0x1

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

Што аўтаматычная ўсталёўка меркавана чакае ад зборкі

Аўтаматычная ўсталёўка маршруту для інтэрфейса XFRM залежыць ад версіі strongSwan і яе канфігурацыі. Ідэнтыфікатар інтэрфейса, усталяваная палітыка і асацыяцыя павінны звяртацца да патрэбных аб'ектаў. Неадпаведнасць праяўляецца як маршрут, які ціха паказвае кудысьці рэальнае.

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

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

Сачыце за першым абнаўленнем

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

ip -4 route get 198.51.100.44
sudo swanctl --list-sas
sudo tcpdump -ni any 'udp port 500 or esp'

Часовае выдаленне абароненага стандартнага маршруту звычайна аднаўляе злучэнне. Гэты вынік дыягнастычны, а не канчатковы.

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

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