Sisällysluettelo

Qmail ja "CNAME lookup failed" virhe

Qmail-sähköpostipalvelimessa on nähtävästi bugi paljon tietoa sisältävien nimipalvelutietojen kanssa joka tulee esille esimerkiksi jos kohdedomainilla on käytössä DNSSEC turvajärjestelyt nimipalveluissa, kuten iki:llä on.

Koska DNSSEC ja muut nimipalveluihin lisätyt tiedot ovat yleistymässä joutunevat qmail-ohjelmiston ylläpitäjät päivittämään qmailinsa.

Iki on saanut (4/2012) muutamia ongelmaraportteja jotka on selvitetty johtuviksi tästä qmail-ongelmasta. IKI ei siis itse käytä qmail:ia vaan muilla jotka käyttävät qmail:ia on ongelmia mm. DNSSECin yleistyessä.

Teknisiä tietoja

DNSSEC-yhteensopivuusongelmasta johtuva sähköpostin epäonnistunut lähetys antaa qmail-palvelimelta virheilmoituksen:

CNAME lookup failed temporarily. (#4.4.3)

Sivulla <http://forum.parallels.com/showthread.php?t=94234> sanotaan näin qmailista:

And lastly it can be caused by the fact that [...] has too many MX records defined 
and response from DNS server  exceeds limit of 512 bytes. If this is the case then 
you can use one of qmail patches:
http://lifewithqmail.org/lwq.html#dns-patches

mikä taas sanoo

5.10.2. DNS
Historically, DNS responses have been limited to 512 bytes. Some large sites have
started returning MX responses longer than that. qmail and many other programs have
a problem with Domain Name Server (DNS) queries that return very large results. 
There are two ways to fix this in qmail and one workaround that might be sufficient 
for some applications.

Qmail tekee nähtävästi ”ANY” DNS-kyselyitä jotka palauttavat kaikki tietueet, myös DNSSECin isokokoiset avaintietueet, vaikka kyselyn tehnyt ei niitä tarvitsisikaan. Muitakin DNS-tietueita on yleisesti käytössä (TXT, SPF, ym) jotka voivat saada DNS-kyselyn paluuarvon koon suuremmaksi kuin antiikkinen 512 tavun kokorajoitus.

Ongelma eskaloituu vikatilanteeksi koska qmail tuntuu olevan turhan tiukkapipoinen eikä selviä tästä nimipalveluongelmasta, FAQ <http://www.qmail.org/qmail-manual-html/misc/FAQ.html#2.5.> kertoo seuraavaa:

Answer: The SMTP standard does not permit aliased hostnames, so qmail
has to do a CNAME lookup in DNS for every sender and recipient host. If
the relevant DNS server is down, qmail defers the message. It will try
again soon.

Aiheeseen liittyviä linkkejä