BIND 9.3.2 and temp box.

Kevin Darcy kcd at daimlerchrysler.com
Wed Dec 6 04:21:33 UTC 2006


Barry Margolin wrote:
> In article <el4pnf$3cp$1 at sf1.isc.org>,
>  Mark Andrews <Mark_Andrews at isc.org> wrote:
>
>   
>>> On Dec 5 2006, Bill Larson wrote:
>>> [...]
>>>       
>>>> Please take a look at the BIND FAQ at http://www.isc.org/sw/bind/FAQ.php
>>>>
>>>> It says:
>>>>
>>>> 	Q: Why does named log the warning message "no TTL specified - using  
>>>> SOA MINTTL instead"?
>>>> 	A: Your zone file is illegal according to RFC1035. It must either  
>>>> have a line like:
>>>> 	$TTL 86400
>>>> 	at the beginning, or the first record in it must have a TTL field,  
>>>> like the "84600" in this example:
>>>>
>>>> 	example.com. 86400 IN SOA ns hostmaster ( 1 3600 1800 1814400 3600 )
>>>>         
>>> Of course, it's a bit strange that it says that, as it should be quoting
>>> RFC2308 rather than RFC1035!
>>>
>>> -- 
>>> Chris Thompson
>>> Email: cet1 at cam.ac.uk
>>>       
>> 	No.  It is RFC 1035 inheritance rules which are not being met.
>>     
>
> But RFC 1035 is generally interpreted to say that the SOA MINIMUM field 
> specifies the default TTL, and this is how implementations worked before 
> $TTL was introduced.
>   
RFC 1035 says "Omitted class and TTLvalues are default to the last 
explicitly stated values.". This _implies_ that at least one RR -- the 
first one -- must have explicitly stated values, since there is no 
"last" from which to inherit in that case. Also, RFC 1035 defined the 
SOA.MINIMUM to be exactly that -- the minimum -- not the "default" as 
some implementations redefined it later.
> Notice that the sample master file in section 5.3 of RFC 1035 has no 
> explicit TTLs.  Thus, RFC 1035 violates itself according to you
>   
That's a good point, but I think at most it proves that the example is 
formatted badly. The declaratory text of a standard takes precedence 
over the quality of any examples that are presented, I would think.

The simple fact remains that there is no standard which unambiguously 
allows the first RR of a master file to omit the TTL, in the absence of 
a $TTL directive, and at least one standard (1035), which clearly 
implies that a TTL is mandatory for the first RR. The fact that RFC 2308 
finally clarified the point doesn't make it the relevant standard here.

E.g. If one municipal statute said no spitting on the sidewalk and a 
subsequent statute clarified what was meant by "spitting" (or for that 
matter, "sidewalk"), it would still be the first statute under which 
people would/could be prosecuted. Clarifications of rules are not 
necessarily rules themselves.

                                                                         
                  - Kevin



More information about the bind-users mailing list