Кайра жүктөөдөн кийинки биринчи туташуу иштейт. Андан кийинки ар бир аракет туташуу баскычында илинип калат жана акырында убакыт бүтөт, ал эми жалгыз ишенимдүү дары — дагы бир кайра жүктөө. Бул үлгү профилдин көйгөйү эмес жана ал каттоо маалыматтарынын көйгөйү да эмес. Фондо бир нерсе дагы эле мурунку аракеттин абалын кармап турат, жана кийинки аракет ага кагылат.

macOS системасында бул нерсе адатта IKE демону.

Үлгү: бир туташуу, анан убакыттын бүтүшү

Ар бир жүктөөдө так бир жолу иштеген туташуу ажыроодон кийин сакталуучу, бирок кайра жүктөөдөн кийин сакталбаган абалды көрсөтөт. Профилдер экөөнөн тең аман калат, ошондуктан профиль өзгөрмө эмес. Каттоо маалыматтары да экөөнөн тең аман калат, эгер сервер каттоону кулпулабаса. Кайра жүктөөдө өзгөргөн нерсе — иштеп жаткан демондордун жыйындысы жана алар кармаган сокеттер.

Бул бир журналды ачардан мурун иликтөөнү тарайтат. Суроо IKE портуна кайсы процесс ээ жана ал өзүн эмне кылып жатат деп ойлойт дегенге айланат.

Эки демон, бир порт

Система иштетет racoon туташуу IKE 1 версиясында сүйлөгөндө. Учурдагы чыгарылыштар да алып келет iked IKEv2 жана жаңыраак IPsec стеги үчүн. Экөө тең UDP 500 жана UDP 4500ди байланыштыра алат, жана туташуу аракети сырсөз суроосунда жокко чыгарылгандан же тармак өзгөрүүсү менен үзүлгөндөн кийин экөө тең жарымы ачык коопсуздук бирикмесин кармай алат.

Бул болгондо, кийинки аракет таза башталбайт. Эски бирикме дагы эле өнөктөштүн абалын ээлеп турганда ал сүйлөшүү жүргүзүүгө аракет кылат, жана алмашуу так ката менен ишсиз аяктоонун ордуна токтоп калат. Колдонуучу айланма белгини көрөт, анан убакыт бүтөт.

Бир нерсени өлтүрөрдөн мурун ээсин табыңыз, анткени жооп кайсы кызматты кайра баштаарыңызды жана кийин кайсы журналды окуйоруңузду аныктайт.

sudo lsof -i :500 -i :4500
ps -ef | grep -E "racoon|iked"

Чыгарылышты эки факт катары окуңуз: кайсы процесс портту кармап турат, жана алардын бирден көбү барбы. Бир сокет үчүн атаандашкан эки IKE демону туруксуз серверге окшош көптөгөн үзгүлтүктүү жүрүм-турумду түшүндүрөт.

Процессти эмес, тапшырманы кайра баштаңыз

Эски системаларда процессти өлтүрүп, кийинки туташуу аны кайра башташына жол берүү жетиштүү. Учурдагы чыгарылыштарда демонду launchd башкарат, жана процессске гана сигнал жөнөтүү тапшырманы ал иштебеген жана баштоого пландалбаган абалда калтырышы мүмкүн. Анын ордуна тапшырманы токтотуп, баштаңыз.

sudo launchctl stop com.apple.racoon
sudo launchctl start com.apple.racoon

Эгер launchdда тапшырманын жазуусу болбосо, процессти аты боюнча өлтүрүү кийинки аракетте жаңы сүйлөшүүнү дагы эле мажбурлайт. Сыноо эки учурда тең бирдей: кайра туташууга аракет кылганда эч бир процесс портту кармап турбашы керек. Муну ошол эле команда менен ырастаңыз lsof кайра жүктөө иштеди деп болжолдоонун ордуна.

Андан кийин бир жолу туташып, кардардын журналын башынан окуңуз. 1-баскычтан өтүп, анан жөнөтүү катасын билдирген сүйлөшүү жергиликтүү сокет көйгөйүн кайталайт; өнөктөш четке каккан сүйлөшүү таптакыр башка билет.

Сервердин өзү баш тартканда

Ар бир экинчи туташуу жергиликтүү түрдө ишсиз боло бербейт. Сервер ажыроодон кийин белгиленген терезе үчүн жаңы кирүүнү четке кагышы мүмкүн, ал эми кардардын убакыт бүтүшү илинип калган демонго так окшош. Айырма арзан: эгер демонду кайра баштоо жардам бербесе, бирок башка каттоо дароо туташса, терезе сервер тарапта жана Mac эч качан көйгөй болгон эмес.

Бөлүнгөн туннелдин саясаты ошол эле форманы карама-каршы тараптан жаратат. Бардык трафикти туннелде талап кылган сервер бөлүнгөн туннелге ылайыкталган кардарды сүйлөшүү учурунда таштап кетет, ал эми кардар саясаттан баш тартуунун ордуна убакыттын бүткөнүн билдирет. Профилди баарын туннел аркылуу жөнөтүүгө өзгөртүү аны туташтырышы мүмкүн, бирок бул тармак ээси менен бирге кабыл алынуучу саясий чечим, тынч колдонулуучу оңдоо эмес.

Кардарды кайра өзгөртүүдөн мурун өнөктөштүн журналын окуңуз. Четке кагуу, саясат шайкеш келбестиги жана тынч таштоо — үчөө тең Mac экранында «туташып жатат» деп көрүнгөн үч башка себеп.

Эски кардарлар жана 64-биттик өзөк

Эски Cisco IPSec кардары 32-биттик жана PowerPC системалары үчүн курулган өзөк кеңейтүүсүн жүктөйт. 64-биттик өзөктө жүктөлгөн Mac'те бул кеңейтүү жүктөлбөйт, жана кардар 51 катасы менен эрте ишсиз аяктайт, анткени VPN ички системасына такыр жете албайт. Өзөк кеңейтүүсүн канча жолу кайра жүктөсөңүз да, туура эмес архитектурадагы кеңейтүүнү оңдобойт.

Кеңейтүүнү кайра жүктөө бир аз убакыт иштеп, анан кийинки жүктөөдө кайра ишсиз болушу мүмкүн. Туруктуу чечимдер — эски өзөктү али колдоо бар жерде иштетүү же система менен келген курулма кардарга өтүү. Жүктөлбөгөн үчүнчү тараптын кардарына кеч коротпой мурун архитектураны текшериңиз.

  • Бир жолу кайталаңыз, анан профилге тийүүдөн мурун кайсы демон UDP 500гө ээ экенин текшериңиз.
  • 1-баскычтан кийинки биринчи ишсиздикти окуңуз: жөнөтүү катасы жергиликтүү сокетти көрсөтөт.
  • Процессти гана эмес, launchd тапшырмасын кайра баштаңыз жана порттун бош экенин ырастаңыз.
  • Сервер тараптагы кайра аутентификация терезесин кардардын бузулушунан ажыратуу үчүн экинчи каттоону сынап көрүңүз.
  • Кардарды күнөөлөөдөн мурун өзөктүн архитектурасын жазып алыңыз.

Так бир жолу иштеген VPN — тескериси далилденмейинче абал көйгөйү. Демонду тазалоо кайра жүктөөдөн тезирээк жана кайра жүктөө ыргытып сала турган журнал далилдерин сактайт.

Тектеш макалалар