repeated records causse "CNAME and OTHER" error in 8.2x
Mark_Andrews at isc.org
Mark_Andrews at isc.org
Wed Jun 23 01:41:24 UTC 1999
The following should fix it.
Mark
Index: src/bin/named/db_update.c
===================================================================
RCS file: /proj/cvs/isc/bind/src/bin/named/db_update.c,v
retrieving revision 8.34
diff -c -r8.34 db_update.c
*** db_update.c 1999/05/18 05:23:22 8.34
--- db_update.c 1999/06/23 01:37:55
***************
*** 587,593 ****
INT32SZ + sizeof(u_char)))
goto delete;
if (dp->d_type == T_CNAME &&
! !NS_OPTION_P(OPTION_MULTIPLE_CNAMES))
if ((flags & DB_REPLACE) == 0 &&
zones[dp->d_zone].z_type ==
Z_PRIMARY) {
--- 587,594 ----
INT32SZ + sizeof(u_char)))
goto delete;
if (dp->d_type == T_CNAME &&
! !NS_OPTION_P(OPTION_MULTIPLE_CNAMES) &&
! db_cmp(dp, odp) != 0)
if ((flags & DB_REPLACE) == 0 &&
zones[dp->d_zone].z_type ==
Z_PRIMARY) {
> Hi,
>
> I've come across the following problem today after upgrading from 8.1.2 to
> 8.2.1. Since 8.2 and above treat a CNAME and OTHER error as a hard error.
> Consider the following zone file where someone
> [me :)] has erroneously repeated an MX and CNAME record:
>
> localhost# less /etc/namedb/foobar.co.uk.zone
> $TTL 172800
> @ IN SOA localhost.noc.clara.net. mivens.clara.net. (
> 1999062225 ; Serial number
> 172800 ; Refresh every two days
> 3600 ; Retry every hour
> 1728000 ; Expire every 20 days
> 172800 ) ; Minimum 2 days
>
>
> IN NS localhost.noc.clara.net.
> IN NS localhost.noc.clara.net.
>
> foo IN MX 10 foo.clara.net.
> ftp.foo IN CNAME bar.clara.net.
>
> ;;;; [snip]
> ;;;; [snip]
> ;;;; [snip]
>
> foo IN MX 10 foo.clara.net.
> ftp.foo IN CNAME bar.clara.net.
>
> Bind 8.2.1 rejects the above zone file:
>
> Jun 22 20:01:17 localhost named[21182]: starting. named 8.2.1 Tue Jun 22
> 14:12:58 BST 1999
> mark at localhost.noc.clara.net:/usr/local/src/bind/src/bin/named
> Jun 22 20:01:17 localhost named[21182]: limit files set to fdlimit (1024)
> Jun 22 20:01:17 localhost named[21182]:
> foobar.co.uk.zone:21:ftp.foo.foobar.co.uk: CNAME and OTHER data error
> Jun 22 20:01:17 localhost named[21182]: master zone "foobar.co.uk" (IN)
> rejected due to errors (serial 1999062225)
> Jun 22 20:01:17 localhost named[21183]: Ready to answer queries.
>
> Nowhere else were any records for foo.foobar.co.uk (or foobar.co.uk itself
> for that matter)efined and the only other zone file in
> named.conf was for the 127.0.0 reverse lookups:
>
> localhost# less /etc/named.conf
> options {
> directory "/etc/namedb";
> query-source address * port 53;
> };
> zone "." {
> type hint;
> file "named.root";
> };
>
> zone "0.0.127.IN-ADDR.ARPA" {
> type master;
> file "localhost.rev";
> };
> zone "foobar.co.uk" {
> type master;
> file "foobar.co.uk.zone";
> };
>
>
> I would have thought with that the problem with the above zone file does not
> constitute a CNAME and OTHER data error. My interpretation would be that only
> if, for example, there was an MX or an A record subsequently defined for
> ftp.foo in the example above should the "CNAME and OTHER" error be generated.
>
> Shouldn't bind only be giving a warning about a repeated record and then
> accept the above zone file?
>
> It's far too easy with a large zone file to make a mistake and duplicate a
> couple of records. If that results in bind 8.2.1 rejecting the zone file for
> a large domain then I would have thought that pretty dangerous.
>
> I was wondering whether others feel this behaviour is incorrect or
> whether my interpretation is wrong.
>
> I also haven't seen an easy way of stopping bind 8.2x treating "CNAME and
> OTHER" errors as soft errors (apart from going back to 8.1.2, of course).
>
> --
> ********************************************************************
> Mark Ivens mivens at clara.net
> ClaraNET Ltd
> ********************************************************************
>
>
--
Mark Andrews, Internet Software Consortium
1 Seymour St., Dundas Valley, NSW 2117, Australia
PHONE: +61 2 9871 4742 INTERNET: marka at isc.org
More information about the bind-users
mailing list