169.254 gjennom en VPN: adressen var aldri rutbar
En link-local-destinasjon forkastes før den når tunnelen, så nye ruter gjør bare feilen større. Velg mellom å reparere subnettet og å sette opp en bro.
Du legger inn ruten, tunnelen reiser seg, og likevel dør ping mot den andre siden med fullstendig tap istedenfor «network unreachable». Forskjellen er viktig, fordi den flytter blikket fra rutetabellen til selve adressen. En 169.254-destinasjon er link-local, og rekkevidden tar slutt ved første hopp etter design.
Det neste valget er snevert og bør tas bevisst: reparer subnettet på serveren, eller utvid lag 2-segmentet slik at adressen blir meningsfull lokalt igjen. Alt annet, også en større rute, gjør bare at den samme feilen rammer flere mål.
Adressen mangler ikke rute, den kan ikke rutes
IPv4 link-local-adresser gir seg selv når ingenting bedre svarer; det er opprinnelsen til den automatiske private adresseringen i Windows og tilsvarende i andre systemer. Området er i bruk på hver lenke samtidig, og det er nettopp derfor det fungerer: to verter i samme segment kan snakke sammen uten noen form for koordinering.
Den samme egenskapen gjør at en ruter ikke kan videresende disse pakkene mellom nettverk. Å motta en pakke adressert til en link-local-destinasjon og sende den ut et annet grensesnitt ville skape uklarhet, siden avsenderens «lokale» og mottakerens «lokale» er ulike steder. Det finnes ingen oppslagstabell som avgjør hvilken av dem avsenderen siktet til. Videresending er her ikke et policyvalg en administrator kan skru på; adresseklassen utelukker det.
Derfor ber en gateway som fører opp 169.254.1.10 som tilgjengelig via tunnelen, kjernen om noe adresseformatet forbyr. Pakken forkastes lenge før den når den fjerne verten, og ingen presisering av ruten endrer det.
Hvorfor en tunnel avdekker rekkeviddeproblemet
Et TUN-grensesnitt frakter IP-pakker mellom to parter uten noe delt segment bak seg. Det finnes ingen kringkasting, ingen ARP mot den andre siden og ingen nabo-oppdagelse som kan oversette en link-local-destinasjon til en lenkelagsadresse.
Symptomene passer når du vet hva du leter etter. Ruten står i tabellen, ping melder totalt tap istedenfor et utilgjengelig nett, og nabotabellen viser en ufullstendig eller mislykket oppføring. Et opptak på tunnelen viser pakken forlate maskinen, og det får folk til å se på den fjerne enden istedenfor adresseklassen.
I Windows finnes et andre symptom som virker urelatert, men har samme rot: en adapter som bare har en link-local-adresse, mangler brukbar gateway, så nettverksidentifiseringen kan ikke klassifisere forbindelsen og brannmurprofilen faller til offentlig. Tunnelen er ikke årsaken; adressen er.
Avgjør med tre spørsmål
Valget mellom å reparere subnettet og å bro lenken avhenger av tre forhold, og hvert av dem kan avgjøre saken før du åpner en konfigurasjonsfil.
| Question | If yes | If no |
|---|---|---|
| Can the far-side host be given a routable address? | Change the host or fix DHCP and route normally | Continue to the next question |
| Does the device accept a static address at all? | Assign one from the site's real prefix | Bridging is the only remaining option |
| Can you accept broadcast crossing the tunnel? | A bridge is viable for a small segment | Replace the device or accept no remote access |
De fleste tilfeller stopper på det første spørsmålet. En vert med link-local-adresse betyr vanligvis at DHCP ikke svarte, at kabelen eller VLAN-et er feil, eller at noen skrev inn adressen manuelt. Å reparere det er billigere enn noe tunnelarbeid, og det fjerner problemet for alle kommende klienter, ikke bare denne.
Sjekk serversiden før du antar noe. Kjør ip addr show og ip route på verten, og arp -n eller route print -4 på klienten, så du ser om prefikset finnes eller om bare en gammel oppføring påstår det.
Hva en bro koster når den er riktig svar
Å bro en fysisk adapter sammen med en TAP-adapter gjør den fjerne klienten til en del av det lokale kringkastingsdomenet. Da fungerer kringkasting og nabo-oppdagelse, og en link-local-adresse blir meningsfull igjen fordi klienten faktisk er lokal på den lenken.
Kostnadene er reelle og bør nevnes før noen sier ja. Kringkastingstrafikk går gjennom tunnelen, klienten eksponeres for det lokale segmentet til alle formål og ikke bare tjenestene den trenger, og serveren må nå videresende rammer istedenfor å rute pakker. Det er en rimelig avveining for en laboratoriebenk eller en enhet uten rutbar konfigurasjonsvei, og et dårlig standardvalg for fjernakses.
Når du bror, trengs begge halvdeler: broen på serveren og en rute i klientprofilen som forteller hvilke destinasjoner som ligger på den andre siden. En bro alene lar klienten gjette, og en rute alene kan ikke reparere en adresseklasse.