’n Bedienerlyn wat ’n CIDR-agtervoegsel met ’n kolpuntmasker meng, stop die daemon voordat dit ooit ’n poort oopmaak. Die bedienerhelper server vir IPv4 wil twee afsonderlike argumente hê: ’n belynede netwerkadres, en dan die netmasker in kolpuntvorm. Alles anders op daardie lyn is afleiding, en afleiding is waar poelgroottes en kliëntmaskers verkeerd loop.

Die twee argumente wat die helper aanvaar

Skryf eers die netwerk en dan die masker, met niks wat aan die adres vasgeheg is nie:

server 10.72.16.0 255.255.240.0

Dit is die vorm vir ’n /20. Die lyn hieronder is die fout, en dit misluk by opsie-ontleding eerder as tydens looptyd:

server 10.72.16.0/20 255.255.240.0

Hou die twee idees uitmekaar wanneer jy dit ontfout. ’n Voorvoegsellengte en ’n kolpuntmasker beskryf dieselfde span, maar die helper aanvaar nie albei gelyktydig nie, en ’n verwerpte lyn lewer ’n opsiefout wat die direktief noem eerder as die rekenkunde.

Belyn die netwerk voordat jy die masker tik

Die eerste adres is die netwerkadres van die reeks, nie ’n gerieflike kliëntadres daarbinne nie. Vir ’n /20 strek die span van 10.72.16.0 tot 10.72.31.255, en net die eerste daarvan is ’n geldige netwerkargument. ’n /21 gebruik 255.255.248.0 en strek van 10.72.16.0 tot 10.72.23.255, so die lyn daarvan is server 10.72.16.0 255.255.248.0.

Om die voorvoegsel te verander, verander die span en niks anders nie. Dit verander nie hoeveel adresse ’n enkele kliënt ontvang nie, want dit is ’n eienskap van die topologie, nie van die masker op hierdie lyn nie.

Bevestig die poel van die bedienerkant af

Begin die instansie in die voorgrond met breedvoerige logboekrekordering en lees die lyne wat die helper uitstuur. Die poel wat dit gebou het, word by die opstart gedruk, wat betroubaarder is as om die rekenkunde met die hand uit te werk:

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

Soek die poelopsomming naby die bokant van die uitset. Dit lys die reeks wat die helper gereserveer het, en as daardie reeks nie by jou bedoeling pas nie, is die argumente op die lyn verkeerd, ongeag wat die maskerrekenkunde sê.

Verbind dan een kliënt en vind die lyn wat die adres aanteken wat dit gekry het. Daardie enkele adres, langs die poelreeks, sê of die kliënt binne die gereserveerde blok beland het of êrens waar jy dit nie verwag het nie. As die twee nie ooreenstem nie, maak die argumente reg eerder as die kliënt. As hulle ooreenstem en die kliënt steeds niks kan bereik nie, was die poel nooit die probleem nie.

Lees die kliënt se masker met die topologie in gedagte

’n Kliënt wat ’n /30 op sy tonnelkoppelvlak wys, is nie bewys van ’n gebroke poel nie. Onder punt-tot-punt-adressering kry elke kliënt ’n klein blok en sy koppelvlakmasker beskryf daardie blok, terwyl die bediener se poel die geheel dek. Onder ’n subnet-topologie pas die kliënt se masker eerder by die poelmasker. Die masker alleen sê dus watter topologie aan die werk is, nie of die poel korrek geskryf is nie.

Kontroleer die opgestelde topologie en die toegewysde adres saam voordat jy ’n gevolgtrekking maak:

ip -4 addr show tun0

As die adres binne die poel is en die masker smaller as die poel is, doen die topologie sy werk. As die adres buite die poel is, is die poel verkeerd, en geen hoeveelheid kliëntkant-inspeksie sal dit regmaak nie.

’n Lewende poel verander

Kies ’n reeks wat nie die huidige poel, die LAN of enige roete wat reeds aan kliënte gestuur is oorvleuel nie. Oorvleueling is die fout wat ’n herbegin oorleef en dan dae later as een werf opduik wat uit een rigting onbereikbaar is.

Verander die lyn, herbegin en lees die opstartpoel weer voordat jy gebruikers teruglaat. As die nuwe reeks met iets bots, wys dieselfde opstartuitset dit dadelik, en terugrol is ’n wysiging van een lyn plus nog ’n herbegin.

Hou die ou reeks ’n ruk langer gereserveer ná die verandering. Kliënte wat laat weer verbind, kan steeds ’n adres uit die vorige poel hou, en ’n nuwe reeks wat daardie adresse hergebruik, lewer dubbele toekennings wat soos ’n roetefout lyk. Die OpenVPN 2.6-handleiding dokumenteer die helper se argumente en die uitbreiding daarvan, wat die moeite werd is om te lees voordat jy aanneem ’n direktief gebruik dieselfde notasie as sy buurman.

Verwante artikels