What is DLZ?
DLZ (Dynamically Loadable Zones) is a patch for BIND version 9 that simplifies BIND administration and reduces memory usage and startup time. DLZ allows you to store your zone data in a database. Unlike using scripts, the changes in your database are immediately reflected in BIND's response to DNS queries, so there is no need to reload or restart BIND. You see, BIND "dynamically loads" the "zone" data it needs to answer a query from the database.
大致上就是說它是把 ZONE 記錄記到資料庫，且能動態的、即時的讀出要查詢的記錄，不必像純文字檔時要 restart 或 reload，且 DLZ 能淢少記憶體用量及啟動的時間
Why is DLZ needed?
The defacto standard DNS server is BIND. Despite being around for many years now and going through several revisions, BIND's basic functionality has remained the same. Unfortunately, so have some of its unfavorable attributes:
- BIND reads DNS data from text files. It is very easy to make a mistake when editing a file causing it to be mis-read or made un-readable by BIND.
- BIND stores all DNS data in RAM. If your DNS server is authoritative for a large number of zones, you may have to rebuild the kernel on your machine in order to support BIND's memory needs.
- BIND parses all of its zone files at startup. For a large number of zones this can be time-consuming.
- If you change any information in those zone files, you must reload or restart BIND before those changes take effect. Do this often enough and BIND could spend more time reloading data than answering queries.