Du vel eit land, koplar til, og ein nettstad ønskjer deg velkomen i eit anna. Merkinga i lista har aldri lova noko om adressa du ville gå ut frå: det er eit felt nokon har publisert, leidd ut med ein metode du ikkje har sett. Å handsame det feltet som ei adresse er der forvirringa byrjar.

Tre separate ting ber ein landverdi, og dei kan vera usamde utan at nokon lyg. Å skilje dei gjer avviket diagnostiserbart i staden for mystisk.

Tre ulike ting ber ei landmerking

Den første er feltet til sjølve katalogen, som kan vera sjølvrapportert av operatøren, leidd ut frå ein adressedatabase eller rett og slett kopiert då oppføringa vart laga. Den andre er sjølve adressa, som høyrer til nettverket som annonserer henne, og det er dette eit geolokasjonsoppslag svarar på ved å bruke publiserte kartdata i den forma som er skildra i RFC 8805. Den tredje er det ein applikasjon vel å vise, som kan koma frå ein annan database, ei kontoinnstilling eller ei løyve du gav på eininga. Berre den andre er eit nettverksfaktum, og sjølv det er eit oppslag snarare enn ei observasjon.

Samanheng mellom dei tre ville vera hyggeleg og er ikkje kravd nokon stad. Eit avvik er prov på at dei vart leidde ut ulikt, ikkje noko meir.

Sjekk adressa, ikkje flagget

Det nyttige spørsmålet er kva offentleg adresse trafikken din faktisk forlèt. Det kan svarast på frå klienten, og det er ikkje avhengig av noko listefelt. Samanlikn svaret med prefikset du venta og med det eit geolokasjonsoppslag seier om det, og hald dei to resultata åtskilde i notatane dine. Eit gap mellom det venta landet og oppslaget er eit ruting- eller databasespørsmål, medan eit gap mellom oppslaget og meininga til applikasjonen igjen er eit databasespørsmål.

Gjer sjekken to gonger om tenesta har fleire utgangar i regionen. Ein adressepool kan dela ut ulike adresser ved påfølgjande tilkoplingar, og éin prøve skildrar berre éin av dei.

Nærleik på eit kart er ikkje nærleik på nettverket

Eit nærliggjande land kan vera ein lengre veg enn eit fjernt, fordi fiberruta ikkje følgjer grensa. Å velje ein node etter latens tyder å måle destinasjonen du bryr deg om i staden for å velje det næraste flagget. Same logikk gjeld for kapasitet, sidan ein lett lasta utgang to land unna kan slå ein metta nabo. Mål først, avgjer etterpå, og noter timen fordi begge tala flyttar seg.

Plassering seier heller ingenting om lagring eller om kven som driv endepunktet. Det treng sine eigne prov, som ein landkolonne ikkje kan romme.

Stadfest utgangsadressa sjølv

Spør klienten og ein ekstern teneste korleis adressa di ser ut, og spør deretter den lokale rutetabellen korleis den ruta vart vald. Kommandoane nedanfor gjer alle tre, og den tredje er den folk hoppar over. Byt ut grensesnittnamnet med di eiga tunneleining.

curl -sS https://api.ipify.org; echo
curl -sS --interface tun0 https://api.ipify.org; echo
ip route get 1.1.1.1
ip -6 addr show dev tun0

Dei to første linjene bør stemme, og når dei ikkje gjer det, er ruta du trur du har ikkje ruta som ber trafikken din. Ruteoppslaget namngjev grensesnittet og kjeldeadressa kjernen ville bruke for ein destinasjon, og det er mekanismen bak utgangsadressa. IPv6-linja betyr noko fordi ein maskin kan halde ein tunnel for éin familie og ein direkte veg for den andre. Ei landmerking dekkjer ingen av desse tilfella av seg sjølv.

Skriv den observerte adressa, meininga til databasen og visinga til applikasjonen som tre separate notat. Då vert det neste avviket du møter lett å tilskrive.

Relaterte artiklar