当前位置:   article > 正文

ubuntu bind dns服务配置

ubuntu bind

sudo apt-get install bind9

内网搭建DNS服务器,大多数是解析纯内网地址使用。但是偶尔也需要解析外网的地址,所以我们可以配置DNS没有添加A记录的URL时,forward到外网DNS服务器或者内网的其他DNS服务器解析。
打开配置文件

sudo vi /etc/bind/named.conf.options


编辑forward,指定转发服务器public DNS:114.114.114.114或者8.8.8.8:

  1.  forwarders {
  2.                 8.8.8.8;
  3.          };



接下来,我们配置DNS服务器在IPv4工作:

sudo vi /etc/default/bind9

将options=“-u bind ”修改为:将options=“-u bind -4 ”

  1. #
  2. # run resolvconf?
  3. RESOLVCONF=no
  4. # startup options for the server
  5. OPTIONS="-u bind -4"


保存退出。
更改配置后,重启bind9 服务:

sudo service bind9 restart



如果要指定可以递归查询的DNS服务器,需要添加ACL:

  1. ACL "trusted"{
  2.         114.114.114.114;
  3.         8.8.8.8;
  4.         192.168.0.0/16
  5. };


 

  1. options {
  2.         directory "/var/cache/bind";
  3.         recursion yes;
  4.         allow-recursion{trusted;}
  5.         listen-on{192.168.31.170;}
  6.         allow-transfer {none;}
  7.         forwarders {
  8.               114.114.114.114
  9.               8.8.8.8
  10.         }
  11.         }



上述配置指定只有我们自己的服务器才能在DNS服务器中查询外部域。
保存退出。

下面以绑定域名: core.harbor.domain 192.168.1.105 来举例,目标是局域网内通过域名服务器解析core.harbor.domain 得到ip 192.168.1.105 

sudo vi /etc/bind/named.conf.local
 

这个文件内,除注释文件外,为空。添加如下正向区域文件。
domain.com为内网的域名,内网子网wei192.168.0.0/16

  1. zone "domain.com" {
  2. type master;
  3. file "/etc/bind/zones/db.harbor.domain";
  4. };
  5. zone "168.192.in-addr.arpa"{
  6. type master;
  7. file "/etc/bind/zones/db.168.192";
  8. };

创建zones区域文件:

sudo mkdir /etc/bind/zones
1
将db.local文件复制到zones目录下:

sudo cp /etc/bind/db.local /etc/bind/zones/db.harbor.domain
1
编辑区域文件:

sudo vi /etc/bind/zones/db.harbor.domain

修改成 

  1. ; BIND data file for local loopback interface
  2. ;
  3. $TTL 1D
  4. @ IN SOA harbor.domain. core.harbor.domain. (
  5. 0 ; serial
  6. 1D ; refresh
  7. 1H ; retry
  8. 1W ; expire
  9. 3H ) ; minimum
  10. NS core.harbor.domain.
  11. core A 192.168.1.105
  12. www A 10.0.0.7

保存退出。至此正向区域就完成了。
反向区域方法与正向相同,只是A records更改为PTR records即可。
反向区域文件是我们为反向DNS查找定义DNS PTR记录的地方。 也就是说,当DNS通过IP地址接收查询时,它将查看反向区域文件以解析相应的FQDN。

sudo cp /etc/bind/db.127 /etc/bind/zones/db.168.192
sudo vi /etc/bind/zones/db.168.192

创建PTR:

  1. ;
  2. ; BIND reverse data file for local loopback interface
  3. ;
  4. $TTL 604800
  5. @ IN SOA harbor.domain. root.harbor.domain. (
  6. 3 ; Serial
  7. 604800 ; Refresh
  8. 86400 ; Retry
  9. 2419200 ; Expire
  10. 604800 ) ; Negative Cache TTL
  11. ;
  12. ;@ IN NS localhost.
  13. ;1.0.0 IN PTR localhost.
  14. 192.168.1.1 IN PTR root.harbor.domain
  15. 192.168.1.105 IN PTR core.harbor.domain

最后验证测试:
验证正向区域

sudo named-checkzone harbor.domain  /etc/bind/zones/db.harbor.domain


验证反向区域

sudo named-checkzone 168.192.in-addr.arpa /etc/bind/zones/db.168.192



过程中还需要注意firewall是否有允许bind9同行。

sudo ufw allow Bind9


参考文档:

Ubuntu 用bind9搭建DNS服务器_ubuntu bind9配置_Par@ish的博客-CSDN博客

ubuntu 22.04 lts bind9 局域网DNS服务器搭建 泛域名配置_ubuntu bind9_Faith1810的博客-CSDN博客

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/凡人多烦事01/article/detail/579842
推荐阅读
相关标签
  

闽ICP备14008679号