Du koplar til tunnelen, køyrer ip route, og den opphavlege standardgatewayen står der framleis. Den neste tanken er at klienten ikkje har teke over ruta, så du slettar standardruta manuelt og mistar sambandet heilt. Den oppføringa skal bli ståande. Med redirect-gateway def1 installerer OpenVPN to meir spesifikke ruter som går framom den vanlege standardruta i staden for å erstatta ho. Den gamle gatewayen blir ståande og sluttar å bera trafikken du testa.

Kva def1 faktisk gjer

Flagget legg til 0.0.0.0/1 og 128.0.0.0/1, begge peikande mot tunnelen. 0.0.0.0/1 dekkjer kvar adresse der første oktett er 0 til 127, og 128.0.0.0/1 dekkjer 128 til 255, så kvar IPv4-destinasjon har ein meir spesifikk match enn den gamle standardruta. Det er lengda på prefikset, ikkje metrikken, som avgjer kva rute som vinn.

Å la den opphavlege standardruta bli ståande er medvite. Klienten treng ikkje hugsa kva han erstatta, og han skriv ikkje om ruta som ber hans eigen samband til VPN-tenaren. Ved fråkopling fjernar han dei to halve rutene, og tabellen går tilbake til slik han var.

Kvifor /1 og ikkje /0

Ruting vel det lengste samsvarande prefikset, ikkje den lågaste metrikken, så ein /1 slår ein /0 uansett kva metrikken til standardruta seier. Begge halvdelane finst fordi ein /1 berre dekkjer halve rommet; med berre 0.0.0.0/1 til stades følgjer alt frå 128.0.0.0 og oppover framleis den gamle standardruta, noko som gjev det forvirrande symptomet der nokre nettstader verkar og andre ikkje.

Å heva eller senka metrikken til den gamle standardruta endrar ingenting, og ei standardrute med lågare metrikk på eit anna grensesnitt stel heller ikkje trafikken. Først avgjer lengda på prefikset, og berre like prefiks fell tilbake på metrikken.

Les ein ekte rutetabell

Ein tilkopla vert kan visa alle tre oppføringane samstundes, med tunnelen som ber halvdelane og den opphavlege gatewayen framleis på lista. Adressene er døme og ikkje ein konfigurasjon å kopiera, fordi grensesnittnamn, tunneltopologi og ekstra ruter varierer etter plattform og klient.

default via 192.168.50.1 dev wlan0
0.0.0.0/1 via 10.8.0.1 dev tun0
128.0.0.0/1 via 10.8.0.1 dev tun0

Det viktige er tilhøvet: to bestemte halvdelar over éi generell standardrute. Lina med den gamle gatewayen blir ståande fordi ingenting erstatta ho.

Sjekk kva rute pakken faktisk tek

Meir spesifikke ruter kan framleis vinna: ei rute for eit privat område, eit lokalt subnett eller den eigne adressa til VPN-tenaren er lengre enn ein /1. Tunnelen treng ein ytre veg til tenaren sin, og å senda den sambandet tilbake i tunnelen ville bryta han med ein gong. På Linux spør kjernen i staden for å lesa tabellen med auget: ip route get med destinasjonen du er interessert i skriv ut den valde ruta, grensesnittet og kjelda. Er policy-ruting konfigurert, undersøk også reglane, fordi ein regel kan velja ein annan tabell før hovudtabellen blir konsultert.

Viss berre ein del av IPv4 oppfører seg feil, stadfest at begge halvdelane er installerte, og sjå deretter etter eit unntak som passar med destinasjonen som feilar. Å sletta den gamle standardruta er ikkje ei løysing, og det fjernar ruta klienten treng for å riva tunnelen reint ned.

Kva def1 ikkje dekkjer

To IPv4-oppføringar seier ingenting om IPv6: ein vert med IPv6-tilkopling held fram med å bruka si eiga standardrute til noko omdirigerer den familien separat, og difor ser noko trafikk ut til å omgå tunnelen på eit dual-stack-nettverk. Andre klientar og nettverksadministratorar implementerer full-tunnel-ruting annleis, og tabellane deira vil ikkje stemma. def1-åtferda som er skildra her, høyrer til det dokumenterte flagget til OpenVPN, ikkje kvar VPN på maskina.

Ein kill switch svarar på eit anna spørsmål: kva maskina gjer når tunnelen fell. Ruteprioritet avgjer kvar trafikken går medan tunnelen er oppe; det avgjer ikkje kva ein brannmur gjer etterpå. Arbeidsrekkjefølgje: les tabellen, stadfest at begge halvdelane finst, køyr ip route get for destinasjonen som feilar, sjekk policyreglane, og sjå deretter på IPv6 separat. Lat den gamle standardruta bli ståande der ho er.

Relaterte artiklar