BIND DNS 区域从属文件中存在意外字符

BIND DNS 区域从属文件中存在意外字符

我的指定服务器(主服务器)中有此配置/etc/named.conf

zone "example.com." IN {
    type master;
    file "example.com";
    notify yes;
    allow-transfer {
            172.16.18.2;
    };

};

以及我指定服务器(从属服务器)中的此配置/etc/named.conf

zone "example.com." IN {
    type slave;
    file "example.com";
    masters {
            172.16.18.1;
    };

};

首先,我在传输时遇到权限问题:但是经过一些搜索并使用命令更改服务器从属服务器dumping master file: tmp-2ZlzMUSOdT: open: permission denied的权限后,传输没有问题。但从服务器上的文件包含意外字符。/var/namedchmod g+w /var/namedtransfer of 'example.com/IN' from 172.16.18.1#53: Transfer completed: 1 messages, 11 records, 356 bytes, 0.005 secs (71200 bytes/sec)/var/named/example.com

cat /var/named/example.com:

examplecomMhB�7onecom'sefexamplecomx*W�Q�   :�*04
examplecomv=spf1 a mx ~allEDgoogle-site-verification=-w4hjmB6hYpYT79eg3nG_BkvvIIIk03V56F369855R2b4C
                                                                                                     771046613examplecommaiexamplecom,maiexamplecomMhB�+nsexamplecomMhB�+nsexamplecomMhB�+wwexamplecomMhB�

我的绑定版本是bind-9.9.4-29.el7_2.3.x86_64.

问题是什么?

答案1

BIND 从属文件中不会出现意外字符的问题。

在 BIND 9.9 之后,出于效率原因,DNS 从属文件格式已切换为二进制。

您可以使用特殊命令来查看从属文件,也可以完全不使用二进制格式并告诉 BIND 使用文本格式。

二进制格式优化仅应在 BIND 的大型设置中或使用大型文件进行 RPZ 黑名单时才应注意,这些文件通常有数十万个条目,并且可以使 BIND 启动从几秒的操作变成 1 秒的操作或 2 分钟。

Bind 9.9 – 二进制 DNS 从属文件格式

为了查看原始二进制内容,必须首先将其转换为文本:

named-compilezone -f raw -F text -o example.net.text example.net example.net.raw

这增加了一层复杂性,但如果您需要微观性能提升,那就是正确的选择。对于我们这些没有发现文本文件格式有任何问题的人,只需更新从属区域的named.conf 文件以包含以下行:

masterfile-format text;

相关内容