Zdarec,
mám propojené celkem 3 routery přes wireguard (2x modrák, 1x omnia). Mezi sebou mají statické IPv4 a IPv6 routy a každý má svou subdoménu pod jednou doménou. Přes IP se na sebe klienti dostanou, ale rád bych, aby se na sebe dostali i přes doménová jména.
a = Modrák
b = Omnia
Na Omnii už jsem přidal custom.conf pro Knot a do něj:
Očekával jsem, že na Modrákovi bude stačit jen v Luci > Network > DHCP and DNS do políčka DNS forwardings dát /b.dome.na/10.30.0.1 a bude to fungovat, ale nepodařilo se.
Server: 127.0.0.1
Address: 127.0.0.1#53
** server can’t find b-turris.b.dome.na: NXDOMAIN
** server can’t find b-turris.b.dome.na: NXDOMAIN
Pokud vím, v tomhle tabu jde nastavit v podstatě pouze chování dnsmasq. Upstream OpenWrt prostě jiné DNS “nepodporuje” a Turris tenhle tab nemění (myslím, alespoň ne výrazně v tomto ohledu).
Dle rychlého pohledu do /etc/init.d/unbound (který generuje konfigurák pro Unbound) nevidím způsob jak to udělat konfigurací. Leda forwardovat všechno DNS, což jde třeba v reForisu triviálně naklikat.
No ano, to je jednoduchá část. Ale v tom skriptu pro generování konfigurace pro unbound jsem nenašel způsob jak přidat vlastní kusy konfigurace (předtím, na rychlý pohled, můžete zkusit hlouběji). Samozřejmě můžete ten generátor změnit, ale co když ho bude netriviálně měnit i nějaká aktualizace…
Do toho bych se na vašem místě nepouštěl.
Historicky byl problém s LuaJIT ná téhle obskurní variantě powerpc. Později na to upstream měl nějaké patche a @Pepe to myslím zkoušel, ale nevím proč to “nedopadlo”.
Jsem právě zjistil, že je možné přes direktivu include v souboru /etc/config/resolver přeci jen možné do souboru /etc/unbound/unbound.conf něco přidat (dělá to tak třeba adblock). A tak jsem tam přidal odkaz na soubor, který obsahuje řádky výše, ale nic se (ani po restartu) nezměnilo. A tak zase budu chvíli zjiťovat, co dělám blbě nebo jestli je to úplná slepá ulička.
Forwardovat vše nevím jestli se mi chce, to bych zase určitě narazil na jiné překážky…
Historicky byl problém s LuaJIT ná téhle obskurní variantě powerpc. Později na to upstream měl nějaké patche a @Pepe to myslím zkoušel, ale nevím proč to “nedopadlo”.
Bohužel, ať jsem zkoušel jakoukoliv verzi *JIT (moonjit a teď už vlastně luajit2), tak s tím máme problémy, které nám znemožnují používat Knot Resolver na powerpc. Např.
Ale vypadá to, že LuaJIT repozitář ožívá a možná by to stálo za to, abychom to vyzkoušeli, ale nevidím to moc reálně. A ano, dost by nám pomohlo, když na všech routerech bychom měli Knot Resolver.
Dobře, to tedy vypadá na konfigurační chybu, a Unbound se zřejmě dívá do veřejného DNS. Zkontrolujte za běhu v /var/etc/unbound/unbound.conf, jestli tam je řádek include: s cestou ke konfiguračnímu snippetu.
Pokud ne, nastavení v /etc/config/resolver musí vypadat takhle:
config resolver 'unbound_includes'
list include_path "/etc/unbound/snippet.conf"
A startovat pomocí /etc/init.d/resolver restart (Tohle je Turris-specifická věc, kdy startovací skript resolver spouští unbound na PPC a kresd na ostatních.)
Udělal jsem “cat” zmíněných souborů a všiml jsem si, že v include se místo uvozovek, mezi kterými je doména, zobrazuje jakýsi patvar. Nahradil jsem ho tedy " a po restartu se výstup změnil na: ;; connection timed out; no servers could be reached
Nevím, kde přesně bych měl hledat. Když dám restart, tak si to moc nestěžuje:
root@budweis-turris:~# /etc/init.d/resolver restart
Called /etc/init.d/unbound stop
set dhcp script
ls: /etc/resolv.conf.vpn.*: No such file or directory
Check generated config /var/etc/unbound/unbound.conf:
unbound-checkconf: no errors in /var/etc/unbound/unbound.conf
Called /etc/init.d/unbound start
set dhcp script
Called /etc/resolver/dhcp_host_domain_ng.py
Zapnul jsem si logování samotného unbound, kde se objevuje:
[1644270981] unbound[18026:0] info: 127.0.0.1 b-turris.b.dome.na. A IN
[1644270981] unbound[18026:0] info: 127.0.0.1 b-turris.b.dome.na. AAAA IN
Takže pro normální resolving to funguje, jen nefunguje privátní doména?
Tak to vypadá, že jde o druhotný problém - unbound se zřejmě nedokáže spojit se servery pro danou forward zónu. Zkuste, jestli na dotaz na ty adresy, kam se forwarduje, skutečně funguje.