DNS lookup fails if there are too many records records (e.g. smtp.googlemail.com)
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
glibc (Ubuntu) |
Confirmed
|
Undecided
|
Unassigned |
Bug Description
Binary package hint: libc6
I have a strange problem with DNS lookups to smtp.googlemail.com (and probably other addresses that have lots of IP records associated to them). This is what happens with the host command:
$ host smtp.googlemail.com
;; Truncated, retrying in TCP mode.
;; Connection to 192.168.
The same happens with dig or nslookup. I verified this with several computers on different DSL connections. With windows, things are a bit different: Most 'normal' programs are able to lookup the address (including telnet), however the windows nslookup also leads an error message. Interestingly, Linux as Windows both are successfull the first time after booting, but then never again.
According to a quick google search, the problem seems to be that the DNS record for smtp.googlemail.com is too big for a single UDP packet. A second problem is that my router (a "FritzBox" from AVM) does not use an alternate TCP connection. Thirdly, linux discards the whole truncated answer, instead of trying to find something useful in the truncated answer. This is possible, as the use of dig +ignore shows:
$ dig +ignore smtp.googlemail.com
; <<>> DiG 9.5.0-P2 <<>> +ignore smtp.googlemail.com
;; global options: printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 39851
;; flags: qr rd ra; QUERY: 1, ANSWER: 25, AUTHORITY: 3, ADDITIONAL: 0
;; QUESTION SECTION:
;smtp.googlemai
;; ANSWER SECTION:
smtp.googlemail
googlemail-
googlemail-
googlemail-
googlemail-
googlemail-
googlemail-
googlemail-
googlemail-
googlemail-
googlemail-
googlemail-
googlemail-
googlemail-
googlemail-
googlemail-
googlemail-
googlemail-
googlemail-
googlemail-
googlemail-
googlemail-
googlemail-
googlemail-
googlemail-
;; AUTHORITY SECTION:
l.google.com. 64587 IN NS c.l.google.com.
l.google.com. 64587 IN NS d.l.google.com.
l.google.com. 64587 IN NS e.l.google.com.
;; Query time: 44 msec
;; SERVER: 192.168.
;; WHEN: Mon Feb 9 21:46:43 2009
;; MSG SIZE rcvd: 508
I suppose this is what Windows does. Since the FritzBox routers are VERY popular in Germany and LOTS of people use googlemail, I consider this a quite severe problem (my mother wasn't able to send mails for a week ...). I'm not totally sure that libc6 is the right place for this, but since all programs (thunderbird, ...) are unable to connect to smtp.googlemail
I believe I have the same problem, but its not happening with smtp.google.com, but with www.google.com. I have this output for dig:
pablo@warifaifa :~$dig www.google.com 0.1#53( 192.168. 0.1) for www.google.com failed: connection refused.
;; Truncated, retrying in TCP mode.
;; Connection to 192.168.
Adding the +ignore flag i get this:
pablo@warifaifa:~$ dig www.google.com +ignore
; <<>> DiG 9.5.1-P1 <<>> www.google.com +ignore
;; global options: printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 65181
;; flags: qr tc rd ra; QUERY: 1, ANSWER: 25, AUTHORITY: 4, ADDITIONAL: 0
;; QUESTION SECTION:
;www.google.com. IN A
;; ANSWER SECTION:
www.google.com. 603325 IN CNAME www.l.google.com.
www.l.google.com. 25 IN A 190.45.0.37
www.l.google.com. 25 IN A 190.45.0.38
www.l.google.com. 25 IN A 190.45.0.39
www.l.google.com. 25 IN A 190.45.0.16
www.l.google.com. 25 IN A 190.45.0.17
www.l.google.com. 25 IN A 190.45.0.18
www.l.google.com. 25 IN A 190.45.0.19
www.l.google.com. 25 IN A 190.45.0.20
www.l.google.com. 25 IN A 190.45.0.21
www.l.google.com. 25 IN A 190.45.0.22
www.l.google.com. 25 IN A 190.45.0.23
www.l.google.com. 25 IN A 190.45.0.24
www.l.google.com. 25 IN A 190.45.0.25
www.l.google.com. 25 IN A 190.45.0.26
www.l.google.com. 25 IN A 190.45.0.27
www.l.google.com. 25 IN A 190.45.0.28
www.l.google.com. 25 IN A 190.45.0.29
www.l.google.com. 25 IN A 190.45.0.30
www.l.google.com. 25 IN A 190.45.0.31
www.l.google.com. 25 IN A 190.45.0.32
www.l.google.com. 25 IN A 190.45.0.33
www.l.google.com. 25 IN A 190.45.0.34
www.l.google.com. 25 IN A 190.45.0.35
www.l.google.com. 25 IN A 190.45.0.36
;; AUTHORITY SECTION:
l.google.com. 84925 IN NS b.l.google.com.
l.google.com. 84925 IN NS c.l.google.com.
l.google.com. 84925 IN NS d.l.google.com.
l.google.com. 84925 IN NS e.l.google.com.
;; Query time: 13 msec 0.1#53( 192.168. 0.1)
;; SERVER: 192.168.
;; WHEN: Mon Mar 16 01:24:56 2009
;; MSG SIZE rcvd: 500