Mitandao mitatu ya LAN inaweza kukutana kwenye kitovu kimoja bila eneo lolote kuhitaji kujua muundo wa ndani wa mengine, na muundo wote unategemea maamuzi manne mafupi ya usanidi. Kinachofanya kifanye kazi si kipengele cha itifaki cha kigeni, bali mpango wa anwani ambao hakuna anayehitaji kukisia, pamoja na njia za kila mteja zinazoiambia kitovu tawi gani linamiliki kiambishi kipi. Ukikosea moja ya hayo mawili, handaki bado inainuka, na hiyo ndiyo inayofanya kushindikana kuwa jambo la kuchanganya.

Pitia hatua kwa mpangilio. Kila hatua inategemea mpango wa hatua iliyotangulia, na hakuna inayohitaji mamlaka mpya ya vyeti.

Anza na mpango ambao hakuna anayehitaji kukisia

Andika viambishi vinne visivyogusana kabla ya kugusa faili ya usanidi: LAN ya kitovu yenyewe, LAN ya kila tawi, na dimbwi linalotolewa kwa wateja wanaozunguka. Kutogusana ndiko kunakofanya kila kitu kingine kuwa rahisi, kwa sababu safu zinazogusana hubadilisha uelekezaji kuwa fumbo la ulinganifu mrefu zaidi ambalo hakuna usanidi wa kila mteja unaweza kurekebisha. Kisha hakikisha ni mashine ipi ni lango la msingi kwa kila LAN, kwa kuwa kipanga njia cha tawi ambacho si lango la LAN yake mwenyewe kinahitaji kuweka njia za mbali mahali pengine kabisa. Mwishowe, weka majina yaliyothibitishwa yanayotambua kila tawi, kwa sababu majina hayo ni funguo ambazo faili za kila mteja hutafutwa kwayo.

Mpango wa mfano unaweka dimbwi mbali kabisa na LAN tatu. Lako litakuwa tofauti, na kanuni pekee ngumu ni kwamba hakuna safu mbili zinazogusana.

Hub LAN        172.20.0.0/24
Branch A LAN   172.21.0.0/24
Branch B LAN   172.22.0.0/24
VPN pool       10.77.0.0/24

identity branch-a owns 172.21.0.0/24
identity branch-b owns 172.22.0.0/24

Iambie kernel ya kitovu mahali matawi yalipo

Kitovu kinahitaji taarifa mbili kwa kila tawi: njia ya kernel inayotuma kiambishi kwenye kifaa cha handaki, na ingizo la iroute linaloiambia mchakato wa OpenVPN mteja gani anamiliki. Njia ya kernel pekee huwasilisha pakiti hadi handaki na kuishia hapo, kwa sababu daemon bado inapaswa kuamua peer gani anapaswa kuzipokea. Ingizo la iroute pekee huacha pakiti hizo kwenye kernel bila njia ya kufuata. Mistari yote miwili ni ya usanidi ambao daemon hupakia kwa kweli, na inafaa kuhakikisha hilo kabla ya kutatua kitu kingine chochote.

dev tun
topology subnet
server 10.77.0.0 255.255.255.0
disable-dco

route 172.21.0.0 255.255.255.0
push "route 172.20.0.0 255.255.255.0"
client-config-dir /etc/openvpn/ccd
route 172.22.0.0 255.255.255.0

Acha client-to-client ikiwa imezimwa wakati kernel inapaswa kuwa mahali pa kutekeleza kanuni. Chaguo hilo hupeleka trafiki kati ya peer ndani ya daemon, jambo ambalo ni rahisi na pia linamaanisha kanuni zako za upelekaji hazioni mtiririko huo kamwe. Kila kitu hapa chini kinadhani kernel inaona kila pakiti kati ya matawi.

Ipe kila tawi njia inazohitaji

Kila tawi linahitaji njia kuelekea matawi mengine na kuelekea LAN ya kitovu, na halihitaji moja kuelekea LAN yake iliyounganishwa. Sukuma viambishi vya mbali kutoka kitovu badala ya kuvibandika kwenye kila kipanga njia, ili eneo la nne baadaye lamaanisha faili moja mpya kwa mteja badala ya mabadiliko manne. Faili ya kila mteja pia hubeba mstari wa iroute, unaoweka umiliki na matangazo mahali pamoja. Fanya saraka na faili zake zisomeke kwa mujibu wa modeli ya haki za seva, vinginevyo utafutaji unashindikana bila ujumbe.

# /etc/openvpn/ccd/branch-a
iroute 172.21.0.0 255.255.255.0
push "route 172.22.0.0 255.255.255.0"

Eneo la nne linafuata muundo huo huo: jina tofauti lililothibitishwa, kiambishi kinachomilikiwa, njia ya kernel kwenye kitovu, ingizo la iroute, na matangazo kwa maeneo yanayoruhusiwa kuifikia pekee.

Jaribu pande zote mbili kabla ya kusema imekamilika

Washa upelekaji wa IPv4 kwenye vipanga njia vyote vitatu, kisha hakikisha firewall inaruhusu mitiririko iliyokusudiwa pande zote mbili, kwa sababu jaribio la upande mmoja hupita na njia ya kurudi iliyovunjika mara nyingi zaidi kuliko mtu yeyote anavyotarajia. Kati ya maeneo hakuna haja ya kutafsiri anwani ya chanzo, na kuhifadhi chanzo halisi ndiko kunakoruhusu kila tawi kutumia sera yake mwenyewe kwa ombi.

Jaribu kutoka mwenyeji kwenye LAN ya tawi moja hadi huduma kwenye tawi lingine, kisha geuza mwelekeo, kisha jaribu kutoka tawi hadi LAN ya kitovu. Matokeo hayo matatu ni ushahidi tofauti, na hakuna lolote linalodokeza mengine. Ikiwa kipanga njia cha tawi si lango la msingi la LAN yake, weka viambishi vya mbali kwenye lango halisi na ujumuishe dimbwi pia wakati wateja wa handaki wanahitaji kuanza miunganisho kwenye LAN hiyo.

Rekodi mpango, faili za kila mteja na kanuni za firewall kama hati moja, kwa sababu nyongeza ya eneo linalofuata itahukumiwa kwa kuzingatia hizo.

Muundo unashikilia pamoja kwa sababu kila tabaka lina kazi moja: mpango unaweka viambishi kuwa vya kipekee, njia ya kernel inasogeza pakiti, iroute inamtaja mmiliki, na firewall inaamua kinachoruhusiwa. Kitu kinapovunjika, orodha hiyo pia ni mpangilio wa kukagua.

Makala zinazohusiana