Mipangilio static_host_map na advertise_addrs yote huweka anwani mbele ya peer, na hujibu maswali tofauti. Moja ni faili ya ndani inayoorodhesha anwani ya overlay na kituo cha mwisho cha underlay cha kupiga. Nyingine ni mwenyeji anayewaambia minara yake vituo vya mwisho vya ziada vinavyoweza kumfikia. Umiliki ndio tofauti halisi: ramani huhudumiwa na wote wanaohitaji, na tangazo na mwenyeji mwenyewe.

Amua kwa yule anayemiliki taarifa

SettingWhere it livesBest for
static_host_mapEvery peer that needs the entryBootstrap endpoints, deliberately fixed paths
advertise_addrsThe host's own configEndpoints the host cannot otherwise discover

Kila peer inayobadilika katika faili tuli ya kila peer ni kazi ya matengenezo inayokua kwa mraba wa kundi. Hiyo ndiyo sababu ya kivitendo ya kuchukua mpangilio mwingine wakati mwenyeji mwenyewe anajua jibu.

Swali la umiliki pia hutabiri kitakachotokea anwani inapobadilika. Kwa ramani tuli, mtu anapaswa kukumbuka kila peer inayoshikilia ingizo la zamani. Kwa tangazo, mwenyeji huchapisha kituo kipya cha mwisho na minara yake huipitisha, kwa hivyo mabadiliko hubaki ya ndani kwenye mashine iliyohama.

Bootstrap bado inahitaji ingizo tuli

Mteja anapaswa kufikia angalau mnara mmoja kabla ya kumuuliza mtu yeyote kuhusu peer wengine. Kuruka kwa kwanza hakuwezi kutoka kwa ugunduzi, kwa hivyo hutoka kwa ingizo tuli katika usanidi wa mteja. Rekebisha ingizo hilo moja na overlay iliyobaki inaweza kufundishwa.

Ingizo la ramani huunganisha anwani ya Nebula na kituo kimoja au zaidi cha mwisho cha IP au DNS kinachofikika na bandari. Kuweka minara hapo ni kawaida; kuweka kila peer hapo ndio mtindo unaozea vibaya, kwa sababu kila peer mpya inamaanisha kuhariri faili kwenye mashine ambazo huenda usizidhibiti. Weka orodha fupi vya kutosha kwamba mtu bado anaweza kuithibitisha kwa kuisoma.

Tangaza wakati mwenyeji anajua kituo cha mwisho

Mwenyeji aliye nyuma ya uelekezaji wa bandari anafikika kwa anwani ya umma ambayo haijatengwa kwa kiolesura chochote chake. Hawezi kugundua anwani hiyo kwa kujiangalia mwenyewe. advertise_addrs inamruhusu kuchapisha kituo cha mwisho kupitia minara yake ili peer wengine wajifunze njia inayofanya kazi kweli. Mpangilio upo kwa sababu hii hasa kwamba mwenyeji ndiye upande pekee unaojua kwamba ramani ilifanywa.

Tumia anwani na bandari ambazo peer wengine wanaweza kufikia kweli. Hoja hiyo hiyo inatumika kwa mwenyeji mwenye njia kadhaa za mtandao, ambapo njia moja inapendelewa kwa peer kwenye mtandao fulani. Tangazo ni taarifa kuhusu underlay, si ombi la kitu chochote. Ramani inapobadilika, sasisha tangazo kwa mwenyeji na acha ugunduzi uibebe, badala ya kuhariri faili tuli kwenye kundi lote.

Tangazo si ufikivu

Kuchapisha kituo cha mwisho hakuundi kanuni ya uelekezaji ya kipitisha, hakufungui firewall ya juu na hakufanyi jina la DNS litatuliwe. Hizo ni sehemu tofauti za kazi, na tangazo sahihi lenye uelekezaji wa bandari unaokosekana hutoa hasa hitilafu uliyokuwa ukijaribu kurekebisha. Tangazo ni dai kuhusu ufikivu, si utaratibu unaouthibitisha.

Kagua njia kutoka nje kabla ya kulaumu ugunduzi. Peer inayojifunza kituo cha mwisho lakini haiwezi kukamilisha handshake ina tatizo la uelekezaji au uchujaji kwenye underlay, na kurudia anwani hiyo hiyo katika mipangilio yote mawili hakutabadilisha hilo.

Weka anwani ya overlay kando na kituo cha mwisho

Cheti cha nodi hutambua anwani yake ya Nebula. Anwani zilizotangazwa ni za mtandao wa chini, na zinaweza kubadilika bila kugusa cheti. Kutoa cheti kipya na IP nyingine ya overlay ni operesheni tofauti, na matokeo yake kwa kila uhusiano wa uaminifu uliobana ule wa zamani. Weka mabadiliko mawili kando katika runbook, la sivyo uhamishaji wa kituo cha mwisho utarekodiwa kama utoaji upya.

Triage inapokwama, tenganisha tabaka mbili kwa uwazi: ugunduzi hurejesha kituo cha mwisho kinachotarajiwa, na handshake inakifikia? Ikiwa ugunduzi ni sahihi na pakiti zinashindwa, tatizo liko chini ya overlay. Ikiwa ugunduzi si sahihi, tatizo liko kwenye ramani au tangazo, na marekebisho yanahusika hapo.

Makala zinazohusiana