OpenVPN-i serveri abimees: võrk pluss võrgumask, mitte kunagi CIDR
IPv4 serveri abimees võtab joondatud võrgu ja punktmaski, mitte CIDR-i järelliite. Kontrolli ulatust, kinnita logis kogum ja seejärel muuda suurust ohutult.
Serveririda, mis segab CIDR-i järelliite punktmaskiga, peatab deemoni juba enne, kui see ühegi pordi avab. IPv4 serveri abimees server tahab kahte eraldi argumenti: joondatud võrguadressi ja seejärel võrgumaski punktkujul. Kõik muu sellel real on oletus, ja oletuses lähevadki kogumi suurused ning kliendi maskid valesti.
Kaks argumenti, mida abimees aktsepteerib
Kirjuta esmalt võrk ja seejärel mask, ilma et midagi oleks aadressi külge pandud:
server 10.72.16.0 255.255.240.0See on /20 vorm. Allpool olev rida on viga ja see ebaõnnestub valikute parsimisel, mitte käitamise ajal:
server 10.72.16.0/20 255.255.240.0Hoia kaks mõtet selle silumisel lahus. Prefiksi pikkus ja punktmask kirjeldavad sama ulatust, kuid abimees ei aktsepteeri mõlemat korraga, ja tagasilükatud rida tekitab valikute vea, mis nimetab direktiivi, mitte aritmeetikat.
Joonda võrk enne maski sisestamist
Esimene aadress on vahemiku võrguadress, mitte mugav kliendi aadress selle sees. /20 puhul kulgeb ulatus 10.72.16.0 kuni 10.72.31.255, ja ainult esimene neist on kehtiv võrguargument. /21 kasutab 255.255.248.0 ja hõlmab 10.72.16.0 kuni 10.72.23.255, seega on selle rida server 10.72.16.0 255.255.248.0.
Prefiksi muutmine muudab ulatust ja mitte midagi muud. See ei muuda, kui palju aadresse üks klient saab, sest see on topoloogia omadus, mitte sellel real oleva maski oma.
Kinnita kogum serveri poolelt
Käivita eksemplar esiplaanil üksikasjaliku logimisega ja loe ridu, mida abimees väljastab. Kogum, mille see ehitas, trükitakse käivitamisel, mis on usaldusväärsem kui aritmeetika käsitsi arvutamine:
openvpn --config /etc/openvpn/server.conf --verb 4 --dev tun9 --port 1195Otsi kogumi kokkuvõtet väljundi ülaosas. See loetleb vahemiku, mille abimees reserveeris, ja kui see vahemik ei vasta sinu kavatsusele, on real olevad argumendid valed, ükskõik mida maski aritmeetika ütleb.
Seejärel ühenda üks klient ja leia rida, mis registreerib talle antud aadressi. See üks aadress kogumi vahemiku kõrval ütleb, kas klient maandus reserveeritud plokis või kusagil, mida sa ei oodanud. Kui need kaks ei klapi, paranda argumente, mitte klienti. Kui need klapivad ja klient ei jõua ikkagi kuhugi, ei olnud kogum kunagi probleem.
Loe kliendi maski topoloogiat silmas pidades
Klient, mis näitab tunneliliidesel /30, ei ole tõestus katkisest kogumist. Punkt-punkt-aadressimisel saab iga klient väikese ploki ja selle liidese mask kirjeldab seda plokki, samal ajal kui serveri kogum katab terviku. Alumise võrgu topoloogias kattub kliendi mask hoopis kogumi maskiga. Seega ütleb mask üksi, milline topoloogia mängus on, mitte kas kogum on õigesti kirjutatud.
Kontrolli seadistatud topoloogiat ja määratud aadressi koos enne järelduse tegemist:
ip -4 addr show tun0Kui aadress on kogumi sees ja mask on kogumist kitsam, teeb topoloogia oma tööd. Kui aadress on väljaspool kogumit, on kogum vale, ja ükski kliendipoolne kontroll ei paranda seda.
Töötava kogumi muutmine
Vali vahemik, mis ei kattu praeguse kogumi, LAN-i ega ühegi kliendile juba saadetud marsruudiga. Kattumine on tõrge, mis elab üle taaskäivituse ja ilmub päevi hiljem ühe saidina, mis on ühest suunast kättesaamatu.
Muuda rida, taaskäivita ja loe käivituskogum uuesti enne, kui lased kasutajad tagasi. Kui uus vahemik põrkub millegagi, näitab sama käivitusväljund seda kohe, ja tagasipööramine on ühe rea muudatus pluss veel üks taaskäivitus.
Hoia vana vahemikku mõnda aega pärast muudatust reserveerituna. Hilja ühenduvad kliendid võivad endiselt hoida eelmise kogumi aadressi, ja uus vahemik, mis neid aadresse uuesti kasutab, tekitab topeltmääranguid, mis näevad välja nagu marsruutimise rike. OpenVPN 2.6 käsiraamat dokumenteerib abimehe argumendid ja selle laienduse, mida tasub lugeda enne, kui eeldad, et direktiiv kasutab sama tähistust nagu tema naaber.