Tunnel-ku wuu furan yahay, firewall-ku wuxuu oggol yahay dekedda 53, AdGuard Home wuxuu socdaa, laakiin magacyaduna weli ma xalliyaan macaamilka WireGuard. Weydiintu sida caadiga ah way timaadaa jawaabtuna sida caadiga ah way baxdaa, sidaa darteed tiriyeyaasha baakadka ee xalliyaha waxay u muuqdaan kuwo caafimaad qaba adeegguna wuu u muuqdaa mid aan waxba galabsan. Waxa khaldan waa cinwaanka asalka ee jawaabtaas: waxay ka baxdaa cinwaan maxalli ah oo macaamilku waligiis codsamin, xalliyaha stub-ka macaamilkana wuu iska tuuraa. Hal liis oo ku jira qaabeynta AdGuard Home ayaa go'aamiya tan, waxaana caadi ahaan lagu taliya kernel-ka.

Weydiintu way timaadaa, jawaabtuna waxay ka baxdaa meel kale

Macaamiil leh 10.6.0.1 oo loo dejiyay inay tahay xalliyaha ayaa diraya weydiinta UDP ee 10.6.0.1 port 53. Baakadkaas wuxuu ka gudbaa tunnel-ka wuxuuna ku soo gaaraa martida, AdGuard Home-na wuu ka jawaabaa. Si kastaba ha ahaatee, xariiqda, jawaabta waa baakad cusub oo cinwaankeeda asalka ah ay doorato stack-ka martida, ma aha waxa macaamiishu filayey.

Marka xalliyaha macaamiishu uu yahay socket ku xiran, taas oo ah waxa systemd-resolved, dnsmasq iyo inta badan xalliyeyaasha yar yar ay isticmaalaan, wuxuu aqbalaa oo kaliya jawaabaha ka imanaya ciwaanka saxda ah ee uu u diray. Jawaab ka timid 192.168.1.10 oo loo diray weydiinta loo diray 10.6.0.1 waxaa la tuuraa ka hor inta aan wax kala furfurin dhicin. Xalliyaha wuxuu diiwaan gelinayaa jawaab guul leh, macaamiiluna wuxuu diiwaan gelinayaa waqtiga uu dhammaaday, labada dhinacna waa runta sheegayaan.

Sidaa darteed, tirakoobayaashu ma beenaynayaan mana macaamilku. Caddeynta aad u baahan tahay waxay ku jirtaa saddex meelood, sidatan: cinwaanka uu dhageystahu ku xiran yahay, waddada kernel-ka uu ku noqon lahaa macaamilka, iyo cinwaanka isha ee baakadka jawaabta dhabta ah.

Sida kernel-ku u doorto isha jawaabta

Soket UDP ah oo ku xiran0.0.0.0ma laha cinwaan isha u gaar ah, sidaa darteed jawaab kasta oo baxda waxay kicinaysaa raadinta waddada ee meesha loo socdo. Kernel-ku markaa wuxuu ka qaataa isha waddadaas: cinwaanka waddada ku xiran, ama cinwaanka ugu weyn ee isku-xirka baxaya. Waxba laguma xasuusto cinwaanka meesha ee su'aasha.

Kombiyuutar leh hal guri, tani waa mid aan muuqan, sababtoo ah jawaab keliya ayaa macquul ah. Kombiyuutar haysta cinwaanka LAN, cinwaanka WireGuard iyo cinwaanka maamulka, dhowr jawaab ayaa macquul ah, guusha waxay ku xiran tahay jadwalka wadooyinka waqtigaas. Ku dar waddo dheeraad ah, cinwaan labaad isla interface-ka, dib-u-habeyn NAT oo ka horreysa xalliyaha, ama ku shaqee AdGuard weel leh namespace u gaar ah, iyo isha la doortay waxay ka duwanaan kartaa tan uu macaamilku weydiistay.

ss -lunp | grep :53wuxuu muujinayaa ciyaarta aad ku jirto. Dhegeyste ku jira0.0.0.0:53waa xaaladda wildcard; dhegeyste ku jira10.6.0.1:53horey ayuu u go’aamiyay jawaabta. Akhrinta socket-ka ayaa ka dhaqsiyaha badan akhrinta YAML, waxayna muujinaysaa waxa dhab ahaan socda halkii laga muujin lahaa waxa ugu dambeeyay ee la keydiyay.

Waxa bind_hosts dhab ahaan xakameeyo

Guriga AdGuard's Homedns.bind_hostswaa liiska cinwaanada maxalliga ah ee dhageystaha DNS isticmaalo. Waxa la keenay asalka ah waa wildcard, taasoo macnaheedu yahay in la aqbalo cinwaanka maxalliga ah kasta oo u oggolow kernel-ka inuu doorto isha jawaabta. Bedelidda wildcard-ka cinwaanka ay macaamiishu waydiistaan waxay bedeshaa socket-ka, isla markaana ay isbedeshaa cinwaanka isha ee jawaab kasta.

Liisku wuxuu qaataa in ka badan hal gelin, taasoo muhiim u ah xaliyaha u adeegaya labo shabakad. Liis garaynta10.6.0.1iyo192.168.1.10waxay siinaysaa laba sockets oo xidhan, su'aal soo gaadha midkoodna waxaa laga jawaabaa cinwaanka ay ka timid. Taasi waa dhaqanka inta badan dadku u maleynayaan in wildcard-ku horey u bixiyo.

YAML-ku waa mid caadi ah, cinwaanka ku jira waa kan macaamiisha tunnel-kaagu la sheegay inay isticmaalaan, maaha cinwaanka asalka ah ee martida:

dns:
  bind_hosts:
    - 10.6.0.1
  port: 53

Sababta laba rakibid oo hal xaliyaha uu ku kala aragti duwan yahay

Maareyn plugin ah, macnaha qoraalkan, waxaa loola jeedaa in xalliyaha la rakibay oo ay kormeereyso xirmo kale: xirmo firmware router, xirmo NAS ah, ama add-on guriga-automation ah. Xirmadaas badanaa waxay la timaadaa nuqulkeeda AdGuard Home YAML waxayna dib u bilaabaysaa habka jadwalkooda, halka nuqul madax-bannaan uu yahay binary-ga alaabta ama weelka aad adigu dejiso. Si kasta ha ahaatee, waxaad eegaysaa labo hab-maamul madax-bannaan oo leh faylal qaabeyn gooni ah iyo doorashooyin gooni ah oo bind ah, xitaa marka labaduba akhriyaan isla liiska upstream iyo isla liisaska shaandheynta. Mid ayaa ku xidhi kara cinwaanka tunnel-ka gaarka ah halka kan kale uu dhaxlo wildcard-ka, oo interface web-ku wuxuu ka muuqdaa mid la mid ah labada dhinacba.

Taasi waa sababta "xalliyaha isku midka ah ayaa ka shaqayn jiray ka hor guuritaanka" aysan waxba cadaynayn ku saabsan xidhitaanka hadda. Hubi socket-ka, ka dibna hubi faylka qaabeynta ee nidaamka soconaya uu dhab ahaantii raray. Nuqul duugoobay oo ku jira gal kale waa sabab guud sababta wax ka beddelku uusan muuqanin.

Ku dheji, ka dibna ka tijaabi dhinaca tunnel-ka

Bedelbind_hostscinwaanka tunnel-ka, dib u bilow adeegga, oo xaqiiji in socket-ka uu dhaqdhaqaaqay:ss -lunp | grep :53hadda waa inuu muujiyo10.6.0.1:53oo aan lahayn gelin wildcard ah. Haddii ay weli muujiso0.0.0.0,nidaamka soconaya ma akhrinayo faylka aad wax ka beddeshay.

Ka dib ka tijaabi dhinaca macaamiisha, sababtoo ah taasi waa dhinaca kaliya ee muhiimka ah. Weydiin lehdig @10.6.0.1 example.comwaxay ku shaqaysaa jidka uu isticmaalehu isticmaalo, iyo qabasho ku saabsan martida lehtcpdump -ni wg0 udp port 53waxaa muujinaya cinwaanka ilaha ee jawaabta ee fiilada. Isbarbar dhig cinwaankaas iyo kan ku jira dejinta xallinta macmiilka; marka ay is le'eg yihiin, waqtiga dhammaadka ayaa ka tagaya inuu noqdo wax la yaab leh.

ip route get 10.6.0.2wuxuu sharxayaa wixii haray oo aan caadi ahayn, sababtoo ah waxay daabacdaa interface-ka iyo ilaha uu martida adeeggu isticmaalayo si uu ugu noqdo macmiilka. Haddii wax soo saarkaasi uu magacaabo interface-ka LAN, isbeddelka bind ma ahan xalka oo dhan oo miiska wadooyinka waa waxa xiga ee la akhristo.

Waxa aan dejinta bind qaban karin

Ku xidhida dhageystaha ma hagaajinayso liiska gelitaanka ee ka maqan shabakadda tunnel-ka, xeerka firewall-ka ee oggolaanaya codsiga laakiin aan oggolaan jawaabta, ama wado maqan oo dib ugu noqota WireGuard pool. Kuwani waxay fashilmayaan goor hore ama goor dambe marka la eego cinwaanka ilaha, mid kastaana wuxuu leeyahay milkiile ka duwan.

Sidoo kale ma beddeshokaas oo gaarsiinta xallinta macmiilka ku sii gudbiso, ha ahaato in ilaalinta dib-u-xiridda ay diido jawaab gaar ah oo loogu talagalay magac gaar ah, ama sida macmiilku u isticmaalo domain-yadiisa raadinta. Kuwasi waa xakamayno gooni ah. Beddel cinwaanka bind marka ilaha jawaabtu qaldan yihiin, oo wax kale beddel marka aysan ahayn.

Maqaallo la xiriira