Hvers vegna er undirnetið bak við OpenVPN-biðlara óaðgengilegt?
OpenVPN getur ekki gengið út frá því hvaða biðlari á fjarlægt LAN. iroute-færsla í skrá biðlarans, endurkoma leið og framsending gera það undirnet aðgengilegt.
Ping á tunnelfang netþjónsins heppnast, eigin leiðatafla biðlarans virðist rétt, og LAN-ið bak við þann biðlara er enn óaðgengilegt. Leiðatafla biðlarans virðist rétt, netþjónninn hefur leið sem bendir að tunnlinum, og pakkarnir hverfa samt. Þetta er klassískt einkenni layer-3-tunnils sem veit ekki að einn biðlara hans er líka hlið.
tun-viðmót hefur enga næstu hopp fyrir hvern biðlara. Kjarninn sér eitt viðmót með mörgum jafningjum, svo ákvörðunin um hvaða biðlari eigi að fá pakka fyrir fjarlægt LAN verður að vera tekin inni í OpenVPN-ferlinu. Þessi ákvörðun er stillt með iroute, og án hennar hefur pakkinn hvergi að fara.
Netþjónninn beinir leiðum eftir biðlara, ekki eftir viðmóti
Þegar netþjónninn þarf að senda pakka á tunnelfang biðlarans er svarið ótvírætt: fangið tilheyrir lotu þess biðlara. Þegar áfangastaðurinn er heilt undirnet bak við þann biðlara tilheyrir fangið engum sem netþjónninn þekkir, og leið kjarnans að tunnlinum segir aðeins "út um þetta viðmót", án að nefna hvaða jafningi.
OpenVPN leysir þetta með innri leiðatöflu sem varpar áfangaforskeyti á tiltekinn biðlara. Sú tafla er byggð úr iroute-færslum, þess vegna nægir venjuleg leið á netþjónshýsilnum ekki. Leið kjarnans kemur pakkanum að tunlviðmótinu; innri varpanirnar ákvarða hvaða lota fær hann. Þess vegna birtist viðgerðin aldrei í leiðaúttaki kjarnans.
Ef varpanirnar vantar kemur pakkinn að netþjóninum, passar við tunlleiðina og er hent því enginn biðlari gerir kröfu til áfangastaðarins. Ekkert skráir hreina villu, þess vegna virðist bilunin þögult svart gat frekar en leiðalykkja.
Skrifa iroute-færsluna sem nefnir biðlarann
iroute býr í stillingarskrá sem er sértæk fyrir biðlarann, ekki í aðalstillingum netþjónsins. Beindu netþjóninum að möppu með client-config-dir valkostinum, búðu svo til skrá sem heitir almennt nafn vottorðs biðlarans og settu forliðinn inn í hana.
Fyrir útibú þar sem LAN-ið er 10.20.0.0/24 og almennt nafn vottorðsins er branch-router, inniheldur skráin á þeirri slóð línu eins og iroute 10.20.0.0 255.255.255.0. Aðalstillingin þarf aðeins möppuvalkostinn; forliðurinn býr hjá biðlaranum.
Almenna nafnið er brothætti hlutinn. Vottorð sem gefið er út með öðru subject, eða uppsetning sem auðkennir notendur með notendanafni á meðan skráin er nefnd eftir vottorðinu, framleiðir skrá sem er aldrei lesin. Athugaðu nafnið sem netþjónninn tilkynnir í raun fyrir lotuna, og íhuga valkostinn sem lætur ósamsvarandi biðlara mistakast í stað þess að tengjast hljóðlega án leiða sinna. Að endurnefna skrána svo hún passi við vottorðið er fimm mínútna viðgerð sem kemur í veg fyrir mjög langt kvöld.
Einn biðlari getur átt nokkur forliði. Bættu einni iroute-línu við fyrir hvert net, og hafðu listann við hliðina á öðrum stillingum þess biðlara svo varpanirnar haldist endurskoðanlegar.
Að byggja endurkomuleiðina í báðar áttir
Að koma pökkum að fjarlæga LAN-inu er hálft verkið. Biðlarinn verður líka að senda umferð þess LANs inn í tunnilinn, sem venjulega er gert með því að ýta leið að biðlaranum: lína eins og push "route 10.8.0.0 255.255.255.0" segir hverjum biðlara hvernig á að ná netinu á netþjónshliðinni. Fyrir útibúið bendir samsvarandi leið að tunnlinum fyrir allt sem það á að ná á netþjónshliðinni.
Endurkoma áttin þarf eiganda hinum megin. Þar verður einhver að þekkja leiðina til baka: kyrrstæð leið á LAN-beininum sem beinir VPN-safninu að netþjóninum, eða fangafærsla á netþjóninum áður en umferðin fer inn í LAN-ið. Kyrrstæða leiðin heldur upprunalegu föngunum sýnilegum í annálum og aðgangsreglum en krefst samvinnu eiganda LANsins; færslan er sjálfstæð en felur hver tengdist í raun.
Framsending verður að vera virk á netþjónshýsilnum. Án hennar tekur kjarninn við pakkanum frá tunnlinum og neitar að framsenda hann á LAN-viðmótið, sem frá sjónarhóli biðlarans virðist nákvæmlega eins og iroute sem vantar.
Athuga aðgengi með réttum mælitækjum
Prófaðu í lögum í stað þess að pinga fjarlæga endann og giska. Frá netþjóninum, athugaðu að innri varpanir fyrir forliðinn séu til og að leið kjarnans bendi að tunnlinum. Frá biðlaranum, staðfestu að ýtta leiðin sé uppsett og að sjálfgefna slóðin hans fyrir LAN-fangið sé tunnillinn.
Fylgstu svo með pökkunum. Upptaka á tunlviðmótinu sýnir hvort netþjónninn sendir í átt að biðlaranum, og upptaka á LAN-viðmótinu sýnir hvort hann framsendir. Ef fyrri sýnir pakka og seinni ekkert er vandamálið framsending eða sía; ef hvorug sýnir neitt mistókst leitin fyrr.
Tveir netþjónar tengdir með tunnli endurtaka sömu regluna á báðum hliðum: hvor þarf iroute fyrir safn hins, og hvor þarf leiðina og framsendinguna sem gera slóðina samhverfa. Leiðsögn og stefna eru aðskilin mál hér. Leiðsögn ákveður hvert pakki getur farið, en FORWARD-regla ákveður hvort hann má, svo biðlari með tvær iroute-línur nær báðum forliðunum nema sía segi annað.