Jaribu uelekezaji wa VPN katika nafasi za majina bila kugusa njia za mwenyeji
Majukumu matatu yaliyoiga, miktadha mitatu iliyotengwa na veth moja kwa kila kiungo. Linganisha maabara ya nafasi za majina na maabara ya njia za mwenyeji kabla ya kugusa mwenyeji.
Maabara mbili zinaweza kuiga topolojia moja ya VPN na kushindwa kwa njia tofauti kabisa: moja inaishi katika nafasi za majina za mtandao, nyingine kwenye njia za mwenyeji mwenyewe. Toleo la nafasi za majina huhifadhi kila kiolesura, njia na soketi katika muktadha unaoweza kufuta, wakati toleo la mwenyeji huanza haraka na kuacha hali nyuma. Hali hiyo iliyobaki ndiyo sababu maabara ya pili ni ngumu kuirudia mwezi mmoja baadaye. Linganisha usafishaji kwanza, kwa sababu ndiyo huamua kama unaweza kufanya jaribio mara mbili.
Njia mbili za kujenga maabara hiyo hiyo, na ni lini kila moja inashinda
Katika maabara ya njia za mwenyeji unaongeza kiolesura cha handaki na njia kwenye mashine unayofanyia kazi, kwa hivyo jaribio hushiriki hatima na shell yako, msimamizi wa vifurushi na kila muunganisho mwingine. Katika maabara ya nafasi za majina kila jukumu hupata rundo lake la violezo, anwani, njia na soketi, na kufuta nafasi ya jina huondoa yote hayo. Hakuna modeli iliyo sahihi zaidi, kwa sababu zinajibu maswali tofauti. Chagua nafasi za majina wakati mada ni uelekezaji na upelekaji, na maabara ya mwenyeji wakati mada ni jinsi mteja mmoja wa kompyuta ya mezani anavyoungana.
| Aspect | Namespace lab | Host-route lab |
|---|---|---|
| Isolation | Full stack per role | Shares the host stack |
| Cleanup | Delete named namespaces | Manual route and rule removal |
| Realism | Strong for routing | Needed for GUI clients |
Kuchanganya zote mbili ni kosa la kawaida: maabara ya nafasi za majina iliyojaribiwa dhidi ya mteja aliye kwenye mwenyeji tu haithibitishi chochote kuhusu upangaji wowote kati ya hizo mbili. Amua ni swali gani unauliza kabla ya kuunda kiungo cha kwanza.
Muktadha mmoja kwa kila jukumu, umeunganishwa kwa makusudi
Unda nafasi moja ya jina kwa kila jukumu na uhamishe kila mwisho wa kila jozi ya veth kwenye muktadha unaoimiliki. Amri nne za kwanza zinatosha kuona umbo:
ip netns add client
ip netns add gateway
ip link add veth-c type veth peer name veth-g
ip link set veth-c netns clientIpe maabara safu zisizogusana na chochote kwenye mwenyeji, na andika kabla ya kuanza ni nafasi gani ya jina inamiliki anwani gani. Maabara inayofanya kazi inahitaji njia mbili tofauti: ya nje ili kituo cha mwisho cha VPN kifikie mwenzake, na njia ya kurudi kwa rasilimali inayolindwa. Zigawe kama maamuzi mawili, kwa sababu maabara inayojenga nusu ya kutoka tu hupita jaribio la kupeana mikono na kushindwa jaribio la programu.
Jukumu la upelekaji ndipo maabara zinapovutia
Jukumu moja lazima lipeleke, ambayo inamaanisha kuwezesha upelekaji ndani ya nafasi hiyo ya jina na kuongeza kanuni ambayo muundo unahitaji. Hali ya upelekaji ni kwa kila nafasi ya jina, kwa hivyo mpangilio wa mwenyeji hauna umuhimu kwa maabara na mpangilio wa maabara hauvuji nje, kama nyaraka za nafasi za majina za mtandao inavyoeleza. WireGuard inaandika kwamba kiolesura na soketi yake ya nje vinaweza kuishi katika nafasi tofauti za majina, jambo ambalo ni hila muhimu na njia bora ya kujichanganya. Usidhani kwamba kuhamisha kiolesura huhamisha kila sehemu ya muunganisho kwa namna moja.
Angalia kihesabu cha upelekaji baada ya pakiti ya jaribio, kwa sababu kanuni ambayo haikulingana kamwe na kanuni iliyoacha pakiti huonekana sawa katika jedwali la njia. Vihesabu pekee ndivyo vinavyowatenganisha.
Rekodi msingi, kisha vunja njia moja
Anza kwa kurekodi kilichopo, muktadha ukiwa umeandikwa kando ya kila mstari. Soma nafasi za majina, kisha njia ambayo lengo la jaribio litachukua ndani ya moja yao, kisha vihesabu kwenye kiungo kinachoibeba:
ip netns list
ip -n client route get 10.0.0.5
ip -n gateway -s link show veth-gAmri ya tatu ni ile ambayo watu huiruka, na hapo ndipo ushahidi unaishi: vihesabu vya vilivyoachwa na makosa vinakuambia kama pakiti ilifika kwenye jukumu la upelekaji kabisa. Rekodi maoni hayo matatu baada ya mabadiliko, na diff iwe ndiyo ushahidi badala ya kumbukumbu yako. Kisha vunja kitu kimoja hasa, ama kwa kufuta njia au kwa kuongeza kanuni ya kukataa kwenye njia ya upelekaji, na uthibitishe dalili uliyotabiri: kupeana mikono kumekamilika bila jibu, au kushindwa kwa utatuzi wa jina badala ya muda kupita. Maabara inayoonyesha mafanikio pekee hufundisha kidogo sana.
Usafishaji ndio unaofanya mbio inayofuata kurudiwa
Weka usafishaji ukiwa umezungukwa na rasilimali ulizozitaja, kwa sababu kuweka upya firewall kwa ujumla au kuondoa njia ya mwenyeji si urudufu, ni tukio la pili. Hifadhi topolojia, amri kamili na maangalizi uliyotarajia, ili mbio inayofuata izalishe kushindwa hicho hicho badala ya kukisia muktadha uliokuwa na hali ya awali. Bila rekodi hiyo maabara ni hadithi, si utaratibu.
Tumia vitambulisho vilivyotengenezwa ndani kwa ajili ya maabara, na uweke akaunti za uzalishaji mbali na mifano inayoshirikiwa. Kisha futa kila nafasi ya jina na uthibitishe kuwa mwonekano wa mwenyeji haujabadilika, ambayo ndiyo sababu yote ya kuchagua modeli hii. Maabara usiyoweza kuiondoa kwa usafi ni mabadiliko ya mwenyeji yenye hatua za ziada.