Mae EHOSTUNREACH mor aml yn benderfyniad lleol ag yw’n fethiant pell. Gall y cnewyllyn wrthod pecyn oherwydd bod llwybr yn dweud bod y gyrchfan yn anghyraeddadwy, oherwydd na atebodd yr hop nesaf Ethernet erioed, neu oherwydd bod adroddiad ICMP host-unreachable wedi cyrraedd o bellach ymlaen ar y llwybr. Mae pob ffynhonnell yn byw mewn tabl neu gache gwahanol, ac mae pob un yn cael ei thrwsio mewn man gwahanol. Darllenwch y llwybr a ddewiswyd a chyflwr yr hop nesaf cyn cyffwrdd â seiffrau neu ailosod y tiwnel.

Dewiswch y cyfeiriad a’r namespace y mae’r cleient yn eu defnyddio mewn gwirionedd

Dechreuwch drwy binio’r gyrchfan a’r namespace rhwydwaith a gynhyrchodd y gwall. Gall cleient VPN redeg yn ei namespace ei hun, ac mae chwiliad o’r namespace diofyn yn ymgynghori â thabl llwybreiddio gwahanol gyda rheolau polisi gwahanol.

Rhaid i’r chwiliad ddefnyddio’r un cyd-destun ffynhonnell, marc a thabl â’r rhaglen sy’n methu, neu fe all ateb cwestiwn na ofynnodd neb. Ar gyfer cymar IPv4 darluniadol, y gwiriadau darllen-yn-unig yw:

ip -4 route get 198.51.100.25
ip -4 neigh show 198.51.100.1
ip -4 route show table all | grep -w unreachable

Mae canlyniad o gragen weinyddol yn profi dim ond yr hyn y byddai’r gragen honno’n ei wneud. Os yw’r cleient yn gosod marc wal dân neu’n rhwymo i VRF, ailadroddwch y chwiliad gyda’r marc cyfatebol neu y tu mewn i’r VRF, a chymharwch y llwybr a ddewiswyd a’r hop nesaf. Y cyfeiriad cyntaf i’w gadarnhau yw cyfeiriad y cymar yn y proffil, nid y clwstwr neu’r gwasanaeth a enwir gan y defnyddiwr.

Mae llwybr anghyraeddadwy penodol yn gwrthod y pecyn yn lleol

Mae llwybr o fath unreachable yn ateb lleol bwriadol. Mae’n dweud wrth y cnewyllyn i daflu’r pecyn ac i ddychwelyd EHOSTUNREACH i’r anfonwr, a dyna pam mae’r gwall yn ymddangos ar unwaith a heb unrhyw draffig yn gadael y peiriant. Rhoddodd rhywun, neu ryw awtomeiddiad, y llwybr hwnnw yno yn fwriadol.

Nid yw’r mathau o lwybrau yn gyfnewidiadwy. Mae blackhole yn taflu’r pecyn heb wall i’r anfonwr, mae prohibit yn dychwelyd EACCES, ac mae unreachable yn dychwelyd EHOSTUNREACH. Felly gall cynorthwyydd VPN sy’n gosod llwybr sinc wrth ailgysylltu gynhyrchu ffrwydrad o wallau host-unreachable sy’n diflannu unwaith y bydd y tiwnel i fyny, tra byddai llwybr blackhole yn cynhyrchu tewi distaw yn lle hynny.

Chwiliwch bob tabl am y math cyn beio’r pen pell. Mae’r rheol sy’n dewis y tabl yr un mor bwysig â’r llwybr y tu mewn iddo, ac ni fydd llwybr a ychwanegwyd at y prif dabl yn helpu cleient y mae ei reol polisi’n anfon ei draffig yn rhywle arall.

Mae cymydog marw yn cynhyrchu’r un gwall ar Ethernet

Pan fo’r llwybr a ddewiswyd yn defnyddio porth ar-linell, mae angen cyfeiriad haen cyswllt wedi’i ddatrys ar gyfer danfon. Mae’r cnewyllyn yn anfon cais ARP neu gymydog IPv6, ac os na ddaw ateb ni ellir fframio’r pecyn. Yna mae’r anfon yn methu ag EHOSTUNREACH er bod y llwybr ei hun yn ddilys.

Mae’r tabl cymdogion yn enwi’r cam. Mae INCOMPLETE yn golygu bod datrysiad yn dal i fynd rhagddo, mae FAILED yn golygu na chafodd yr ymgais olaf ateb, ac mae REACHABLE neu STALE yn golygu bod gan y cnewyllyn gyfeiriad defnyddiadwy. Mae cofnod FAILED ar gyfer porth VPN yn broblem danfon leol, nid yn dystiolaeth am ochr bell y tiwnel.

Darllenwch y cofnod ar gyfer yr hop nesaf go iawn, nid ar gyfer y cyfeiriad rhyngrwyd pell. Mae cyrraedd cyfeiriad pell fel arfer drwy lwybrydd, felly ni fydd ganddo ei gofnod ARP ei hun; mae gofyn am un yn wall categori sy’n anfon pobl i chwilio am gofnod ar goll na ddylai fod wedi bodoli erioed.

Adroddiadau pell a gwallau UDP asynchronaidd

Gall EHOSTUNREACH hefyd gyrraedd o’r tu allan. Gall llwybrydd na all anfon y pecyn ymlaen anfon ICMP host unreachable, ac mae’r cnewyllyn yn trosglwyddo’r adroddiad hwnnw i’r soced sy’n berchen ar y ffrwd. Yn yr achos hwnnw mae’r llwybr a’r cymydog yn iawn, ac mae’r methiant yn perthyn i hop y tu hwnt i’r rhwydwaith lleol.

Mae UDP yn gwneud priodoli’n anoddach. Gall gwall a ddychwelir gan alwad anfon neu dderbyn hwyrach gyfeirio at ddatagram cynharach, felly efallai na fydd cyfeiriad ac amser yr alwad sy’n methu yn cyfateb i’r pecyn a sbardunodd yr adroddiad. Mae soced UDP cysylltiedig yn derbyn y gwall unwaith, ac efallai na fydd soced heb ei gysylltu byth yn ei weld.

Dyna pam mae amseru yn perthyn i’r dystiolaeth. Nodwch pryd y daeth y gwall i’r golwg, pa gyfeiriad cymar a ddefnyddiodd y soced, ac a oedd y tiwnel newydd ailgysylltu. Mae ffrwydrad yn syth ar ôl newid llwybr yn pwyntio at y tabl lleol; mae un gwall unigol funudau i mewn i ffrwd sefydlog yn pwyntio at adroddiad llwybr.

Gwahanwch yr haenau cyn newid crypto

Mae tri chwestiwn yn dosbarthu’r gwall. A ddewisodd y cnewyllyn lwybr sy’n gwrthod y gyrchfan? A ddewisodd lwybr dilys ond methodd â datrys yr hop nesaf? Neu a gyrhaeddodd adroddiad o’r tu hwnt i’r rhwydwaith lleol? Dim ond y trydydd achos all awgrymu pen pell y tiwnel, a hyd yn oed yna nid yw’n awgrymu amgryptiad.

Mae problemau dilysu a thrafod yn ymddangos fel eu gwallau eu hunain ar ôl i’r cludiant gyrraedd y cymar. Ni all newid seiffer nac ailosod y cleient drwsio llwybr unreachable lleol, ac mae’n dinistrio’r dystiolaeth llwybr a chymydog y byddai ei hangen arnoch ar gyfer yr achos go iawn.

Cofnodwch y gyrchfan, y namespace, y tabl a ddewiswyd, yr hop nesaf, cyflwr y cymydog ac amser y gwall cyn y newid cyntaf. Ailredwch yr un chwiliad ar ôl y trwsio; mae llwybr sydd nawr yn pwyntio at y tiwnel a chofnod cymydog sydd nawr yn datrys yn brawf cryfach na ping llwyddiannus i gyfeiriad digyswllt.

Erthyglau cysylltiedig