Kwa nini njia ya subnet ya Tailscale iliyoidhinishwa bado inaisha kwa muda
Uidhinishaji wa njia husambaza njia ya subnet pekee. Ikiwa huduma bado inaisha kwa muda, angalia upokeaji wa njia kwenye mteja, uenezaji na kanuni ya ufikiaji kwayo.
Uidhinishaji katika konsoli ya msimamizi unaonekana kama hatua ya mwisho, na sivyo. Kwanza programu inaisha kwa muda, na baada ya hapo tu ndipo unagundua kwamba kipanga njia kiko mtandaoni na njia imeidhinishwa. Uidhinishaji ni hatua ya usambazaji, si ruhusa na si uhakika wa uenezaji. Hatua nne lazima zilingane kabla pakiti kufika kwa mwenyeji nyuma ya kipanga njia cha subnet, na kila hatua inaweza kufanikiwa wakati inayofuata inashindikana. Zifanyie kazi kwa mpangilio na usimame katika hatua ya kwanza isiyoshikilia.
Hatua nne, hitilafu moja
Kipanga njia hutangaza kiambishi awali, tailnet hukubali tangazo hilo, mteja hupokea njia aliyoipata, na sera ya ufikiaji huruhusu muunganisho husika. Hizi ni maamuzi manne tofauti yaliyofanywa na vipengele vitatu tofauti. Kwa hivyo njia iliyoidhinishwa husema tu kwamba mtandao sasa ni sehemu ya jedwali la uelekezaji la tailnet.
Hatua ya nne ndiyo inayorukwa zaidi, kwa sababu tatu za kwanza huzalisha hali inayoonekana. Ruhusa inayofunika anwani ya tailnet ya kipanga njia yenyewe haifuniki subnet ya kibinafsi nyuma yake kiotomatiki. Hizi ni destinasi tofauti, na sera hutathminiwa kwa kila destinasi.
Kwenye Linux hatua ya tatu pia ina chaguo-msingi linalowashangaza watu: kukubali njia za subnet ni hiari. Wateja kadhaa wa GUI hukubali njia zilizotangazwa kwa chaguo-msingi, kwa hivyo kundi mchanganyiko linaweza kuonyesha mashine moja inayoshindikana wakati nyingine zinafanya kazi.
Thibitisha mpangilio kwenye mashine inayoshindikana badala ya kudhani jukwaa. Njia haikuwa kipande kinachokosekana kwenye mashine zinazofanya kazi, kwa hivyo waache zithibitishe kwamba upande wa tailnet uko salama. Nyaraka za Tailscale kuhusu vipanga njia vya subnet zinashughulikia uidhinishaji, upokeaji wa njia kwa mteja na hatua ya sera.
Angalia njia mahali ambapo mteja anaendesha
Anza na mteja anayeshindikana, si kipanga njia. Thibitisha kwamba njia ipo na kwamba mpangilio wa mteja unaruhusu kukubali njia kabisa.
tailscale status
tailscale debug prefs | grep -i route
ip route get 10.20.0.42
Amri ya kwanza inaonyesha orodha ya wenzao na kama kipanga njia cha subnet kinafikiwa, ya pili inachapisha mapendeleo ya mteja ikiwa ni pamoja na bendera ya upokeaji wa njia, na ya tatu inauliza kernel itumie kiolesura gani kwa mwenyeji halisi kwenye subnet. Ikiwa amri hiyo ya mwisho inataja kiolesura halisi badala ya kiolesura cha Tailscale, njia haikuingia kwenye jedwali kamwe. Njia inayokosekana ni tatizo la upande wa mteja, si tatizo la uidhinishaji. Rekebisha kabla ya kutazama sera.
Ili kukubali njia kwenye Linux, unganisha tena na bendera badala ya kudhani imewekwa: tailscale up --accept-routes. Mteja aliyejiunga na bendera nyingine huzihifadhi hadi zibadilishwe, kwa hivyo angalia mpangilio wa sasa kabla ya kuongeza mwingine. Kuendesha tena amri ya kwanza baada ya mabadiliko kunapaswa kuonyesha njia kwenye jedwali.
Thibitisha uenezaji na njia ya kurudi
Uidhinishaji hausanidi kipanga njia kuelekeza pakiti wala hakuandaa jibu. Yote mawili ni masuala ya ngazi ya mwenyeji upande wa LAN wa kipanga njia. Yajaribu kwenye kipanga njia, si kwa mteja.
sysctl net.ipv4.ip_forward
iptables -t nat -L POSTROUTING -n -v
tcpdump -ni any host 10.20.0.42 and port 443
Amri ya kwanza lazima iripoti 1, vinginevyo kernel itatupa pakiti iliyoelekezwa. Ya pili inaonyesha kama ufichaji wa njia ya subnet unaandika upya chanzo, ambao ni tabia ya chaguo-msingi na kwa kawaida ndiyo unayotaka. Ya tatu inaonyesha kama ombi linafika kwenye destinasi na kama kuna kitu kinarudi; ombi lisilo na jibu ni tatizo la njia ya kurudi, si la uidhinishaji. Soma matokeo yote matatu pamoja kabla ya kubadilisha lolote kati yao.
Ufichaji ukizimwa, mtandao wa destinasi unahitaji njia ya kurudi kwenye anwani za tailnet, na kila hop katikati lazima ijue hilo. Kuwasha tena ufichaji ni rekebisho la haraka kwa huduma moja, lakini kwa gharama ya kuficha anwani halisi ya mteja kutoka kwa destinasi. Mabadilishano hayo ni muhimu wakati destinasi inarekodi anwani za chanzo kwa ukaguzi, kwa hivyo amua kwa uangalifu badala ya kupindua bendera wakati wa tukio. Andika maandishi ya chaguo ulilofanya, kwa sababu mtu anayefuata ataona tabia moja tu kati ya mbili.
Soma kanuni ya ufikiaji kwa rasilimali
Njia ikiwa tayari na uenezaji umethibitishwa, mtuhumiwa aliyebaki ni sera. Soma ruhusa inayopaswa kuruhusu muunganisho na uangalie destinasi yake, si chanzo pekee. Utambulisho wa mteja mwenyewe pia lazima ulingane na kichaguzi cha sera, kwa hivyo unase kwenye mashine hiyo hiyo inayoshindikana.
tailscale status --json | head -40
tailscale ping <router-name-or-tailnet-ip>
ping -c 3 10.20.0.42
Matokeo ya hali yanatambua anwani za mteja mwenyewe na wenzao anaowaona, na kichaguzi cha chanzo cha sera lazima kilingane na hayo. tailscale ping inathibitisha njia ya tailnet hadi kipanga njia cha subnet yenyewe; hutatua majina ya wenzao na anwani za tailnet, si wenyeji ndani ya subnet iliyotangazwa. Amri ya tatu hutuma mwangwi wa ICMP wa kawaida kupitia njia ya subnet, kwa hivyo matokeo yake yanaelezea destinasi badala ya kipanga njia. Kukataliwa kwa ngazi ya tailnet kwa kawaida hurudi kama kukataliwa, wakati pakiti inayotoka na kutokurudi kamwe inaisha kwa muda.
Jina linaloshindikana ni swali tofauti na anwani inayoshindikana; tatua mwenyeji moja kwa moja kabla ya kulaumu njia. Andika ruhusa kulingana na hitaji halisi la rasilimali badala ya subnet yote. Kufungua /24 nzima ili programu moja ifanye kazi ndiyo njia ambayo ombi jembamba linakuwa ruhusa pana ambayo baadaye hakuna anayethubutu kuiondoa.
Ikiwa lengo lilikuwa kutoka kwenda mtandaoni na si subnet ya kibinafsi, kijenzi sahihi ni nodi ya kutoka, si kipanga njia cha subnet, na sera na uelekezaji hutofautiana ipasavyo. Angalia uamuzi huo kabla ya kupanua ruhusa. Nodi ya kutoka hubadilisha njia ya chaguo-msingi; kipanga njia cha subnet hutangaza kiambishi awali pekee.