Aikoni mbili za muunganisho wa kijani zinaonekana kama ulinganisho na kwa kawaida ni bahati mbaya. Ikiwa ombi la jaribio lingeweza kutumia handaki yoyote kati ya hizo mbili, matokeo yanaelezea moja kati yao kwa hali bora na hakuna hata moja kwa hali mbaya. Ipe kila uchunguzi muktadha wa mtandao, lengo lililokusudiwa na matarajio yaliyoandikwa kabla ya jaribio kuanza. Kwenye kompyuta ya Linux unayoisimamia mwenyewe, nafasi za majina za mtandao zenye jina ndiyo njia ya bei nafuu zaidi ya kununua utengano huo.

Taa mbili za kijani si ulinganisho

Nafasi ya majina hutenganisha majedwali ya uelekezaji, violesura na hali ya raba ya mtandao, kwa hivyo ombi lililoanza ndani ya moja haliwezi kuazima handaki ya nyingine kwa utulivu. Kisichotenganisha ni kichakataji, kiungo cha juu cha kimwili au huduma ya kutatua majina inayoendesha kwenye mwenyeji. Ni katika pengo hili la mwisho ambapo mengi ya majaribio haya hushindwa bila mtu yeyote kugundua. Utafutaji unaotoka kwenye nafasi ya majina na kuuliza kitatuzi cha mwenyeji hurudisha jibu lisilohusiana kabisa na handaki inayojaribiwa.

Utaratibu huu unadhani nafasi mbili za majina za majaribio zilizoandaliwa na kuidhinishwa tayari, zenye muunganisho wa nje unaofanya kazi na wateja wanaotumika. Hautengenezi kitu, hausajili kitu na haubadilishi usanidi wowote. Kompyuta pepe tofauti zinabaki chaguo la uaminifu pale mteja anahitaji kipindi kamili cha eneo-kazi au anakataa kufanya kazi nje yake.

Thibitisha matarajio kabla ya kukimbia kwa mara ya kwanza

Amua kwa kila muktadha jinsi mafanikio yanavyoonekana: kitatuzi, jina la huduma, anwani inayotarajiwa na tabia inayohitajika handaki inapoanguka. Weka thamani hizo zilizopangwa katika safu yake yenyewe, kwa sababu rekodi inayochanganya mpango na uchunguzi ni hadithi ya kubuni yenye muhuri wa muda. Orodha ya ukaguzi iliyo hapa chini ni umbo ambalo rekodi inahitaji, na kila mstari lazima uweze kujazwa kabla ya muunganisho wa kwanza.

TunnelOwnerClient interface inside the namespaceProof commandRequired on disconnect
vpn-athe identity that owns profile A, recorded by nameits own tun device, never the host'sip -n vpn-a -4 route get 10.55.10.20traffic stops; no host-side fallback
vpn-ba separate owner, even when both run on one boxits own tun device in its own namespaceip -n vpn-b -4 route get 10.55.20.20verified separately, never inferred from A

Wayavyo za kitatuzi zinahitaji mstari wake katika rekodi hiyo, kwa sababu ni sehemu inayowezekana zaidi kusema uongo. Faili zilizofungwa na nafasi ya majina, kama /etc/netns/vpn-a/resolv.conf huonekana kwenye njia zao za kawaida amri inapoendeshwa ndani ya nafasi ya majina, kama inavyoeleza marejeo ya iproute2 kuhusu nafasi za majina, lakini usanidi wa kubadilisha huduma ya majina na kitatuzi chochote cha ndani kinachoanzisha bado vinaweza kuvuta utafutaji kurudi kwa mwenyeji.

Handaki moja kwa wakati, nyingine imekatwa

Unganisha A kupitia mmiliki wake aliye tayari wakati B inabaki chini, kisha kagua sera, njia na njia iliyochaguliwa kutoka muktadha wa utawala. Amri tatu kati ya zilizo hapa chini zinasoma hali; mwisho pekee unawasiliana na huduma ya majina, na hakuna hata moja inayotuma ombi la programu.

sudo ip -n vpn-a -4 rule show
sudo ip -n vpn-a -4 route show table all
sudo ip -n vpn-a -4 route get 10.55.10.20
sudo ip netns exec vpn-a getent ahostsv4 svc-a.lab.internal

Utafutaji wa njia hujibu swali la kudhania kuhusu lengo, kwa hivyo hauwezi kuonyesha kwamba huduma inakubali trafiki. Weka aina hizi mbili za ushahidi katika safu tofauti, kwa sababu njia nzuri kando ya muunganisho uliokataliwa ni matokeo halisi na ya kawaida. Kisha tuma ombi moja lenye idhini lisilo na madhara kwa programu halisi, lililozinduliwa katika muktadha wa A kama mtumiaji wake wa kawaida asiye na upendeleo huku uthibitishaji wa cheti na uthibitishaji wa programu ukiwa sawa, na andika matokeo pamoja na anwani ya chanzo ambayo huduma iliona. Kata A kupitia mmiliki wake na urudie mstari wote wa msingi kwa B, ukibainisha mabadiliko yoyote ya usanidi unayofanya, vinginevyo mistari miwili ya msingi haitakuwa linganifu tena.

Zote mbili juu, kisha moja chini kwa wakati

Hali tulivu ni sehemu rahisi. Handaki zote mbili zikiwa zimeunganishwa, rudia utafutaji na ombi la programu la kila muktadha, kisha vunja handaki moja na ukague nyingine. Unganisha tena kwa mpangilio wa kinyume pale mpangilio wa muunganisho wenyewe ukiwa swali.

sudo ip netns exec vpn-a tcpdump -ni any port 443 -c 5
sudo ip netns exec vpn-b getent ahostsv4 svc-b.lab.internal
sudo ip -n vpn-b -4 route get 10.55.20.20

Unasaji hutatua mabishano ambayo matokeo ya programu hayawezi kutatua: unaonyesha kama ombi lilitoka kupitia violesura uliyotarajia au kupitia kitu kingine kabisa. Kwa kila mpito andika kitendo cha mmiliki, muhuri wa muda, matokeo ya njia, matokeo ya jina na matokeo ya programu. Kisha kagua sharti la kufungwa kwa usalama ndani ya nafasi ya majina iliyoathirika, kwa sababu utengano si swichi ya kuzima. Nafasi ya majina huweka handaki mbili tofauti; haizuii yoyote kati yao kubeba trafiki pale wasifu wake unaposema trafiki lazima isimame.

Rekodi hii inaweza kudai nini na haiwezi kudai nini

Kufaulu kunathibitisha uchunguzi huo kwa mpangilio huu, kwenye mwenyeji huyu, wakati huo. Haisemi kitu kuhusu wateja wawili wanaoshiriki jedwali moja la uelekezaji la eneo-kazi, wala kuhusu upitishaji wakati handaki zote mbili zimebeba mzigo. Hiyo ni maswali tofauti yenye majaribio tofauti, na ulinganisho ni mzuri kadiri muktadha ulioambatishwa kwenye kila mstari.

Weka kushindwa kwenye rekodi kando ya mafanikio, ukiweka alama ya handaki ipi ilikuwa juu wakati huo. Ukurasa safi unaoficha hali wakati wa kipimo ni mbaya kuliko ule wa ajabu unaoionyesha. Kinachofanya rekodi itumike tena baadaye ni muktadha, si alama.

Handaki mbili kwenye kompyuta moja zinaweza kulinganishwa kwa uaminifu, lakini tu ndani ya miktadha mingi kama ulivyodhibiti kweli. Kitu chochote zaidi ya hapo ni matumaini yenye aikoni ya kijani kando yake.

Makala zinazohusiana