Dynaamiset asiakkaat yhdistyvät ja reititys toimii hyvin, mutta ainoa kiinteän osoitteen asiakas ei tavoita palvelinta lainkaan. Palomuurissa ei ole muuttunut mikään, ja CCD-rivi näyttää uskottavalta. Tavallinen syy on toinen argumentti, joka on kirjoitettu eri TUN-topologiaa varten kuin mitä palvelin ajaa. Vika on hiljainen: asiakas nousee osoitteella ja palvelin hyväksyy yhteyden, mutta liikenne ei kulje.

net30:ssä tuo kenttä on vertaisosoite; subnetissä se on aliverkon peite. Kaksi muotoa ovat vaihtoehtoja, eivät koskaan peräkkäisiä.

Kaksi muotoa rinnakkain

Perinteisessä net30-käyttöönotossa jokaisella asiakkaalla on /30-lohko: verkko-osoite, kaksi käytettävää osoitetta ja lähetysosoite. ifconfig-push ottaa asiakkaan osoitteen ja vertaisosoitteen, ja vertaisosoite on saman lohkon toinen käytettävä osoite, jota pistepisteyhteyden palvelinpuoli käyttää.

# net30: client address and its peer
ifconfig-push 10.99.0.6 10.99.0.5
# topology subnet: client address and the pool netmask
ifconfig-push 10.99.0.20 255.255.255.0

topology subnet-tilassa asiakas jakaa yhden aliverkon palvelimen kanssa, ja sama direktiivi ottaa osoitteen ja aliverkon peitteen. Palvelimen oma osoite tulee server-direktiivistä, ei toisesta kentästä. Muotojen sekoittaminen tuottaa asiakkaan, joka luulee olevansa pistepisteyhteydellä, kun palvelin reitittää sitä aliverkon isäntänä, tai päinvastoin. Siksi aliverkon peitettä ei saa koskaan yhdistää net30:een.

Molemmat lohkon rivit ovat yksittäisiä rivejä CCD-tiedostoa varten. Jokainen asiakas saa täsmälleen yhden niistä.

Lue topologia, jota palvelin todella ajaa

Lue käynnissä oleva kokoonpano paketin oletuksen sijaan, koska topologia on voitu asettaa vuosia sitten ja kopioida eteenpäin. Etsi topology subnet tai sen puuttuminen ja tarkista sitten, miten server-rivi jakaa osoitteita. Kokoonpano, joka ei mainitse topologiaa koskaan, ei ole sama kuin sellainen, joka asettaa subnetin.

Lue sitten asetukset, jotka asiakas on vastaanottanut. Sen ilmoittamat osoite, peite ja vertaisosoite kertovat, minkä tulkinnan palvelin on käyttänyt.

Pidä kiinteä osoite dynaamisen poolin ulkopuolella

Kiinteän osoitteen on oltava dynaamisen poolin ulkopuolella, muuten kaksi asiakasta voi saada saman osoitteen. Subnet-topologiassa nopool server-rivillä poistaa automaattisen poolin käytöstä, ja eksplisiittinen ifconfig-pool-alue määrittää, mitä dynaamiset asiakkaat saavat.

dev tun
topology subnet
server 10.99.0.0 255.255.255.0 nopool
ifconfig-pool 10.99.0.100 10.99.0.210 255.255.255.0
client-config-dir /etc/openvpn/ccd

Palvelin ottaa 10.99.0.1 itselleen, ja kiinteä asiakasosoite on poolin alueen ulkopuolella. CCD-tiedosto nimetään asiakkaan tehollisen identiteetin mukaan, ei profiilitiedoston nimen mukaan, eikä sillä ole ylimääräistä tunnistetta. Jos username-as-common-name on aktiivinen, todennettu käyttäjänimi on identiteetti, jota vasten sovitetaan. Kaksi laitetta, jotka jakavat yhden identiteetin, jakavat myös kiinteän osoitteen, mikä on käytäntöongelma eikä reititysongelma.

Vahvista määritys, jonka asiakas todella sai

Yhdistä aiottu asiakas uudelleen ja vahvista, mikä CCD-tiedosto valittiin, ennen kuin tarkistat mitään muuta. Tarkista sitten osoite, peite tai vertaisosoite ja reitti takaisin palvelimelle. Asiakas, joka näyttää vertaisosoitteen subnet-käyttöönotossa, käyttää edelleen väärää muotoa.

Topologian muuttaminen vaikuttaa jokaiseen asiakkaaseen ja jokaiseen ohitukseen, joten käsittele sitä siirtymänä, älä yhden asiakkaan korjauksena. Staattisen rivin korjaaminen jo käytössä olevaa topologiaa vastaavaksi on yleensä pienempi muutos. server-options-viite dokumentoi apurin ja asiakaskohtaiset ohitukset.

Aiheeseen liittyvät artikkelit