In beliedsregel stjoert markearre pakketten nei in tawijde tabel, en de gewoane ferwachting is dat it ferliezen fan de VPN-rûte se blokkearret. It meganisme docht eat oars. As in tabel gjin bypassende rûte befettet, giet de syktocht troch nei de folgjende regel ynstee fan te stopjen, en de tabel main hâldt noch in gewoane standertrûte foar de uplink. It resultaat is in konfiguraasje dy’t der fail-closed útsjocht en him fail-open hâldt.

Der is neat stikken; sa is beliedsrouting spesifisearre.

De syktocht giet troch as in tabel neat hat

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

Nim dy regelset: in markearre syktocht giet nei tabel 42, en in lettere regel stjoert deselde markearring nei in tabel mei de namme default. Salang’t tabel 42 in brûkbere standertrûte hâldt, leveret de earste syktocht it paad. As dy rûte ferdwynt en neat oars yn tabel 42 oerienkomt, wurdt de syktocht gjin fuortsmyt; de ferwurking giet troch nei de folgjende regel, en as dy ek neat fynt, berikt it de tabel main. Neat yn dy searje rapportearret hokker regel it definitive antwurd joech, dat in wurkjende ferbining liket op in wurkjend belied.

Tabel 253, dy’t gewoanwei default hjit, is in gewoane routingtabel en is normaal leech. Syn namme is gjin opdracht om pakketten fuort te smiten, en it is net itselde as in standertbestimmingsrûte yn in tabel.

Terminale aksjes einigje de syktocht

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

In terminale regel kin op de VPN-syktocht folgje ynstee fan in syktocht yn in lege tabel. Mei deselde markearring einiget in prohibit-aksje dy’t nei de regel fan tabel 42 pleatst is, de syktocht as dy tabel neat leveret, en jout in bestjoerlike ôfwizing werom ynstee fan de tabel main noch in kâns te jaan. Unreachable en blackhole binne ek terminaal, mei oar flatergedrach foar de stjoerder.

In rûte fan it type throw is oars: binnen dy tabel hâldt it him as wie neat oerienkommend, dat lettere regels krije noch har beurt. Dat makket throw brûkber foar bewuste weromfal en ferkeard as in definitive blokkade.

Ferifiearje mei de echte markearring en ynterface

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

Undersykje de echte regels en tabel ynstee fan in diagram, en freegje dan de stream op mei de boarne-, markearrings- en yngongskontekst dy’t it echt hat. In allinnich-lêzen-syktocht rjochte op in bestimmingsplak, dêr’t de boarneadres, ynterface en markearring oan jûn wurde, rapportearret de rûte dy’t de kernel kieze soe sûnder dat in pakket fuortgiet. In markearring yn de fraach jaan bewiist net dat de firewall echte ferkear markearret; dat is in aparte kontrôle fan de markearringsregels. Befêstigje de wearde mei in teller of in log foardat jo konklúzjes út de fraach lûke.

Lokaal oanmakke oanfragen hawwe har eigen kontekst nedich, om’t harren markearringspaad faak ferskilt fan dat fan trochstjoerd ferkear. Kontrolearje se mei de útgongsynterface dy’t de applikaasje echt brûke soe.

Twa flatertastannen, net ien

Ien flatertastân is dat de VPN-rûte ferdwynt en it ferkear nei de uplink falt. In deade tunnel waans rûte ynstallearre bliuwt is in oare: pakketten bliuwe rjochte yn in ûnbrûkber paad ynstee fan te fallen, en it symptoom is stil ferlies ynstee fan in sichtbere direkte ferbining. Test beide, en test ek it gedrach by opstart, werferbining en tsjinststop.

Sa’n regel helpt allinnich salang’t er bestiet en salang’t pakketten noch de markearring drage dy’t him kiest. In ôfslútscript dat de regel fuortsmyt, of in paad dat de markearring strips, herstelt it iepen gedrach. Dy oergongen binne it wurdich om te oefenjen.

Pas it belied apart ta op IPv6, en hâld goedkarde útsûnderingen fan einpunten eksplisyt ynstee fan ymplisyt.

Relatearre artikelen