Knot Resolver - překlad neznámých adres

Knot Resolver - překlad neznámých adres
« kdy: 07. 10. 2019, 20:46:59 »
Zdravím.

Nasadil jsem na serveru knot resolver místo bindu. Narazil jsem na problém, že knot překládá i nesmyslné názvy bez domény.
Kód: [Vybrat]
ping asdgdfgetiwoejdsNa PC s Windows, které tento resolver používá jako DNS server, dochází k pingu na ip adresu serveru.
S bindem to ve Windows hodí
Kód: [Vybrat]
Ping request could not find host ...
Konfigurace knotu...
Kód: [Vybrat]
modules = {
        'hints > iterate',  -- Load /etc/hosts and allow custom root hints
        'stats',            -- Track internal statistics
        'predict',          -- Prefetch expiring/frequent records
        'policy > hints',   -- Policy AFTER hints
        'view   < cache'    -- View BEFORE cache
}

-- Cache size
cache.size = 100 * MB

policy.add(policy.all(policy.TLS_FORWARD({
        { '1.1.1.1', hostname='cloudflare-dns.com' },
        { '2606:4700:4700::1111', hostname='cloudflare-dns.com' },
        { '193.17.47.1', hostname='odvr.nic.cz' },
        { '2001:148f:ffff::1', hostname='odvr.nic.cz' },
})))

V čem může být problém?

Předem díky.
« Poslední změna: 07. 10. 2019, 22:44:26 od Petr Krčmář »


vcunat

  • ***
  • 122
    • Zobrazit profil
    • E-mail
Re:knot resolver - překlad neznámých adres
« Odpověď #1 kdy: 07. 10. 2019, 21:27:08 »
To bude chtít více detailů - třeba log z --verbose módu (to jako parametr nebo verbose(true) v konfiguraci), ale nikdy jsem takové odpovědi od kresd neviděl ani nevím jak by se to mohlo stát.  Navíc díky TLS_FORWARD by nemělo být možné DNS manipulovat u ISP a Cloudflare a ODVR jsou v tomto celkem spolehlivé.

Takže spíš tipuji že se ten dotaz ke kresd nedostane, nebo tak něco.  Viděl jsem třeba nastavení, že "nenalezená jména" se zkouší i v "podnikové doméně" foo.bar.cz a zrovna na potvoru existuje v té doméně i wildcard který sežere všechny překlepy jako nalezené.

Mimochodem, 'policy > hints' nepomůže k použitím hints před policy, stejně tak 'view < cache'.  To proto, že policy a view se používají na začátku celého requestu a hints a cache v průběžných krocích při jeho řešení.

vcunat

  • ***
  • 122
    • Zobrazit profil
    • E-mail
Re:knot resolver - překlad neznámých adres
« Odpověď #2 kdy: 07. 10. 2019, 21:40:17 »
Možná i jednoduchý
Kód: [Vybrat]
nslookup abcde napoví co se děje.

Re:knot resolver - překlad neznámých adres
« Odpověď #3 kdy: 07. 10. 2019, 21:53:07 »
...zrovna na potvoru existuje v té doméně i wildcard který sežere všechny překlepy jako nalezené...

Je to tak, vypada, ze za to muzou wildcards u domeny serveru...
Kód: [Vybrat]
kresd[20751]: [52359.16][iter]   <= rcode: NOERROR
kresd[20751]: [52359.16][iter]   <= cname chain, following
kresd[20751]: [00000.00][plan] plan 'example.com.' type 'A' uid [52359.17]
kresd[20751]: [52359.16][cach]   => stashed aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbb.example.com. CNAME, rank 030, 30 B total, incl. 0 RRSIGs
kresd[20751]: [52359.16][resl]   <= server: '2606:4700:4700::1111' rtt: 27 ms
kresd[20751]: [52359.17][iter]   'example.com.' type 'A' new uid was assigned .18, parent uid .00
kresd[20751]: [52359.18][cach]   => satisfied by exact RRset: rank 030, new TTL 470
kresd[20751]: [52359.18][iter]   <= rcode: NOERROR
kresd[20751]: [52359.18][resl]   AD: request NOT classified as SECURE
kresd[20751]: [52359.18][resl]   finished: 0, queries: 7, mempool: 32800 B
kresd[20751]: [11239.16][iter]   <= rcode: NOERROR
kresd[20751]: [11239.16][iter]   <= cname chain, following
kresd[20751]: [00000.00][plan] plan 'example.com.' type 'AAAA' uid [11239.17]
kresd[20751]: [11239.16][cach]   => not overwriting CNAME aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbb.example.com.
kresd[20751]: [11239.16][resl]   <= server: '2606:4700:4700::1111' rtt: 27 ms
kresd[20751]: [11239.17][iter]   'example.com.' type 'AAAA' new uid was assigned .18, parent uid .00
kresd[20751]: [11239.18][cach]   => satisfied by exact RRset: rank 030, new TTL 470
kresd[20751]: [11239.18][iter]   <= rcode: NOERROR
kresd[20751]: [11239.18][resl]   AD: request NOT classified as SECURE
kresd[20751]: [11239.18][resl]   finished: 0, queries: 7, mempool: 49200 B

A u bindu to nedelalo, protoze, tam byl pro tuhle domenu (example.com) lokalni zonovy soubor bez wildcards.

Diky!

Re:Knot Resolver - překlad neznámých adres
« Odpověď #4 kdy: 08. 10. 2019, 20:51:56 »
Tak primární příčina byla jinde, dhcpd server propagoval
Kód: [Vybrat]
option domain-name "example.com"a ve spojení s wildcards u domény to pak ve Windows provádělo zmíněné psí kusy  :D