รายชื่อโซนทั้งหมดโหลดใน BIND


13

ฉันพยายามย้ายเซิร์ฟเวอร์ dns ที่โหลดหลายพันโซนในนั้น ไฟล์ named.conf นั้นมีการรวมเอาไว้ถึง 17 แบบและบางไฟล์ก็มีการรวมเอาไว้ในนั้นและการคอมเม้นท์อื่น ๆ มากมายมันเป็นเรื่องยุ่งเหยิง!

ฉันต้องการรับรายชื่อของทุกโซนที่ถูกโหลดเข้าสู่ BIND ฉันดู rndc dumpdb แต่มันไม่ได้แสดงให้ฉันเห็นแค่โซน

แทนที่จะติดตามไฟล์ยุ่ง ๆ มีวิธีที่ง่ายกว่าในการรับรายการโซนสิทธิใน BIND หรือไม่? ขอบคุณ!

คำตอบ:


15

คุณสามารถเรียกใช้rndc dumpdb -zonesในการสร้างไฟล์ที่เรียกว่าcache_dump.db ไฟล์นี้จะมีโซนที่มีสิทธิ์ทั้งหมดและจะถูกสร้างขึ้นในไดเรกทอรีข้อมูลของ BIND


นั่นคือสิ่งที่ฉันคิดเช่นกัน แต่มันแสดงให้ฉันเห็นเฉพาะโซน
อาร์ปา

ฉันจะตรวจสอบไฟล์บันทึกสำหรับข้อมูลเพิ่มเติม ถ้ามีเพียงโซน ARPA ย้อนกลับเท่านั้นที่อยู่ในไฟล์ดัมพ์ฉันจะบอกได้ว่าเฉพาะโซนเหล่านี้เท่านั้นที่โหลดในเซิร์ฟเวอร์ DNS
Vladimir Blaskov

1
ไดเรกทอรีข้อมูลของ BIND อยู่ที่ไหน
Qian Chen

อาจเป็น/var/namedหรือ/var/named/chroot/var/named(ถ้าคุณใช้chroot'ed BIND) ในการกระจายส่วนใหญ่ แต่ระยะทางของคุณอาจแตกต่างกันไปขึ้นอยู่กับการกระจายที่คุณใช้
Vladimir Blaskov

1
ใน Debian jessie ไฟล์จะสิ้นสุดใน /var/cache/bind/named_dump.db
Calimo

2

ยืนยัน rndc dumpdb เป็นวิธีที่ดีที่สุด

ในกรณีของฉันฉันค้นพบว่ามีอินสแตนซ์ผูกแยก 2 อันที่ทำงานอยู่บนเซิร์ฟเวอร์เดียวกัน (ไม่ต้องถาม) หนึ่งคนกำลังทำ forward DNS และอีกหนึ่งกำลังย้อนกลับ DNS โดยไม่ได้ระบุ PID มันจะแนบกับตัวเดียวที่ทำ reverse DNS และแสดงให้ฉันเห็นเท่านั้น


2

หากคุณต้องการพิมพ์การกำหนดค่า (รวมถึงไฟล์รวม) ในรูปแบบมาตรฐานคุณสามารถโทร:

named-checkconf -p(เป็นทางเลือก-t /some/chroot/dirหาก BIND รัน chrooted และการกำหนดค่าต้องอ่านจาก chroot dir)

การทำเช่นนี้จะทำให้ไฟล์รวมทั้งหมดเอาความคิดเห็นทั้งหมดและจัดรูปแบบทุกอย่างเรียบร้อย

rndc addzoneในขณะที่การส่งออกจะมีโซนการกำหนดค่าคงที่ก็จะไม่โซนรายการแบบไดนามิกเช่นเดียวกับที่เพิ่มเข้ามาด้วย


1

การเพิ่ม-ทำทุกอย่างให้ฉัน (บน Ubuntu Ubuntu 16.04.2 LTS (xenial))

sudo rndc dumpdb -all && cat /var/cache/bind/named_dump.db

1

สำหรับ BIND9 เวอร์ชั่นใหม่ตั้งแต่ 9.12.0a1 นอกจากนั้นยังnamed-checkconf -lสามารถแสดงรายการโซนในรูปแบบที่ง่ายรวมถึงสถานะ master / slave และมุมมอง

ตัวอย่าง:

$ sudo /usr/sbin/named-checkconf -l -t /chroot/bind/
example.com IN external master
otherdomain.com IN external slave
internal.example.com IN internal master
example.com IN internal in-view external
otherdomain.com IN internal in-view external

# this has 2 views: external, internal
# and 3 zones: example.com, otherdomain.com, internal.example.com
# the external view contains: example.com, and slaves otherdomain.com
# the internal view uses in-view statements to show
# the same version of external zones, plus contains a unique zone

0

ต่อไปนี้เป็นคำสั่งที่แน่นอนเพื่อแสดงรายการโซนที่โหลดระหว่างการเริ่มต้น นี่คือการทดสอบใน RHEL6.7 x86_64

/usr/sbin/named-checkconf -z -t /var/named/chroot | grep loaded

ตัวอย่าง:

[root@dnsserver ~]# /usr/sbin/named-checkconf -z -t /var/named/chroot | grep loaded
zone 0.0.127.in-addr.arpa/IN: loaded serial 2008040700
zone 19.58.10.in-addr.arpa/IN: loaded serial 2008040701
zone 11.54.10.in-addr.arpa/IN: loaded serial 2008040700
zone example.com/IN: loaded serial 2008040702
zone ./IN: loaded serial 2008040700

2
โปรดอธิบายเพิ่มเติม
สเวน

โปรดอ้างอิงคำตอบที่แก้ไขแล้ว
Sasikumar K

0

อีกทางเลือกหนึ่งคือการใช้bind'สถิติรูปแบบ XML ของตัวเองหากคุณเปิดใช้งานstatistics-channelและเปิดใช้งานสถิติโซน (เช่นในทั่วโลกoptions { }) วิธีนี้ยังช่วยให้คุณสามารถเลือก / แสดงมุมมองประเภทโซนและข้อมูลโซน (เช่นหมายเลขซีเรียล) เช่นเดียวกับสถิติต่อโซนของหลักสูตร

การใช้wgetและxml(xmlstarlet):

wget -O - http://127.0.0.1:1080/xml/v3/zones | 
  xml select -I -t -m '/statistics/views/view[@name="_default"]/zones/zone[type="master"]' \
    -v @name -nl

ด้านบนแสดงรายการโดเมนหลักทั้งหมดในมุมมอง_default

wget ... |
  xml select -I -t -m '/statistics/views/view/zones/zone' \
   -v @name -o , -v ../../@name -o , -v type -o , -v serial -nl

ด้านบนแสดงโซนทั้งหมดในรูปแบบ CSV: โซน, มุมมอง, ประเภท, อนุกรม

ในการเลือกเฉพาะมุมมองและประเภทโซน :

 wget ... |
   xml select -I -t -m '/statistics/views/view[@name="_bind"]/zones/zone[type="builtin"]' \
     -v @name -nl

(สิ่งอำนวยความสะดวกสถิตินี้มีให้บริการตั้งแต่ bind-9.6.0, ธันวาคม 2008 /v3/รูปแบบที่ใช้ด้านบนมีให้ตั้งแต่ bind-9.10, เมษายน 2014 เท่านั้นรูปแบบ JSON อาจพร้อมใช้งานดังนั้นสิ่งที่คล้ายกันควรเป็นไปได้ด้วยjot)

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.