我正在尝试unbound
将 DNS 查询转发到权威 DNS 服务器,缓存它们,并添加其他本地信息。我的配置非常简单:
/etc/unbound/unbound.conf
:
server:
... # all default settings
include: "/etc/unbound/unbound.conf.d/*.conf"
forward-zone:
name: "."
forward-addr: 1.1.1.1 # authoritative server
local-data
然后我想在几个中添加一些local-zone
,例如:
/etc/unbound/unbound.conf.d/foobar.org.conf
server:
local-zone: "foobar.org." transparent
local-data: "foobar.org. 3600 IN SOA admin.foobar.org. admin.foobar.org. 1710435698 86400 3600 3600000 300"
local-data: "foobar.org. 3600 IN NS admin."
local-data: "foobar.org. 3600 IN MX 0 foobar.org"
local-data: "foobar.org. 3600 IN A 12.34.56.78"
local-data: 'system.at.foobar.org. 14400 IN TXT "[email protected]"'
local-data: "private.foobar.org. 3600 IN A 10.0.1.2"
local-data-ptr: "10.0.1.2 private.foobar.org."
local-data: "public.foobar.org. 3600 IN A 98.76.54.32"
local-data-ptr: "98.76.54.32 public.foobar.org."
...
此设置工作正常。local-data
记录得到很好的解决,PTRTXT
等也是如此。
但这真的是&需要配置的unbound
方式吗?local-zone
local-data
如果我将此设置与“经典”bind
区域文件进行比较:
$ORIGIN foobar.org.
$TTL 3600
@ IN SOA admin.foobar.org. admin.foobar.org. (
1710435698 ; Serial
86400 ; Refresh
3600 ; Retry
3600000 ; Expire
300 ) ; Negative Cache TTL
@ IN NS admin.
@ IN MX 0 foobar.org.
@ IN A 12.34.56.78
system.at IN TXT "[email protected]"
private IN A 10.0.1.2
public IN A 98.76.54.32
在这个bind
区域:
- 我不必为每条记录重复 TTL
- 我不必为每条记录重复区域名称
- 对于每条记录,我知道它们是该区域的一部分
所以我的问题是:我的设置是否正确,或者我是否在配置&unbound
的过程中遗漏了某些内容?并将记录链接到区域?local-zone
local-data