[prev in list] [next in list] [prev in thread] [next in thread]
List: debian-devel
Subject: Re: boot ordering and resolvconf
From: Thomas Hood <jdthood () gmail ! com>
Date: 2013-06-30 20:40:03
Message-ID: 51D097A3.9020606 () gmail ! com
[Download RAW message or body]
Helmut Grohne wrote:
> All that I am aiming for is to declare one of the following practises
> as broken:
>
> * Treating an empty /etc/resolv.conf as a permanent error or failing
> to discover changes in /etc/resolv.conf later on.
> * Changing /etc/resolv.conf during startup of a local dns cache.
I think that the first one is broken. If name service is unavailable
just after boot then that should not be treated as a permanent error.
An answer from a nameserver that a domain name does not
exist might more reasonably be treated as a permanent error,
but that is disputable. In a world where computers move among
LANs, DNS does not always look the same, so it's not unreasonable
to retry periodically even after being told NXDOMAIN.
A problem is that getaddrinfo() doesn't distinguish in its return
status between "couldn't reach a nameserver" and "nameserver
says the name doesn't exist". Either way it returns EAI_SYSTEM
with errno=2 (ENOENT).
> > I am not aware that there is anything (except perhaps ntpd) that needs to be fixed.
>
> It is true, that ntpd can work around this issue. Still it appears like
> a bad design to treat EAI_SYSTEM as a temporary error.
Can you explain why you think that?
--
Thomas
[Attachment #3 (text/html)]
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1">
</head>
<body text="#000000" bgcolor="#FFFFFF">
Helmut Grohne wrote:<br>
<blockquote type="cite">
<meta http-equiv="content-type" content="text/html;
charset=ISO-8859-1">
<pre style="color: rgb(0, 0, 0); font-style: normal; font-variant: normal; \
font-weight: normal; letter-spacing: normal; line-height: normal; orphans: auto; \
text-align: start; text-indent: 0px; text-transform: none; widows: auto; \
word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: \
0px;">All that I am aiming for is to declare one of the following practises as \
broken:
* Treating an empty /etc/resolv.conf as a permanent error or failing
to discover changes in /etc/resolv.conf later on.
* Changing /etc/resolv.conf during startup of a local dns cache.</pre>
</blockquote>
<br>
<br>
I think that the first one is broken. If name service is
unavailable<br>
just after boot then that should not be treated as a permanent
error.<br>
<br>
An answer from a nameserver that a domain name does not<br>
exist might more reasonably be treated as a permanent error,<br>
but that is disputable. In a world where computers move among<br>
LANs, DNS does not always look the same, so it's not unreasonable<br>
to retry periodically even after being told NXDOMAIN.<br>
<br>
A problem is that getaddrinfo() doesn't distinguish in its return<br>
status between "couldn't reach a nameserver" and "nameserver<br>
says the name doesn't exist". Either way it returns EAI_SYSTEM<br>
with errno=2 (ENOENT).<br>
<br>
<br>
<blockquote type="cite">
<meta http-equiv="content-type" content="text/html;
charset=ISO-8859-1">
<pre style="color: rgb(0, 0, 0); font-style: normal; font-variant: normal; \
font-weight: normal; letter-spacing: normal; line-height: normal; orphans: auto; \
text-align: start; text-indent: 0px; text-transform: none; widows: auto; \
word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: \
0px;">> I am not aware that there is anything (except perhaps ntpd) that needs to \
be fixed.
It is true, that ntpd can work around this issue. Still it appears like
a bad design to treat EAI_SYSTEM as a temporary error.</pre>
</blockquote>
<br>
Can you explain why you think that?<br>
-- <br>
Thomas<br>
<br>
</body>
</html>
--
To UNSUBSCRIBE, email to debian-devel-REQUEST@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmaster@lists.debian.org
Archive: http://lists.debian.org/51D097A3.9020606@gmail.com
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic