Brannmurregler godtar en første og en siste adresse, som 192.168.0.200 til 192.168.0.255, mens ruter ikke gjør det. En ruteoppføring har bare plass til et nettverk og en maske, noe som betyr at et sammenhengende område må bli ett eller flere justerte prefikser før OpenVPN installerer det. En profil som parer route-nopull med et ikke-justert intervall, er der feilen vanligvis skjuler seg, fordi filen parses og ingen rute passer. Få blokkene riktig, og feilen blir synlig i én kommando.

Myten: et område er en rute

Rutingtabeller lagrer nettverk- og maskepar og velger det lengste treffet, så et intervall med en start og en slutt har ingen steder å bo. Ett prefiks som spenner over 256 adresser dekker .0 til .255, halvparten av den størrelsen dekker .0 til .127, og bare et område justert mot disse kantene passer i ett trinn. Alt annet må skjæres i blokker. En mindre rute betyr fortsatt det opprinnelige intervallet.

Et område som ikke er prefiksjustert, er ikke en komprimert rute. Det er en annen type objekt, og å behandle det som en rute er der den stille feilen starter.

Justering er aritmetikk, ikke stil

Blokkstørrelser er fastsatt av prefikslengden. Et /29 kan bare begynne på en adresse som er delelig med 8, et /28 på en som er delelig med 16, et /27 på en som er delelig med 32. Flytt en blokk bort fra grensen, og masken dekker et annet sett adresser enn du mente.

Summer fra den lave enden. Ta ved hvert trinn den største justerte blokken som ikke passerer slutten av området, og fortsett deretter på den første adressen etter den. Blokkene kan ikke overlappe, fordi hver begynner der den forrige stoppet.

To personer som gjør dette for hånd, bør nå samme resultat. En uenighet betyr at noen tillot en start som ikke var justert.

Gå gjennom 200 til 255

StepStartBlock that fitsLine for the profile
1.200, multiple of 8/29, 8 addresses192.168.0.200 255.255.255.248
2.208, multiple of 16/28, 16 addresses192.168.0.208 255.255.255.240
3.224, multiple of 32/27, 32 addresses192.168.0.224 255.255.255.224

Området begynner på .200, som er et multiplum av 8, så den første blokken er et /29 fra .200 til .207. Etter disse åtte adressene er den første ledige verdien .208, som går opp i 16, så et /28 tar .208 til .223. Det som er igjen, er .224 til .255, trettito adresser som starter på et multiplum av 32, altså et /27. De tre radene er hele oppdelingen.

Skriv dem som rutelinjer i stedet for som prosa. En profil som bare har den første linjen, dekker åtte adresser og lar resten ligge utenfor tunnelen.

route-nopull
route 192.168.0.200 255.255.255.248
route 192.168.0.208 255.255.255.240
route 192.168.0.224 255.255.255.224

Den siste blokken trenger en grensekontroll. Inne i 192.168.0.224/27 er .224 nettverksadressen, og .255 er kringkastingsadressen, så en vert som må svare på .255, er dekket av prefikset og fortsatt utilgjengelig. Flytt den verten, eller del området annerledes i stedet for å route blokken og håpe.

Hva route-nopull gjør med bildet

Legg bare til route-nopull når rutene serveren dytter, er uønsket. Uten direktivet finnes dyttede ruter og disse linjene side om side, og det mest spesifikke prefikset vinner. Med det forsvinner også dyttede DNS- og DHCP-valg, så intern navneoppslag trenger sin egen konfigurasjon. Den bivirkningen overrasker folk som la til direktivet for å rette et ruteproblem.

Legg det til av den riktige grunnen, ikke som en automatisk refleks. Å fjerne dyttede ruter er en politisk beslutning med en DNS-konsekvens. Hvis serveren kan dytte de samme tre prefiksene, la den gjøre det, og slett kopiene på klientsiden slik at én eier kontrollerer listen.

Kontroller som fanger de vanlige feilene

Kontroller at hver maske er én sammenhengende rekke av enere. Verdien 255.255.255.248 består, og 255.255.255.200 feiler, og en maske som ikke er sammenhengende, blir avvist eller lest feil. Bekreft deretter ruten for én adresse i hver blokk.

ip route get 192.168.0.205
ip route get 192.168.0.220
ip route get 192.168.0.240

Hvert svar bør navngi tunellgrensesnittet. Et resultat som navngir den fysiske adapteren, betyr at linjen aldri ble installert, noe som ofte skjer når en nettverksbehandler på skrivebordet skriver om tabellen etter at profilen har koblet til.

Velg én eier for listen. Når serveren kan dytte de samme prefiksene, dytt dem og fjern endringene på klientsiden. Én eier betyr at en skrivefeil har ett sted å bo, og klienten og serveren kan ikke være uenige om hvilke adresser som ligger inne i tunnelen.

Relaterte artikler