Hello,
i have a problem with a dns server. It is running bind 9.4.1 (compiled with "-enable-ipv6") on an AIX 5.3 system. The server starts without any errors or warnings. I am also able to lookup names for IPv4 adresses. But with IPv6 i have a strange problem.
When i execute the following dig command everything looks fine:
dig -t AAAA @localhost host1.v6mainzlab.com:
; <<>> DiG 9.2.0 <<>> -t AAAA @localhost host1.v6mainzlab.com
;; global options: printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 63726
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 1
;; QUESTION SECTION:
;host1.v6mainzlab.com. IN AAAA
;; ANSWER SECTION:
host1.v6mainzlab.com. 86400 IN AAAA 2007::239
;; AUTHORITY SECTION:
v6mainzlab.com. 86400 IN NS ns.v6mainzlab.com.
;; ADDITIONAL SECTION:
ns.v6mainzlab.com. 86400 IN AAAA 2007::239
;; Query time: 23 msec
;; SERVER: 127.0.0.1#53(localhost)
;; WHEN: Tue Jun 26 15:06:10 2007
;; MSG SIZE rcvd: 111
But when i use ::1 instead of localhost i get the following output:
dig -t AAAA @::1 host1.v6mainzlab.com:
; <<>> DiG 9.2.0 <<>> -t AAAA @::1 host1.v6mainzlab.com
;; global options: printcmd
;; connection timed out; no servers could be reached
Ok, it seems as if the server does not listen to IPv6 request. But when i force dig to use TCP instead of UDP everything looks good:
dig -t AAAA +vc @::1 host1.v6mainzlab.com:
; <<>> DiG 9.2.0 <<>> -t AAAA +vc @::1 host1.v6mainzlab.com
;; global options: printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 58888
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 1
;; QUESTION SECTION:
;host1.v6mainzlab.com. IN AAAA
;; ANSWER SECTION:
host1.v6mainzlab.com. 86400 IN AAAA 2007::239
;; AUTHORITY SECTION:
v6mainzlab.com. 86400 IN NS ns.v6mainzlab.com.
;; ADDITIONAL SECTION:
ns.v6mainzlab.com. 86400 IN AAAA 2007::239
;; Query time: 2 msec
;; SERVER: ::1#53(::1)
;; WHEN: Tue Jun 26 15:09:36 2007
;; MSG SIZE rcvd: 111
The DNS server seems to be listening on TCP as well as UDP when i execute
netstat -ant | grep "\.53":
tcp6 0 0 *.53 *.* LISTEN
tcp4 0 0 127.0.0.1.53 *.* LISTEN
tcp4 0 0 5.55.55.239.53 *.* LISTEN
udp4 0 0 127.0.0.1.53 *.*
udp4 0 0 5.55.55.239.53 *.*
udp6 4142 0 *.53 *.*
I hope someone can help me. Why does it work via TCP, but not via UDP? Any Ideas?