Uko kwenye kompyuta ya mkononi ya Linux, tailscale status huorodhesha mashine nyingine, na NAS iliyo 10.80.0.25 bado inaisha kwa muda. Tailnet ni nzuri, ruta ya subnet iko mtandaoni, na hakuna chochote kwenye matokeo ya mteja kinachosema kwa nini LAN iliyo nyuma yake haifikiki. Mwongozo ulio hapa chini unaenda kutoka kwa dalili hiyo kuelekea nje: bendera kwenye mteja huyu, kisha tangazo kwenye ruta, kisha idhini, kisha sera, na kisha tu lengo lenyewe. Kila lango linashindwa kwa muda huo huo, kwa hiyo mpangilio ni muhimu kuliko amri.

Kile ambacho mteja wa Linux hukataa kusakinisha

Wateja wa Tailscale kwenye Linux hawapokei njia za subnet zilizotangazwa isipokuwa uwaombe. Bila mpangilio huo mteja hujiunga na tailnet na kufikia anwani za wenza, ilhali kila kiambishi awali kinachotangazwa na ruta kinabaki bila kutumika. Thamani ya chaguo-msingi ni ya makusudi, na ndiyo sababu dalili inaonekana kama ruta iliyoharibika na si uamuzi wa ndani.

Hapa vitu viwili tofauti huitwa uelekezaji, na kimoja tu ni chako. Ruta hutangaza kiambishi awali kwenye tailnet; mashine yako huamua kama itakisakinisha. Kushindwa kwa kimoja chochote huleta muda huo huo wa kuisha, kwa hiyo kubahatisha hutumia mchana mzima. Gundua upande gani unakataa kabla ya kubadilisha chochote.

Washa upokeaji wa njia kwa mashine hii

Weka upendeleo kwenye mteja, kisha angalia kilichobadilika badala ya kudhani amri ilifanya kazi. Umbo la sasa hutumia mpangilio bila kurudia mtiririko wa kuingia, jambo ambalo ni muhimu ukiwa katikati ya kikao.

sudo tailscale set --accept-routes
tailscale status
ip route show table 52

Tailscale husakinisha njia zilizokubaliwa kwenye jedwali lake mwenyewe kwenye Linux, kwa hiyo kiambishi awali kinachoonekana kwenye jedwali 52 ni ushahidi wa moja kwa moja kwamba mteja huyu alisakinisha tangazo. Ikiwa safu yako haipo kwenye jedwali hilo, simama: tatizo ni la ndani na hakuna kazi yoyote kwenye ruta itakayoibadilisha.

Wateja wa zamani hutoa upendeleo huo huo kama bendera kwenye amri ya kuingia, kwa hiyo sudo tailscale up --accept-routes ni mbadala wakati tailscale set haipo. Itumie badala ya kuhariri njia kwa mkono, kwa sababu daemon huandika upya jedwali lake mwenyewe na hariri yako hupotea kwenye muunganisho ujao. Angalia toleo kabla ya kunakili amri kutoka chapisho la zamani.

Angalia tangazo na idhini kwa tofauti

Kwenye ruta ya subnet kiambishi awali lazima kitangazwe, na kernel lazima isambaze pakiti kati ya violesura. Kutangaza bila kusambaza kunakupa njia iliyoidhinishwa inayotupa trafiki kimya kimya, na huu ndio mpangilio wa nusu uliokamilika unaojulikana zaidi.

sudo tailscale up --advertise-routes=10.80.0.0/24
sysctl net.ipv4.ip_forward
ip -br addr

Linganisha kiambishi awali kilichotangazwa na anwani unayojaribu kufikia kweli, herufi kwa herufi. Ruta inayotangaza 10.70.0.0/24 haisemi chochote kuhusu NAS iliyo 10.80.0.25, na kutokulingana hakuonekani kwenye matokeo yoyote ya hali kwa sababu nambari zote mbili zinaonekana kuaminika kwa usawa. Ripoti nyingi za njia iliyoharibika huishia hapa. Rekebisha tangazo kabla ya kugusa kitu chochote chini.

Idhini ni lango linalofuata, na ni rahisi kuiruka wakati ruta ilisanidiwa kutoka kwenye shell. Tangazo lazima liwashwe kwa kifaa hicho kwenye konsoli ya usimamizi kabla mashine nyingine kuitumia. Kukubali njia kwenye mteja hakuidhinishi chochote na hakupiti kanuni yoyote ya ufikiaji.

Jaribu anwani ya kibinafsi kabla ya jina la mwenyeji

Muunganisho uliofanikiwa kwenda anwani ya tailnet ya ruta yenyewe unathibitisha kuwa tailnet inafanya kazi, jambo ulilojua tayari. Jaribio lenye manufaa ni huduma unayohitaji kweli, kwanza kwa anwani ya kibinafsi, ili kushindwa kwa DNS kusiweze kujifanya kushindwa kwa uelekezaji.

tailscale ping 10.80.0.1
ping -c 2 10.80.0.25
nc -vz 10.80.0.25 445
getent hosts nas.internal.example

Ikiwa anwani inajibu na jina la mwenyeji halijibu, una tatizo la utatuzi wa majina na unapaswa kuacha kuichukulia kama tatizo la njia. Ikiwa hakuna kinachojibu, rudi sehemu moja nyuma na uthibitishe kuwa tangazo linashughulikia anwani. Kushindwa kote kuwili kunaonekana sawa kutoka kwa programu na hurekebishwa mahali tofauti.

Ukaguzi mmoja wa ndani unafaa kabla ya kulaumu tailnet. Wakati LAN yako ya sasa inatumia kiambishi awali sawa na subnet ya mbali, kernel hupendelea njia iliyounganishwa moja kwa moja na trafiki haiondoki kamwe kwenye mashine; hiyo ndiyo hutokea wakati nyumba na ofisi zote mbili huchagua 192.168.1.0/24.

Kwa nini bendera ya mteja si mpangilio wa ruta

Hizi ni majukumu tofauti yenye mahitaji tofauti, na kunakili bendera ya mteja kwenye ruta ndiyo njia ambayo tailnet inayofanya kazi hupata kitanzi. Mashine inayotangaza njia inahitaji usambazaji, kanuni za firewall zinazoruhusu trafiki iliyosambazwa, na uamuzi kuhusu ni viambishi awali gani inatangaza. Hakuna lolote la hayo linalodokezwa na --accept-routes.

Nyaraka za ruta za subnet zinaonya dhidi ya kuwasha upokeaji wa njia kwenye ruta za ziada zinazotangaza kiambishi awali kimoja, kwa sababu nodi ya akiba inaweza kusukuma trafiki ambayo tayari ni ya ndani kupitia ile inayotumika. Ikiwa unaendesha jozi ya HA, chukulia hilo kama kikwazo cha usanifu na si tanbihi, na amua nodi ipi inamiliki kiambishi awali kabla ya kuidhinisha kwenye zote mbili. Kwenye ruta moja onyo hilo hilo linasomwa kama ukumbusho kwamba upokeaji ni wa wateja, si wa mashine inayotangaza. Andika lango gani lilikuwa limefungwa.

Kwa mteja wa kawaida mfuatano huisha na jaribio la programu lililoshindwa mwanzoni. Kwa ruta, pitia usambazaji, tangazo, idhini na firewall kwa mpangilio huo, kwa sababu la kwanza lililokosekana huzalisha muda huo huo wa kuisha ulioanza nao.

Makala zinazohusiana