Domain-Name-System
如何將 bind9 配置為僅無法訪問 Internet 的本地 DNS?
我想將 bind9 配置為僅沒有 Internet 訪問權限的本地 DNS。所以我的虛擬域 xy.com 中有 5 台 PC。在此域內無法訪問 Internet。
DNS 伺服器具有以下條目:
- pc1.xy.com 在 10.1.1.1
- pc2.xy.com 在 10.1.1.2
- .
- .
- pc5.xy.com 在 10.1.1.5
綁定配置正確,但是當我在 DNS 伺服器上執行“dig @localhost pc1”時,它不起作用,因為他無法聯繫根伺服器。但我只希望他是本地的並回答 pc1 有哪個 IP。
我怎樣才能做到這一點?
為此,您需要創建一個假根區域來替換通常配置的“root.hints”區域。
把
named.conf
這個:zone "." IN { type master; file "fake.root"; };
並
fake.root
把這個:$TTL 300 . IN SOA ns. hostmaster.xy.com. ( 20120101 1800 900 604800 86400 ) . IN NS ns ns IN A 127.0.0.1
這將阻止所有嘗試訪問 Internet 以獲取真正的根提示。
您也可以將
pcN.xy.com
條目直接放入該根區域 - 無需將它們放在自己的xy.com
區域文件中,因此您只需將以下內容附加到fake.root
:$ORIGIN xy.com. pc1 IN A 10.1.1.1 pc2 IN A 10.1.1.2 pc3 IN A 10.1.1.3 pc4 IN A 10.1.1.4 pc5 IN A 10.1.1.5
除了
options { }
您可能需要的任何東西(ACL?),僅此而已 - 不需要其他任何東西。