Ako zakazat IPv6 DNS AAAA otazky?

Pavel Kankovsky peak na argo.troja.mff.cuni.cz
Neděle Duben 28 17:49:29 CEST 2002


On Sat, 27 Apr 2002, Stanislav Meduna wrote:

> Dovodom je, ze resolver posiela ako prve IPv6 DNS queries (AAAA)
> na adresu uvedenu v resolv.conf. Pokial dotycny router nie je prave
> pripojeny cez ISDN a nepozna teda nadradeny DNS server, taketo
> ziadosti ignoruje a vysledkom je cakanie na timeout. Dokonca aj ked
> je dotycny host v /etc/hosts a v nsswitch.conf je ako prve files,
> sprava sa to rovnako. Toto dokonca vyvadza aj pre localhost -
> vid tcpdump:
[...]
> Zaujimave je, ze nie vsetci klienti sa spravaju takto.
> telnet, ssh posielaju AAAA, sendmail posle najprv ANY a potom
> AAAA, ping a moja aplikacia (pouzivajuca obycajny gethostbyname)
> si vystacia s /etc/hosts.

To bude mozna tim, ze nektere programy pouzivaji misto gethostbyname nova
a sqela volani getaddrinfo a getnameinfo. Chovani sendmailu je pak dane
jeho specialni funkci: ten dotaz na ANY je ve skutecnosti asi dotaz na
CNAME, ale dela ANY kvuli tomu, ze kdysi davno nejake resolvery dotaz
primo na CNAME nezvladaly (zajimave je, ze mezi ANY a AAAA neni dotaz MX).

> Da sa to nejako vypnut? Google poradil, ze v nsswitch je podobne
> ako hosts aj ipnodes pre IPv6, to sa ale netykalo linuxu a u mna
> to nemalo ziadny efekt. Inak som nasiel akurat podobne postihnutych.

Efekt by to melo mit, i kdyz priznavam, ze na Linuxu jsem to v akci 
nikdy nevidel. Ovsem je to komplikovanejsi: bylo by treba napsat
do nsswitch.conf neco jako "ipnodes: files dns" a vyrobit soubor
kdovijakeho jmena (/etc/ipnodes?) a kdovijakeho obsahu, do ktereho se
napisou ty adresy (pochopitelne by musely byt IPv6). Mozna by ten soubor
stacil i prazdny a vynechat dns v nsswitch.conf, aby se dotazy na AAAA
inhibovaly. Tedy opet za predpokladu, ze to nekdo bere na vedomi. "The
truth is out there...in glibc sources."

--Pavel Kankovsky aka Peak  [ Boycott Microsoft--http://www.vcnet.com/bms ]
"Resistance is futile. Open your source code and prepare for assimilation."



Další informace o konferenci Linux