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

Пачніце з аднаго аб’екта тунеля і аднаго інтэрвалу часу.

Два жыццёвыя цыклы, адзін аб’ект тунеля

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

Гэтае размежаванне і ёсць уся праблема. Усё астатняе — як назіраць за ім, не зліваючы няроднасныя паведамленні.

Чытайце аб’ект, а не зводку кансолі

Запытайце ў API толькі два палі, якія маюць значэнне, і нічога больш, каб адказ заставаўся дастаткова малым, каб прачытаць яго а трэцяй гадзіне ночы: gcloud compute vpn-tunnels describe NAME --region REGION --format="yaml(status,detailedStatus)". Поле status называе этап жыццёвага цыклу, а detailedStatus нясе чытэльную прычыну, далучаную да яго. Поўны дамп канфігурацыі адказвае на іншыя пытанні, і яго цяжэй уставіць у заяўку. Такія запыты толькі для чытання не могуць змяніць тунель, што важна, пакуль інцыдэнт яшчэ актыўны.

Запішыце адзнаку часу запыту побач са значэннямі, бо абодва палі змяняюцца.

ALLOCATING_RESOURCES — гэта не неадпаведнасць ключа

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

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

ESTABLISHED — гэта пачатак праверак доступу

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

Стан кажа, якое пытанне задаць далей. Ён ніколі не адказвае на пытанне доступу за вас.

Суаднясіце адзін аб’ект і адзін інтэрвал часу

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

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

Наступны крок заўсёды адной формы: адзін аб’ект, адзін інтэрвал, адзін этап. Усё шырэйшае — гэта зводка, а не дыягназ.

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