Kile route-nopull ya OpenVPN inazuia kweli seva kusukuma
route-nopull hutupa njia na chaguo za DHCP zilizosukumwa, sio kupeana mkono. Chagua kati yake, pull-filter au hakuna, kisha ongeza njia mwenyewe.
Uliweka route-nopull katika wasifu wa mteja ili handaki lisimeze njia yako chaguo-msingi, na sasa subneti ya ofisi haifikiki wakati mteja bado anasema ameunganishwa. Maangalizi yote mawili ni kweli, na hakuna kilichoshindikana. Bendera inamwambia mteja kuruka njia na maingizo ya DHCP ambayo seva inasukumiza, agizo jembamba kuliko wengi wanavyotarajia wanapoongeza. Kinachobaki ni handaki linalofanya kazi bila maoni kuhusu ni maeneo gani yanapaswa kulitumia.
Pengo hilo ndilo uamuzi wote ambao makala hii inahusu. Ama seva inaelezea mtandao, ama mteja, na bendera inakabidhi kazi hiyo kwa mteja bila kufanya chochote kati yake kwa ajili yako.
Bendera inazima nini wakati wa kuunganisha
Mteja wa OpenVPN anayevuta kwa kawaida hupokea kifurushi kutoka kwa seva baada ya uthibitishaji: njia, uelekezaji upya wa lango chaguo-msingi, seva za DNS, na maagizo machache ya urekebishaji. route-nopull ikiwa inatumika, mteja bado anakubali kipindi, bado anathibitisha vyeti, bado anajadiliana kuhusu misimbo na keepalive, na bado anainua kiolesura. Kinachotupwa ni matumizi ya mistari route iliyosukumwa na mistari dhcp-option iliyosukumwa, pamoja na DNS.
Mkanganyiko unatoka kwa kiashiria cha kijani kando ya programu iliyokufa. Handaki lipo; upangaji wa maeneo kwenye handaki hilo haupo. Hakuna kitu kwenye paneli ya hali ya mteja kinachotofautisha «imeunganishwa na inaelekeza» na «imeunganishwa na haifanyi kazi», kwa sababu kwa mtazamo wa handaki zote ni hali moja.
Kwa nini handaki hai bado linaweza kuelekeza kitu
Kiolesura huonekana na anwani yake mwenyewe na, kwenye kiungo cha nukta-kwa-nukta, mara nyingi hakuna kitu mahususi zaidi ya njia ya mwenyeji kuelekea mwenzake. Subneti ya faragha inafikika tu wakati njia fulani yenye kiambishi sahihi inaelekeza kwenye kiolesura hicho, na usukumaji ukizimwa njia hiyo haiji kamwe. Wasifu uliopakuliwa pia kwa kawaida hauwezi kusaidia, kwa sababu uliandikwa kwa dhana kwamba seva itatoa taarifa hizi hasa. Ndio sababu kiolesura kinaweza kuonekana kizima wakati subneti inabaki gizani.
Kwa hivyo kusoma wasifu kunathibitisha kidogo sana. Badala yake soma hali inayoendesha, kwenye mashine iliyounganishwa:
ip addr show tun0
ip route show dev tun0
ip route get 10.20.5.10
Anwani isiyo na njia ya subneti kwenye amri ya pili ni sahihi ya tatizo hili. Amri ya tatu kisha hujibu swali ambalo watumiaji wanajali kweli, kwa sababu inaripoti kiolesura ambacho kerneli itachagua kwa lengo mahususi badala ya orodha uliyotarajia itumie. Ikiwa inajibu kupitia kiungo chako halisi, handaki halipo kwenye njia hata kidogo.
Utatuzi wa majina unashindikana kwa sababu inayohusiana, sio tofauti. Maingizo dhcp-option DNS yaliyosukumwa yanarukwa na bendera hiyo hiyo, kwa hivyo maswali kuhusu wenyeji wa ndani huenda kwa kitatuzi chochote ambacho mtandao wa ndani ulitoa. Kitatuzi hicho hakina eneo la ofisi, kwa hivyo swali linashindikana au linarejesha jibu la umma, na hitilafu inaonekana kama tatizo la seva wakati ni tatizo la usanidi wa mteja. Kujaribu anwani kabla ya jina ndiko kunakotenganisha mawili hayo.
Kuchagua kati ya bendera na kichujio cha kiambishi
Chaguo mbili hutatua maumbo tofauti ya malalamiko yale yale, na chaguo baya ndilo linalozalisha hali ya imeunganishwa-lakini-haina-matunizi. Moja hubadilisha sera iliyosukumwa kabisa, nyingine huihariri kwa kiambishi. Jedwali linatoa toleo fupi, na aya inayofuata inashughulikia sehemu inayowashangaza watu.
| Setting | What the client keeps | Reasonable when |
|---|---|---|
| no option | every pushed route and DHCP entry | the server's view of the network is correct |
route-nopull | the session, none of the pushed routing or DNS | you will write the full local policy yourself |
pull-filter | everything except lines matching your prefixes | the push is nearly right and one or two lines are wrong |
pull-filter ni kifananishi cha kiambishi chenye vitenzi vitatu, kwa hivyo kinaweza kukubali familia ya mistari, kuipuuza kwa kimya, au kukataa muunganisho kabisa kiambishi kinapotokea. Tabia hiyo ya mwisho ndiyo inayofaa kujulikana: kanuni ya kukataa hubadilisha kutokubaliana kwa sera kuwa kupeana mkono kushindikana badala ya kuachwa kwa kimya. Mwongozo wa OpenVPN 2.6 unaorodhesha viambishi vinavyokubalika na maana kamili ya kila kitenzi.
Njia ya kati inayojulikana ni kukataa redirect-gateway pekee na kuacha njia za ofisi na DNS zije kama ilivyokusudiwa. Hiyo huweka usukumaji ukifanya kazi kwa sehemu ambazo seva inazielewa vizuri kuliko wewe, huku ikizuia mstari mmoja tu ambao ungechukua njia yako chaguo-msingi.
Kuongeza njia na kitatuzi kwa mkono
Ikiwa unabakiza bendera, wasifu lazima useme kile ambacho seva ingelisema. Maagizo route ya upande wa mteja hutumika baada ya muunganisho kuanzishwa, kwa hivyo hufanya kazi pamoja na bendera badala ya kuzuiwa nayo. Yaweke kwenye wasifu, sio kwenye mstari wa amri shirikishi, vinginevyo muunganisho unaofuata hautazalisha tena hali inayofanya kazi.
route-nopull
route 10.20.0.0 255.255.0.0
dhcp-option DNS 10.20.0.53
Mstari wa DNS uko katika nafasi isiyofaa: ni agizo la upande wa mteja, lakini baadhi ya wateja hulitumia tu kupitia muunganisho wa DNS wa jukwaa, ambao unaweza kuandika juu yake kiungo kinapobadilika. Kwenye mwenyeji wa systemd, kuweka kitatuzi moja kwa moja kwenye kiolesura cha handaki ni rahisi kutabirika kuliko kutumaini mteja atashinda mashindano ya kipaumbele:
resolvectl dns tun0 10.20.0.53
resolvectl domain tun0 ~corp.example.com
Kikoa cha uelekezaji ni muhimu kama anwani. Bila hicho, maswali ya majina ya umma yanaweza pia kutumwa kwa kitatuzi cha ndani, na kitatuzi chochote cha ndani kinachokataa urudiaji kitavunja uvinjari wakati eneo la faragha likiendelea kufanya kazi. Pamoja nacho, ni majina chini ya kiambishi hicho pekee yanayoelekezwa kwa kitatuzi cha handaki na kila kitu kingine hufuata kiungo halisi.
Kukagua matokeo: anwani, jina na njia ya nje
Majaribio matatu hutenganisha hitilafu zinazowezekana. Pata anwani ya faragha kwa IP, kisha mwenyeji yule kwa jina, kisha tovuti ya kawaida ya umma. IP inayofanya kazi na jina linaloshindikana huelekeza kwa kitatuzi; IP inayoshindikana na jina linalofanya kazi huelekeza kwa uelekezaji; zote zikishindikana kwa kawaida handaki haliko kwenye njia.
Kisha angalia nje badala ya ndani. Njia ya mwisho ya handaki yenyewe lazima istahimili mabadiliko, na hitilafu yoyote inayozuia lazima iwekewe mipaka kwa handaki bila kunasa mwisho huo. Mteja anayeendelea kuvinjari baada ya handaki kuanguka ni tatizo la sera, sio la uelekezaji, na halitaonekana katika majaribio yoyote matatu hapo juu.
Andika orodha ya mwisho katika nyaraka za wasifu: njia, kitatuzi, vikoa na sababu ya kila moja kuwepo. Muunganisho unaozalisha tena jedwali lile ni ushahidi pekee kwamba sera ya ndani imekamilika. Ikiwa programu bado zinashindikana wakati handaki liko juu na majaribio yote matatu yamefaulu, mahali panapofuata pa kuangalia ni darasa la matatizo ya imeunganishwa-lakini-nje ya mtandao, sio vyeti ambavyo tayari vimethibitishwa.