配置正向与反向 DNS 解析,让内网域名自由访问
标签:#DNS配置 #正向解析 #反向解析 #BIND9
1. 什么是正向解析和反向解析?
正向解析让你可以用 web.zuozuo.com 访问服务器;反向解析则常用于一些服务认证(如邮件服务器)。
2. 配置正向解析(以 zuozuo.com 为例)
2.1 在 /etc/named.conf 中添加区域声明
编辑 /etc/named.conf,在文件末尾(或 include 之前)添加:
zone "zuozuo.com" IN { type master; file "zuozuo.com.zone"; allow-update { none; }; };
2.2 创建区域文件
cd /var/namedsudo cp named.localhost zuozuo.com.zonesudo chown named:named zuozuo.com.zonesudo vi zuozuo.com.zone
2.3 编写正向区域文件内容
$TTL 1D@ IN SOA ns1.zuozuo.com. admin.zuozuo.com. ( 2025011201 1D 1H 1W 3H )@ IN NS ns1.zuozuo.com.231 IN PTR ns1.zuozuo.com.231 IN PTR mail.zuozuo.com.100 IN PTR web.zuozuo.com.
注意:
- 每个域名后面要跟一个 点(如 zuozuo.com.),否则 BIND 会自动追加当前域名,容易出错。
- serial 每次修改区域文件后必须增加,否则主从同步不会触发。
2.4 检查区域文件
sudo named-checkzone zuozuo.com /var/named/zuozuo.com.zone
输出 OK 表示正确。
3. 配置反向解析(对应网段 192.168.1.0/24)
3.1 在 /etc/named.conf 中添加反向区域
zone "1.168.192.in-addr.arpa" IN { type master; file "192.168.1.zone"; allow-update { none; };};
反向区域的名称格式:网络地址反过来 + .in-addr.arpa
例如 192.168.1.0 → 1.168.192.in-addr.arpa
3.2 创建反向区域文件
cd /var/namedsudo cp named.loopback 192.168.1.zonesudo chown named:named 192.168.1.zonesudo vi 192.168.1.zone
3.3 编写反向区域文件内容
$TTL 1D@ IN SOA ns1.zuozuo.com. admin.zuozuo.com. ( 2025011201 1D 1H 1W 3H )@ IN NS ns1.zuozuo.com.231 IN PTR ns1.zuozuo.com.231 IN PTR mail.zuozuo.com.100 IN PTR web.zuozuo.com.
说明:231 表示 IP 的最后一段,完整 IP 为 192.168.1.231。
3.4 检查反向区域文件
sudo named-checkzone 1.168.192.in-addr.arpa /var/named/192.168.1.zone
4. 重新加载配置并测试
sudo systemctl reload named# 或者sudo rndc reload
测试正向解析
dig @192.168.1.231 web.zuozuo.com
期望得到 192.168.1.100。
测试反向解析
dig @192.168.1.231 -x 192.168.1.231期望得到 ns1.zuozuo.com 或 mail.zuozuo.com。
用 nslookup 测试
nslookup web.zuozuo.com 192.168.1.231nslookup 192.168.1.231 192.168.1.231
常见问题
小结
有了正向和反向解析,你的 DNS 服务器已经可以自定义内网域名了。下一篇文章,我们将配置 DNS 转发,让这台 DNS 既能解析内网域名,也能正常访问互联网。