Mae rheol bolisi yn anfon pecynnau wedi’u marcio i dabl pwrpasol, a’r disgwyliad arferol yw y bydd colli llwybr y VPN yn eu blocio. Mae’r mecanwaith yn gwneud rhywbeth arall. Pan nad oes gan dabl unrhyw lwybr cyfatebol, mae’r chwiliad yn parhau i’r rheol nesaf yn hytrach na stopio, ac mae tabl main yn dal i gynnwys llwybr diofyn arferol ar gyfer yr uplink. Y canlyniad yw ffurfweddiad sy’n edrych fel fail-closed ac sy’n ymddwyn fel fail-open.

Nid oes unrhyw beth wedi torri; dyma sut y pennir llwybro polisi.

Mae’r chwiliad yn parhau pan nad oes gan dabl ddim

100:   from all fwmark 0x36 lookup 42
110:   from all fwmark 0x36 lookup default
32766: from all lookup main

Cymerwch y set rheolau honno: mae chwiliad wedi’i farcio yn mynd i dabl 42, ac mae rheol ddiweddarach yn anfon yr un marc i dabl o’r enw default. Tra bo tabl 42 yn dal llwybr diofyn defnyddiadwy, y chwiliad cyntaf sy’n darparu’r llwybr. Pan fydd y llwybr hwnnw’n diflannu ac nad oes dim arall yn nhabl 42 yn cyfateb, nid yw’r chwiliad yn troi’n dafliad; mae’r prosesu’n symud ymlaen i’r rheol nesaf, a phan nad yw honno’n canfod dim chwaith, mae’n cyrraedd tabl main. Nid oes dim yn y dilyniant hwnnw yn adrodd pa reol a gynhyrchodd yr ateb terfynol, felly mae cysylltiad gweithredol yn edrych fel polisi gweithredol.

Mae tabl 253, a elwir yn gonfensiynol yn default, yn dabl llwybro cyffredin ac yn wag fel arfer. Nid yw ei enw yn gyfarwyddyd i ollwng pecynnau, ac nid yw’r un peth â llwybr cyrchfan diofyn y tu mewn i dabl.

Mae gweithredoedd terfynol yn gorffen y chwiliad

100:   from all fwmark 0x36 lookup 42
110:   from all fwmark 0x36 prohibit
32766: from all lookup main

Gall rheol derfynol ddilyn y chwiliad VPN yn lle chwiliad tabl gwag. Gyda’r un marc, mae gweithred prohibit a osodir ar ôl rheol tabl 42 yn gorffen y chwiliad pan nad yw’r tabl hwnnw’n rhoi dim, gan ddychwelyd gwrthodiad gweinyddol yn lle cynnig cyfle arall i dabl main. Mae unreachable a blackhole hefyd yn derfynol, gydag ymddygiad gwall gwahanol i’r anfonydd.

Mae llwybr o fath throw yn wahanol: o fewn y tabl hwnnw mae’n ymddwyn fel pe na bai dim wedi cyfateb, felly mae rheolau diweddarach yn dal i gael eu tro. Mae hynny’n gwneud throw yn ddefnyddiol ar gyfer cilio bwriadol ac yn anghywir fel bloc terfynol.

Gwiriwch gyda’r marc a’r rhyngwyneb go iawn

ip -4 rule show
ip -4 route show table 42
ip -4 route get 198.51.100.20 from 10.44.0.2 iif lan0 mark 0x36

Archwiliwch y rheolau a’r tabl go iawn yn hytrach na diagram, yna holiwch y llif gyda’r cyd-destun ffynhonnell, marc a mewnfa sydd ganddo mewn gwirionedd. Mae chwiliad darllen yn unig a anelir at gyrchfan, y rhoddir cyfeiriad y ffynhonnell, y rhyngwyneb a’r marc iddo, yn adrodd y llwybr y byddai’r cnewyllyn yn ei ddewis heb i becyn adael. Nid yw darparu marc yn yr ymholiad yn profi bod y mur cadw’n marcio traffig go iawn; mae hynny’n wiriad ar wahân o’r rheolau marcio. Cadarnhewch y gwerth gyda chowntiwr neu gofnod cyn tynnu casgliadau o’r ymholiad.

Mae angen eu cyd-destun eu hunain ar geisiadau a gynhyrchir yn lleol, oherwydd mae eu llwybr marcio yn aml yn wahanol i lwybr traffig a anfonir ymlaen. Gwiriwch hwy gyda’r rhyngwyneb allbwn y byddai’r rhaglen yn ei ddefnyddio mewn gwirionedd.

Dau gyflwr methiant, nid un

Un cyflwr methiant yw diflaniad llwybr y VPN a’r traffig yn disgyn i’r uplink. Mae twnnel marw y mae ei lwybr yn parhau i fod wedi’i osod yn un arall: mae pecynnau’n parhau i gael eu cyfeirio i lwybr anfuddiol yn hytrach na disgyn, a’r symptom yw colled dawel yn hytrach na chysylltiad uniongyrchol gweladwy. Profwch y ddau, a phrofwch ymddygiad cychwyn, ailgysylltu ac atal gwasanaeth hefyd.

Mae rheol o’r fath ond yn helpu tra bo’n bodoli a thra bo pecynnau’n dal i gario’r marc sy’n ei dewis. Mae sgript cau i lawr sy’n dileu’r rheol, neu lwybr sy’n tynnu’r marc, yn adfer yr ymddygiad agored. Mae’r trawsnewidiadau hynny’n werth eu hymarfer.

Cymhwyswch y polisi i IPv6 ar wahân, a chadwch eithriadau penbwynt a gymeradwywyd yn eglur yn hytrach nag yn oblygedig.

Erthyglau cysylltiedig