Jy maak die roetetabel oop nadat jy ingeskakel het en sien een adres wat deur die tonnel gestuur word, terwyl die subnet rondom dit steeds na die plaaslike poort toe gaan. Daardie inskrywing is ’n gasheerroete: een adres, gepas deur ’n voorvoegsel van alles ene. Dit maak saak omdat roetebesluite die langste ooreenstemmende voorvoegsel gebruik, so ’n /32 kan ’n /24 of ’n verstekroete oorheers sonder om enige van hulle te verander. Of dit ’n versigtige uitsondering of ’n toekomstige onderbreking is, hang af van watter adres dit noem en wie dit onderhou.

Een adres, een inskrywing in die tabel

’n IPv4-gasheerroete dra ’n /32-voorvoegsel en ’n IPv6-gasheerroete dra /128, wat beteken die inskrywing kan presies een bestemmingsadres pas. Niks anders in die tabel beweeg nie: die bedekkende subnet en die verstekroete bly waar hulle was. Die smal inskrywing wen vir daardie adres omdat sy voorvoegsel langer is, nie omdat dit later bygevoeg is nie.

Daardie eienskap maak van ’n gasheerroete ’n goeie uitsondering en ’n slegte gewoonte. Twee /32-inskrywings wat ’n diens se voordeur noem, dek nie sy tweede adres, sy IPv6-adres of die adres waarnatoe dit volgende maand verskuif nie. ’n Tabel vol onverklaarde enkeladres-inskrywings beteken gewoonlik dat iemand aanhou pleister het om ’n subnetbesluit in plaas daarvan om een te neem. Lees eers die voorvoegsellengte en vra dan wat die inskrywing veronderstel is om te beskerm.

Lees die inskrywing van die kliënt uitwaarts

Begin by die masjien met die probleem, want dieselfde adres kan anders gerouteer word op ’n skootrekenaar en op die poort voor hom. Vra die kernel watter pad dit sou kies vir die presiese adres wat die toepassing gebruik, in plaas daarvan om die tabel van bo af te lees. Die antwoord sluit die koppelvlak en die volgende sprong, wat saam die besluit is.

ip route get 203.0.113.25
ip -6 route get 2001:db8:4::25
ip route show | grep -F 203.0.113.25
Find-NetRoute -RemoteIPAddress 203.0.113.25

Herhaal die navraag vir die adresfamilie wat die toepassing werklik kies, want ’n kliënt kan IPv6 verkies en ’n IPv4-uitsondering stilweg omseil. Vergelyk die resultaat voor en nadat die tonnel opkom, en hou albei uitsette. Daardie vergelyking wys of die kliënt die inskrywing by verbindingstyd bygevoeg het, en of dit al daar was.

’n Volgehoue inskrywing en ’n looptyd-inskrywing faal anders. Die looptyd-een verdwyn saam met die sessie, terwyl die volgehoue een ’n herbegin oorleef en aanhou verkeer stuur na ’n poort wat nie meer bestaan nie.

Die eindpunt-uitsondering en die rekursiestrik

VPN-kliënte installeer gewoonlik ’n gasheerroete na die bediener se buitenste adres deur die oorspronklike poort voordat hulle die verstekroete herlei. Sonder daardie inskrywing sou die geënkripteerde pakkette in die tonnel gestuur word wat hulle probeer bou, en die verbinding sou loop tot dit uittyd.

Die strik verskyn wanneer die tonnel se aanvaarde subnette toevallig daardie eindpuntadres insluit, of wanneer ’n tweede profiel later ’n wyer roete byvoeg. Die eindpuntinskrywing verloor dan teen ’n langer voorvoegsel en die sessie val inmekaar sodra dit verkeer begin deurstuur. Om die eindpuntadres langs die aanvaarde subnette te skryf, is die goedkoopste manier om die botsing voor gebruikers raak te sien. Dit verduidelik ook waarom dieselfde profiel van een netwerk werk en van ’n ander faal.

Verifieer die pad wat die toepassing werklik gebruik

’n Suksesvolle ping na die gasheernaam is swak bewyse wanneer die toepassing aan ’n ander adres of ’n ander familie verbind. Verifieer die presiese kombinasie van adres, familie, poort en koppelvlak, vanaf die masjien wat die kliënt uitvoer.

ip route get 203.0.113.25
sudo nft list ruleset | grep -A 4 'chain output'
curl -sS --max-time 8 -o /dev/null -w '%{remote_ip}
' https://app.example.net

As die pad verkeerd is, besluit of die vereiste ’n netwerk of een adres is voordat jy enigiets wysig. ’n Enkeladres-vereiste regverdig ’n gasheerroete met ’n opmerking en ’n eienaar; ’n diens met roterende adresse het domeingebaseerde roetering of ’n eerlike subnetbesluit nodig.

Verwyder inskrywings wat nie meer na ’n werklike bestemming lei nie en merk diegene wat jy hou. ’n Onverklaarde /32 is oor drie maande nie van ’n fout te onderskei nie, en die volgende persoon sal dit verwyder sonder om te weet wat daarvan afhanklik was.

Verwante artikels