欢迎加入王导的VIP学习qq群:==>932194668<==
DNS管理工具
安装
1 | # yum install bind-utils -y |
工具一:nslookup
Windows操作系统也有的一个常用工具
交互式
1 | #nslookup |
非交互式
1 | #nslookup www.baidu.com |
工具二:host
简单粗暴的小工具
1 | #host -t A www.baidu.com |
工具三:dig
功能强大的DNS工具,重点掌握
1 | #dig -t A www.baidu.com @localhost |
常用参数:
- +[no]addition
- +short
工具四:nsupdate
不常用,需要在zone配置文件里声明allow-update { acl; };
调整zone配置文件
1 | zone "bkjf-inc.com" IN { |
重启named服务
1 | # systemctl restart named |
新增一条记录
1 | #nsupdate |
检查:
1 | #nslookup update.bkjf-inc.com |
查看区域数据库文件
1 | -rw-r--r-- 1 root root 335 Feb 28 10:57 bkjf-inc.com.zone |
产生了一个jnl的数据文件,不能使用文本编辑器打开
jnl文件(journal文件)是BIND9动态更新的时候记录更新内容所生成的日志文件。
删除一条记录
1 | #nsupdate |
检查
1 | #nslookup update.bkjf-inc.com |
更新一条记录
不支持直接更新,需要先执行删除,再新增
nsupdate使用小结:
- 优点
- 命令简单,便于记忆
- 不用手动变更SOA的serial序列号,自动滚动
- 不需要重启/重载BIND9服务/配置,生效快
- 可以通过配置acl实现远程管理
- 缺点
- jnl文件无法使用文本文件的方式打开
- 只能依赖完全区域传送查看所有区域的记录
- 更新操作复杂,先删再增
- 远程管理有安全隐患,需要加强审计
- 动态域在rndc管理上多一步
rndc远程管理DNS
生成rndc-key
1 | #rndc-confgen -r /dev/urandom |
把rndc-key和controls配置到bind的主配置文件的options段里
1 | key "rndc-key" { |
注意:这里要配置一下controls段的acl,限定好哪些主机可以使用rndc管理DNS服务
重启bind9服务
1 | # systemctl restart named |
rndc的服务端监听在953端口,检查一下端口是否起来
1 | # netstat -luntp|grep 953 |
在远程管理主机上安装bind
rndc命令在bind包里,所以远程管理主机需要安装bind(不需要启动named)
在远程管理主机上做rndc.conf
使用rndc进行远程管理的主机上,都需要配置rndc.conf,且rndc-key要和DNS服务器上的key一致
1 | key "rndc-key" { |
使用rndc命令远程管理DNS
查询DNS服务状态(可以取值做监控)
1 | #rndc status |
管理静态域(allow-update { none; };)
1 | zone "od.com" IN { |
增、删、改一条记录后
1 | # rndc reload od.com |
管理动态域(allow-update { 10.4.7.11; };)
1 | zone "host.com" IN { |
增、删、改一条记录后
1 | #rndc reload host.com |
直接reload会报错,需要先freeze
再thaw
才行
1 | #rndc freeze host.com |