I don't understand the behabior of getaddrinfo(NULL, ...),
{shortage of the background knowledge causes it}, the
problem may be around there, I guess.
Any fault on me?
Hi Koh-ichi,
I think you are looking at the wrong error message. It seems that NSD
ignores the error code returned by getaddrinfo. Something else is going
wrong.
getaddrinfo works fine with node=NULL and service="53". This works on my
FreeBSD 6.1 test server. I think you are having some other error. Below
is a change to nsd.c that prints the error in more detail. Could you use
this and see what is really going on?
Thanks for the report - I'll fix the error message to be more
descriptive for upcoming NSD 3.0.3 and 2.3.7.
> When I invoke nsd without -a option and no 'ip-address:'
> entry on nsd.conf, it complains like
>
> ingram2# /proj/nsd-3.0.2/sbin/nsd -t /proj/nsd3
> [1164349528] nsd[69777]: error: cannot parse address '(null)'
getaddrinfo works fine with node=NULL and service="53". This works on my
FreeBSD 6.1 test server. I think you are having some other error. Below
is a change to nsd.c that prints the error in more detail. Could you use
this and see what is really going on?
Here it is.
ingram2# /proj/nsd-3.0.2/sbin/nsdc start
[1164788497] nsd[97639]: error: cannot parse address '(null)': getaddrinfo: Address family for hostname not supported
BTW, I have no experience of using subversion. How can I
apply this patch? my 'patch' is
kohi@ingram2[4]% patch --version
Patch version 2.1
> Here it is.
>
> ingram2# /proj/nsd-3.0.2/sbin/nsdc start
> [1164788497] nsd[97639]: error: cannot parse address '(null)': getaddrinfo: Address family for hostname not supported
Oops!
Excuse me, because I applied previous patch by hand, so the
nest of parentheses was incorrect, and I correct it now.
Actual message is the following.
ingram2# /pub/src/nsd/nsd-3.0.2-local/nsd -t /proj/nsd3
[1164854165] nsd[5156]: error: cannot parse address '(null)': getaddrinfo: hostname nor servname provided, or not known
Your version will work using the -4 option or ip4-only: yes
I tried -4, it works fine, but this may be out of point
because I got EAI_NONAME, not EAI_FAMILY actually.
I wonder these help or not,
- options INET6 is excluded from my KERNCONF.
- I didn't apply --disable-ipv6 on configure.
Let me just inform you, I tried this case with NSD
3.0.3. Though it brings the following warning, it seems to
work fine.
ingram2# /proj/nsd-3.0.3/sbin/nsd -t /proj/nsd3
[1165811294] nsd[18479]: warning: No IPv6, fallback to IPv4. getaddrinfo: hostname nor servname provided, or not known
Let me just inform you, I tried this case with NSD
3.0.3. Though it brings the following warning, it seems to
work fine.
ingram2# /proj/nsd-3.0.3/sbin/nsd -t /proj/nsd3
[1165811294] nsd[18479]: warning: No IPv6, fallback to IPv4. getaddrinfo: hostname nor servname provided, or not known
Thanks
No problem.
The reason I put in the warning, is that I want to provide the error
message from getaddrinfo to the user. And inform about the fallback
action that is taken. So that an operator that receives a legitimate
error (but only on IP6) will be able to track the source of his problems.