Bind支持带下划线域名的解析

Posted legendjaking

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Bind支持带下划线域名的解析相关的知识,希望对你有一定的参考价值。

公司内部使用的一台使用Linux Bind做的DNS服务器,上面跑着一个域名(abc.com),一直运行的好好的。今天又要添加一个域名,不就是把配置文件复制一份,然后在主配置文件中添加一个域就好了。配置如下:

one    "def.com" {
    type    master;
    file    "/etc/bind/def.com.hosts";
};
$ttl 38400                                                                                                                                        
@       IN      SOA     ns.def.com.   admin.def.com. (
                        1243951711
                        10800
                        3600
                        604800
                        38400 )
@               IN  NS  ns
ns              IN  A   172.16.17.10
file            IN  A   172.16.20.12
live-mng        IN  A   172.16.20.13
photo_mng       IN  A   172.16.20.14

然后进行语法检查也没有报错,然后重启服务也是成功的。

但是进行dig的时候,def.com下的域名都无法解析,但是abc.com下的域名都正常运行。难道是不支持多域名解析,显然不是这样的。

反正经过一段时间的折腾,发现竟然是photo_mng.def.com这个域名导致的无法解析,注意看了,photo_mng.def.com这个域名使用了下划线,Bind默认是不支持下划线域名解析的(支持-线),但是比较坑爹的是它没有任何提示信息,也不会报错,就是无法解析,妈蛋。

当然了,解决办法也是有的,那就是如果一定要用下划线,可以取消check-names。

有两种方法:

一、在/etc/resolv.conf加入options no-check-names

二、主配置域中添加check-names ignore参数

zone    "def.com" {
    type    master;
    file    "/etc/bind/def.com.hosts";
    check-names ignore;
};

以上是关于Bind支持带下划线域名的解析的主要内容,如果未能解决你的问题,请参考以下文章

使用BIND提供域名解析服务

Linux下,bind配置转发,bind能正常启动,本地域名也能正常解析,但是就是无法转发?

DNS学习笔记

Debian-BIND9域名解析实验-BIND9

如何配置使得BIND只解析特定域名

linux[基础]-33-[dns服务器]-[正反向域名解析]-[01]