Vrstica strežnika, ki meša pripono CIDR s pikčasto masko, ustavi demona, preden sploh odpre vrata. Pomočnik server za IPv4 želi dva ločena argumenta: poravnan naslov omrežja in nato masko omrežja v pikčasti obliki. Vse drugo v tej vrstici je sklepanje, in prav pri sklepanju se zalomijo velikosti sklada in maske odjemalcev.

Dva argumenta, ki jih pomočnik sprejme

Najprej napišite omrežje in nato masko, brez česar koli pripetega na naslov:

server 10.72.16.0 255.255.240.0

To je oblika za /20. Vrstica spodaj je napaka in ne uspe pri razčlenjevanju možnosti, ne med izvajanjem:

server 10.72.16.0/20 255.255.240.0

Pri odpravljanju težav imejte obe zamisli ločeni. Dolžina predpone in pikčasta maska opisujeta isti obseg, vendar pomočnik ne sprejme obojega hkrati, zavrnjena vrstica pa ustvari napako možnosti, ki poimenuje direktivo, ne aritmetike.

Poravnajte omrežje, preden vnesete masko

Prvi naslov je omrežni naslov obsega, ne priročen naslov odjemalca znotraj njega. Za /20 obseg poteka od 10.72.16.0 do 10.72.31.255, in samo prvi od njih je veljaven omrežni argument. /21 uporablja 255.255.248.0 in pokriva od 10.72.16.0 do 10.72.23.255, zato je njegova vrstica server 10.72.16.0 255.255.248.0.

Sprememba predpone spremeni obseg in ničesar drugega. Ne spremeni, koliko naslovov prejme en odjemalec, ker je to lastnost topologije, ne maske v tej vrstici.

Potrdite sklad s strani strežnika

Zaženite primerek v ospredju s podrobnim beleženjem in berite vrstice, ki jih izpiše pomočnik. Sklad, ki ga je zgradil, se izpiše ob zagonu, kar je zanesljivejše od ročnega računanja aritmetike:

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

Poiščite povzetek sklada blizu vrha izhoda. Navaja obseg, ki ga je pomočnik rezerviral, in če se ta obseg ne ujema z vašim namenom, so argumenti v vrstici napačni, ne glede na to, kaj pravi aritmetika maske.

Nato povežite enega odjemalca in poiščite vrstico, ki zabeleži naslov, ki ga je prejel. Tisti en naslov, ob obsegu sklada, vam pove, ali je odjemalec pristal znotraj rezerviranega bloka ali kje, kjer tega niste pričakovali. Če se oba ne ujemata, popravite argumente, ne odjemalca. Če se ujemata in odjemalec še vedno ne doseže ničesar, sklad nikoli ni bil težava.

Berite masko odjemalca ob upoštevanju topologije

Odjemalec, ki na svojem tunelskem vmesniku prikazuje /30, ni dokaz pokvarjenega sklada. Pri naslavljanju točka-točka vsak odjemalec dobi majhen blok in njegova maska vmesnika opisuje ta blok, medtem ko sklad strežnika pokriva celoto. Pri topologiji podomrežja se maska odjemalca namesto tega ujema z masko sklada. Sama maska torej pove, katera topologija je v igri, ne pa, ali je sklad pravilno napisan.

Preden sklepate, skupaj preverite nastavljeno topologijo in dodeljeni naslov:

ip -4 addr show tun0

Če je naslov znotraj sklada in je maska ožja od sklada, opravlja topologija svoje delo. Če je naslov zunaj sklada, je sklad napačen in noben pregled na strani odjemalca tega ne bo popravil.

Spreminjanje delujočega sklada

Izberite obseg, ki se ne prekriva s trenutnim skladom, omrežjem LAN ali katero koli potjo, ki je že bila potisnjena odjemalcem. Prekrivanje je okvara, ki preživi ponovni zagon in se nato čez nekaj dni pokaže kot eno mesto, nedosegljivo iz ene smeri.

Spremenite vrstico, znova zaženite in znova preberite zagonski sklad, preden spustite uporabnike nazaj. Če se novi obseg s čim zaleti, isti zagonski izhod to takoj pokaže, razveljavitev pa je urejanje ene vrstice plus še en ponovni zagon.

Po spremembi še nekaj časa ohranite stari obseg rezerviran. Odjemalci, ki se povežejo pozno, lahko še vedno držijo naslov iz prejšnjega sklada, nov obseg, ki te naslove znova uporabi, pa ustvari podvojene dodelitve, ki izgledajo kot okvara usmerjanja. Priročnik OpenVPN 2.6 dokumentira argumente pomočnika in njegovo razširitev, kar je vredno prebrati, preden domnevate, da direktiva uporablja enak zapis kot njena soseda.

Sorodni članki