Ping са IPsec пролаза користи другу изворну адресу
Ping покренут на самом пролазу бира сопствени извор, и тај извор мења политику и повратну путању. Изаберите тест који доказује оно што вам је потребно.
Пошаљите ping са IPsec пролаза на удаљену страну, не добијете одговор и закључите да је тунел покварен, док свако радно оптерећење иза пролаза нормално преноси саобраћај. Та два резултата нису противречна. Ping покренут на пролазу је пакет са локалним извором, а пролаз бира изворну адресу из сопствене табеле рутирања. Тај избор може да се разликује од адреса које користи стварни саобраћај локације, што мења која политика се поклапа и која повратна рута важи. Одлучите шта тест треба да докаже пре него што било шта прочитате у његовом резултату.
Три различита питања на која ping може да одговори
Прво питање је да ли је удаљена страна уопште доступна са овог хоста. Друго је да ли селектори тунела или политика заснована на рутама пропуштају саобраћај са одређеног извора. Треће је да ли прослеђени саобраћај са радног оптерећења иза пролаза ради од краја до краја. Једна команда не може да одговори на сва три, а изворна адреса је оно што их раздваја.
Прво изаберите питање. У супротном, неуспешан ping постаје доказ за теорију коју сте већ имали.
Зашто пролаз бира адресу коју нисте очекивали
Када пингујете одредиште, локални стек бира извор из руте која му одговара. На тунелу заснованом на рутама то може бити адреса везе интерфејса тунела, која је у многим пројектима локације пар 169.254.x.x изабран за скок тачка-тачка. Те адресе постоје да би веза радила; оне се на удаљеној страни не објављују као мреже извора апликација.
Тако удаљена страна може да прими захтев за ехо са адресе ка којој нема повратну руту, или са оне са којом се не поклапа ниједан селектор. Тунел може бити здрав, а ping ипак може да не успе, и то је управо тај лажно негативни резултат о коме је овај чланак.
Изаберите извор намерно
На контролисаном Linux пролазу изаберите извор који је већ локално додељен: ping -c 4 -I 10.30.0.1 10.40.0.20. Адресе су овде илустративне, зато их замените стварном унутрашњом адресом пролаза и стварним удаљеним одредиштем, и потврдите да изабрани извор припада овом уређају и да га политика локације допушта.
Не позајмљујте адресу радног оптерећења за тест. Представљање као домаћин који није додељен пролазу ствара резултат који нико не може да понови, а на неким стековима то не успева на начин који изгледа као квар тунела.
Читајте повратну путању, не само захтев
Проверите који извор заиста стиже на удаљено одредиште, укључујући свако намерно превођење на путу. Затим проверите повратну руту удаљене стране ка том извору и селекторе или политику који је допуштају. Захтев који стиже са неочекиваним извором је питање рутирања и политике, не криптографије.
Ту такође хватање пакета помаже више од још једног ping-а: показује извор који је удаљена страна видела, а то је адреса коју њен одговор мора да достигне.
Затим тестирајте радно оптерећење
Одлучујући тест је ping са обичног хоста иза пролаза на обичан хост иза удаљеног пролаза. То вежба улогу пролаза у прослеђивању, стварни извор апликације и праву повратну путању, а то је ток који је корисницима важан.
Држите резултате одвојено у белешкама: доступност са пролаза, допуштање политике за изабрани извор и прослеђени саобраћај. Успешан закачени ping је користан доказ да тунел нешто носи; то није доказ да сваки прослеђени ток ради. А аутоматски изабран извор пролаза до кога не може да се стигне није доказ да је тунел локације пао.
Не додајте општу руту за 169.254.0.0/16 само да бисте добили један дијагностички одговор. То мења обмањујући тест за трајну одлуку о рутирању, а следећа особа је наслеђује без контекста.