Ei serverlinje som blandar eit CIDR-suffiks med ei punktmaske stoppar daemonen før han i det heile opnar ein port. Hjelparen server for IPv4 vil ha to atskilde argument: ei justert nettverksadresse og deretter nettmaska i punktform. Alt anna på den linja er gjetting, og i gjettinga går puljestorleikar og klientmasker gale.

Dei to argumenta hjelparen godtek

Skriv nettverket først og maska deretter, utan noko fest til adressa:

server 10.72.16.0 255.255.240.0

Dette er forma for eit /20. Linja nedanfor er feilen, og ho feilar ved parsing av val, ikkje under køyring:

server 10.72.16.0/20 255.255.240.0

Hald dei to ideane atskilde når du feilsøkjer dette. Ei prefikslengd og ei punktmaske skildrar same området, men hjelparen godtek ikkje begge samtidig, og ei avvist linje gjev ein valfeil som namngjev direktivet og ikkje aritmetikken.

Juster nettverket før du skriv maska

Den første adressa er nettverksadressa til området, ikkje ei praktisk klientadresse inne i det. For eit /20 går området frå 10.72.16.0 til 10.72.31.255, og berre den første av dei er eit gyldig nettverksargument. Eit /21 brukar 255.255.248.0 og spenner frå 10.72.16.0 til 10.72.23.255, så linja er server 10.72.16.0 255.255.248.0.

Å endre prefikset endrar området og ingenting anna. Det endrar ikkje kor mange adresser éin klient får, fordi det er ein eigenskap ved topologien, ikkje ved maska på denne linja.

Stadfest puljen frå serversida

Start instansen i forgrunnen med detaljert logging og les linjene hjelparen sender ut. Puljen han bygde vert skriven ut ved oppstart, noko som er meir påliteleg enn å rekne aritmetikken for hand:

openvpn --config /etc/openvpn/server.conf --verb 4 --dev tun9 --port 1195

Sjå etter puljesamandraget nær toppen av utdataa. Det listar området hjelparen reserverte, og viss det området ikkje stemmer med hensikta di, er argumenta på linja feil, uansett kva maskearitmetikken seier.

Kopla deretter til éin klient og finn linja som registrerer adressa han fekk. Den eine adressa, ved sida av puljeområdet, fortel deg om klienten landa inne i den reserverte blokka eller ein stad du ikkje venta. Viss dei to ikkje stemmer, rett argumenta og ikkje klienten. Viss dei stemmer og klienten framleis ikkje når noko, var puljen aldri problemet.

Les maska til klienten med topologien i tankane

Ein klient som viser eit /30 på tunnelgrensesnittet sitt er ikkje prov på ein øydelagd pulje. Ved punkt-til-punkt-adressering får kvar klient ei lita blokk, og grensesnittmaska skildrar den blokka, medan puljen til serveren dekkjer heilskapen. Ved ein subnett-topologi samsvarer maska til klienten i staden med puljemaska. Maska åleine fortel derfor kva topologi som er i spel, ikkje om puljen er skriven rett.

Kontroller den konfigurerte topologien og den tildelte adressa saman før du dreg ein konklusjon:

ip -4 addr show tun0

Viss adressa er inne i puljen og maska er smalare enn puljen, er det topologien som gjer jobben sin. Viss adressa er utanfor puljen, er puljen feil, og ingen inspeksjon på klientsida vil rette det.

Endre ein aktiv pulje

Vel eit område som ikkje overlappar den gjeldande puljen, LAN-nettet eller noka rute som allereie er pusht til klientar. Overlapp er feilen som overlever ein omstart og deretter, dagar seinare, dukkar opp som éin stad som er utilgjengeleg frå éi retning.

Endre linja, start på nytt og les oppstartspuljen på nytt før du slepp brukarane inn igjen. Viss det nye området kolliderer med noko, viser same oppstartsutdata det med ein gong, og tilbakerulling er ei endring av éi linje pluss ein omstart til.

Hald det gamle området reservert ei stund etter endringa. Klientar som koplar til seint kan framleis halde ei adresse frå førre pulje, og eit nytt område som brukar desse adressene på nytt gjev doble tildelingar som ser ut som ein ruteringsfeil. OpenVPN 2.6-handboka dokumenterer argumenta til hjelparen og utvidinga, noko som er verdt å lese før du reknar med at eit direktiv brukar same notasjon som naboen.

Relaterte artiklar