我已经使用 Ubuntu 12.10 设置了一个家庭网络服务器,我可以肯定地说它在路由器转发和端口查找方面是有效的。我知道这一点,因为我将托管服务提供商的 VPS SOA 记录切换为使用带有“A”值的 ISP IP,并让我的网站在家里运行。这验证了我的服务器配置正确,因此我开始了我认为是将我的旧桌面变成完整 DNS 服务器的最后一步。
我发现这帮助我入门的教程我的 LAN 网络由以下内容组成:
- 我的路由器的网关为
10.0.0.zzz
- 我的服务器 IP 为
10.0.0.xxx
- 一台笔记本电脑的 IP 为
10.0.0.yyy
步骤1:
我通过以下方式安装了绑定sudo apt-get install bind9
第2步:
我的配置/etc/bind/named.conf.local
是:
zone "sognwebdesign.no" {
type master;
file "/etc/bind/zones/sognwebdesign.no.db";
};
zone "0.0.10.in-addr.arpa" {
type master;
file "/etc/bind/zones/rev.0.0.10.in-addr.arpa";
};
步骤3:
更新了/etc/bind/named.conf.options
两个 ISP DNS 地址
步骤4:
更新/etc/resolv.conf
内容:
nameserver 10.0.0.xxx
search lan
search sognwebdesign.no
步骤5:
创建了一个“/etc/bind/zones 目录
步骤6:
创建/etc/bind/zones/sognwebdesign.no.db
者:
$TTL 3D
@ IN SOA ns.sognwebdesign.no. admin.sognwebdesign.no. (
2007062001
28800
3600
604800
38400
);
sognwebdesign.no. IN NS ns1.sognwebdesign.no.
sognwebdesign.no. IN NS ns2.sognwebdesign.no.
sognwebdesign.no. IN NS ns3.sognwebdesign.no.
NS1 IN A 10.0.0.1
NS2 IN A 10.0.0.2
NS3 IN A 10.0.0.3
www IN A 10.0.0.4
yuccalaptop IN A 10.0.0.19
gw IN A 10.0.0.138
TXT "Network Gateway"
步骤7:
创建/etc/bind/zones/rev.0.0.10.in-addr.arpa
于:
$TTL 3D
@ IN SOA ns.sognwebdesign.no. admin.sognwebdesign.no. (
2007062001
28800
604800
604800
86400
);
zzz IN PTR gw.sognwebdesign.no.
1 IN PTR ns1.sognwebdesign.no.
2 IN PTR ns2.sognwebdesign.no.
3 IN PTR ns3.sognwebdesign.no.
yyy IN PTR yuccalaptop.sognwebdesign.no.
然后我重新启动绑定并且dig-x sognwebdesign.no
它工作最后我named-checkzone
对我的每个区域文件执行,但是我的反向区域失败并出现以下错误:
sognwedesign.no/IN: has no NS records
有人能解释一下我在这里做错了什么或者帮助我正确配置吗?
答案1
首先你的使用方式named-checkzone
不正确:
用它前您重新加载区域或重新启动名称服务器。
此实用程序的全部目的是捕获可能导致区域加载失败的错误。如果您在让服务器检查错误之前已经重新启动了服务器,它就无法帮助您避免错误。
(不过,BIND 很乐意运行相同的检查,并因相同的原因而失败 - 请查看您的日志文件。)检查不可能
0.0.10.in-addr.arpa
生成有关 的错误消息sognwedesign.no
,除非您为 named-checkzone 指定了错误的区域名称。
请根据手册named-checkzone
。
其次,named-checkzone
它报告的问题是正确的——您的反向区域中没有 NS 记录。
更正此问题(添加 NS 记录)即可让该消息消失。
这不是黑魔法——如果你正确使用这些工具,它们会准确地告诉你哪里出了问题,你所要做的就是修复它。