Re: Assistance Needed: "Too Many Records" Error When Reloading Zone `example.com`, BIND: 9.18.29

2024-09-22 Thread Peter Davies
Hi Nagesh, 
Two new settings "max-records-per-type" and "max-types-per-name " were 
introduced in BIND 9.18.28 
See BIND 9.18.28 Release Notes at: 
https://downloads.isc.org/isc/bind9/9.18.30/doc/arm/html/notes.html#notes-for-bind-9-18-28
 

The "max-records-per-type" default setting is 100. 
https://downloads.isc.org/isc/bind9/9.18.30/doc/arm/html/reference.html#namedconf-statement-max-records-per-type
 
The "max-types-per-name" default setting is 100. 
https://downloads.isc.org/isc/bind9/9.18.30/doc/arm/html/reference.html#namedconf-statement-max-types-per-name
 

/Peter 


From: "Nagesh Thati"  
To: "bind-users"  
Sent: Monday, 23 September, 2024 07:48:32 
Subject: Assistance Needed: "Too Many Records" Error When Reloading Zone 
`example.com`, BIND: 9.18.29 

Hi BIND Community, 

I hope this message finds you well. 

We are encountering an issue with our DNS zone ` [ http://example.com/ | 
example.com ] `, which contains approximately 10,000 resource records of 
various types, including A, CNAME, TXT, and MX records. When attempting to 
perform an `rndc reload` for this zone, we receive a “too many records” error. 
Below are the details of the error and relevant log excerpts for your 
reference: 

BIND Version: 
ISC BIND 9.18.29 

Command Executed: 
# rndc reload [ http://example.com/ | example.com ] 
rndc: 'reload' failed: too many records 

`named.log` Output: 
23-Sep-2024 10:21:04.886 query-errors: info: client @0x7f2f17d25168 
127.0.0.1#39206 ( [ http://example.com/ | example.com ] ): query failed (zone 
not loaded) for [ http://example.com/IN/SOA | example.com/IN/SOA ] at 
query.c:5676 
23-Sep-2024 10:21:20.782 zoneload: error: zone [ http://example.com/IN | 
example.com/IN ] : loading from master file /var/named/zones/ [ 
http://db.example.com/ | db.example.com ] failed: too many records 
23-Sep-2024 10:21:20.782 zoneload: error: zone [ http://example.com/IN | 
example.com/IN ] : not loaded due to errors. 

`general.log` Output: 
23-Sep-2024 10:33:48.625 general: info: received control channel command 
'reload [ http://example.com/ | example.com ] ' 
23-Sep-2024 10:33:48.625 general: debug 1: zone_startload: zone [ 
http://example.com/IN | example.com/IN ] : enter 
23-Sep-2024 10:33:48.629 general: error: dns_master_load: /var/named/zones/ [ 
http://db.example.com:995/ | db.example.com:995 ] : [ http://text.example.com/ 
| text.example.com ] : too many records 

Zone File Excerpt (Line 995): 
990 [ http://text.example.com/ | text.example.com ] . 5000 IN TXT "Example 
Infrastructure Asset ID: 209 for [ http://us-lcm-01.example.com/ | 
us-lcm-01.example.com ] . created on 2024-05-28" 
991 [ http://text.example.com/ | text.example.com ] . 5000 IN TXT "Example 
Infrastructure Asset ID: 211 for [ http://us-vra.example.com/ | 
us-vra.example.com ] . created on 2024-05-28" 
992 [ http://text.example.com/ | text.example.com ] . 5000 IN TXT "Example 
Infrastructure Asset ID: 212 for [ http://us-vdm.example.com/ | 
us-vdm.example.com ] . created on 2024-05-28" 
993 [ http://text.example.com/ | text.example.com ] . 5000 IN TXT "Example 
Infrastructure Asset ID: 217 for [ http://us-twlcm-01.example.com/ | 
us-twlcm-01.example.com ] . created on 2024-05-28" 
994 [ http://text.example.com/ | text.example.com ] . 5000 IN TXT "Example 
Infrastructure Asset ID: 220 for [ http://us-lcm-02.example.com/ | 
us-lcm-02.example.com ] . created on 2024-05-29" 
995 [ http://text.example.com/ | text.example.com ] . 5000 IN TXT "Example 
Infrastructure Asset ID: 225 for [ http://us-dev-remote-50.example.com/ | 
us-dev-remote-50.example.com ] . created on 2024-05-29" 
996 [ http://text.example.com/ | text.example.com ] . 5000 IN TXT "Example 
Infrastructure Asset ID: 228 for [ http://us-vdm-02.example.com/ | 
us-vdm-02.example.com ] . created on 2024-05-29" 
997 [ http://text.example.com/ | text.example.com ] . 5000 IN TXT "Example 
Infrastructure Asset ID: 230 for [ http://us-lcm-03.example.com/ | 
us-lcm-03.example.com ] . created on 2024-05-29" 
998 [ http://text.example.com/ | text.example.com ] . 5000 IN TXT "Example 
Infrastructure Asset ID: 235 for [ http://us-dev-remote-51.example.com/ | 
us-dev-remote-51.example.com ] . created on 2024-05-29" 
999 [ http://text.example.com/ | text.example.com ] . 5000 IN TXT "Example 
Infrastructure Asset ID: 240 for [ http://us-twlcm-02.example.com/ | 
us-twlcm-02.example.com ] . created on 2024-05-29" 

Issue Summary: 
Zone Definition : ` [ http://example.com/ | example.com ] ` 
Number of Records : ~10,000 (A, CNAME, TXT, MX) 
Error Encountered : `rndc: 'reload' failed: too many records` 
Logs Indicate : The zone failed to load due to the excessive number of records, 
specifically pointing to TXT records at line 995. 

Additional Information: 
- Zone File Structure: The zone file contains a high number of TXT records, 
particularly for infrastructure asset IDs. 

Request for Assistance: 
1. Understanding the Limit: Is there a configurable limit in BIND that 
restricts the number of

Assistance Needed: "Too Many Records" Error When Reloading Zone `example.com`, BIND: 9.18.29

2024-09-22 Thread Nagesh Thati
Hi BIND Community,

I hope this message finds you well.

We are encountering an issue with our DNS zone `example.com`, which
contains approximately 10,000 resource records of various types, including
A, CNAME, TXT, and MX records. When attempting to perform an `rndc reload`
for this zone, we receive a “too many records” error. Below are the details
of the error and relevant log excerpts for your reference:

*BIND Version:*
ISC BIND 9.18.29

*Command Executed:*
# rndc reload example.com
rndc: 'reload' failed: too many records

*`named.log` Output:*
23-Sep-2024 10:21:04.886 query-errors: info: client @0x7f2f17d25168
127.0.0.1#39206 (example.com): query failed (zone not loaded) for
example.com/IN/SOA at query.c:5676
23-Sep-2024 10:21:20.782 zoneload: error: zone example.com/IN: loading from
master file /var/named/zones/db.example.com failed: too many records
23-Sep-2024 10:21:20.782 zoneload: error: zone example.com/IN: not loaded
due to errors.

*`general.log` Output:*
23-Sep-2024 10:33:48.625 general: info: received control channel command
'reload example.com'
23-Sep-2024 10:33:48.625 general: debug 1: zone_startload: zone
example.com/IN: enter
23-Sep-2024 10:33:48.629 general: error: dns_master_load: /var/named/zones/
db.example.com:995: text.example.com: too many records

*Zone File Excerpt (Line 995):*
990 text.example.com. 5000 IN TXT "Example Infrastructure Asset ID: 209 for
us-lcm-01.example.com. created on 2024-05-28"
991 text.example.com. 5000 IN TXT "Example Infrastructure Asset ID: 211 for
us-vra.example.com. created on 2024-05-28"
992 text.example.com. 5000 IN TXT "Example Infrastructure Asset ID: 212 for
us-vdm.example.com. created on 2024-05-28"
993 text.example.com. 5000 IN TXT "Example Infrastructure Asset ID: 217 for
us-twlcm-01.example.com. created on 2024-05-28"
994 text.example.com. 5000 IN TXT "Example Infrastructure Asset ID: 220 for
us-lcm-02.example.com. created on 2024-05-29"
*995 text.example.com . 5000 IN TXT "Example
Infrastructure Asset ID: 225 for us-dev-remote-50.example.com
. created on 2024-05-29"*
996 text.example.com. 5000 IN TXT "Example Infrastructure Asset ID: 228 for
us-vdm-02.example.com. created on 2024-05-29"
997 text.example.com. 5000 IN TXT "Example Infrastructure Asset ID: 230 for
us-lcm-03.example.com. created on 2024-05-29"
998 text.example.com. 5000 IN TXT "Example Infrastructure Asset ID: 235 for
us-dev-remote-51.example.com. created on 2024-05-29"
999 text.example.com. 5000 IN TXT "Example Infrastructure Asset ID: 240 for
us-twlcm-02.example.com. created on 2024-05-29"

*Issue Summary:*
*Zone Definition*: `example.com`
*Number of Records*: ~10,000 (A, CNAME, TXT, MX)
*Error Encountered*: `rndc: 'reload' failed: too many records`
*Logs Indicate*: The zone failed to load due to the excessive number of
records, specifically pointing to TXT records at line 995.

*Additional Information:*
- Zone File Structure: The zone file contains a high number of TXT records,
particularly for infrastructure asset IDs.

*Request for Assistance:*
1. *Understanding the Limit:* Is there a configurable limit in BIND that
restricts the number of records per zone? If so, how can we adjust this
limit to accommodate our current zone size?
2. *Optimization Tips:* Are there best practices for managing large zones
with thousands of records to prevent such issues?
3. *Error Interpretation:* Can the “too many records” error be mitigated by
restructuring the zone file or employing specific configurations?

Any guidance or suggestions to resolve this issue would be greatly
appreciated. Thank you in advance for your support.

Best Regards,
Nagesh
-- 
Visit https://lists.isc.org/mailman/listinfo/bind-users to unsubscribe from 
this list

ISC funds the development of this software with paid support subscriptions. 
Contact us at https://www.isc.org/contact/ for more information.


bind-users mailing list
bind-users@lists.isc.org
https://lists.isc.org/mailman/listinfo/bind-users