我正在使用 virtualbox 设置实验虚拟网络。我配置了一个 BIND DNS 服务器,并且一些主机都使用 ubuntu linux。
我确保正向和反向配置文件在语法上是正确的:
sudo named-checkzone xyz1.com forward.xyz1.com
导致:
zone xyz1.com/IN: loaded serial 5
OK
和:
sudo named-checkzone 56.168.192.in-addr.arpa reverse.xyz1.com
导致:
zone 56.168.192.in-addr.arpa/IN: loaded serial 3
OK
我有以下forward.xyz1.com
文件:
$TTL 604800
@ IN SOA dns1.xyz1.com. admin.xyz1.com. (
6 ; Serial
604820 ; Refresh
86600 ; Retry
2419600 ; Expire
604600 ) ; Negative Cache TTL
; name servers - NS records
IN NS dns1.xyz1.com.
IN NS dns2.xyz1.com.
; name servers - A records
dns1.xyz1.com. IN A 192.168.56.3
dns2.xyz1.com. IN A 192.168.56.5
; 192.168.56.0/24 - A records
host1.xyz1.com. IN A 192.168.56.7
host2.xyz1.com. IN A 192.168.56.8
我有一台虚拟机(host1),其 IP 地址如下:192.168.56.7
我有自己的 Windows 机器(实际不是虚拟的)。我确保可以 ping 具有此 IP 的 DNS 服务器:192.168.56.3
以及具有此 IP 的 host1 机器:192.168.56.7
我将我的Windows机器网卡改为使用私有DNS服务器,如下:
我想测试私有 DNS 是否可以解析主机名。因此我在浏览器中输入了以下主机:host1.xyz1.com
我收到错误,浏览器无法解析名称。请注意,当我192.168.56.7
在浏览器中输入主机的 IP 时,我得到了页面。我也可以像之前说的那样 ping 它。
DNS 出了点问题,但我刚开始设置 DNS 服务器。您能告诉我哪里出了问题吗?
编辑:
这里是named.conf.local
//
// Do any local configuration here
//
// Consider adding the 1918 zones here, if they are not used in your
// organization
//include "/etc/bind/zones.rfc1918";
zone "xyz1.com" {
type master;
file "/etc/bind/forward.xyz1.com";
};
zone "56.168.192.in-addr.arpa"{
type master;
file "/etc/bind/reverse.xyz1.com";
};
这里是named.conf.options
:
options {
directory "/var/cache/bind";
auth-nxdomain no; # conform to RFC1035
listen-on port 53 { localhost; 192.168.56.0/24; };
recursion yes; # enables resursive queries
allow-query { localhost; 192.168.56.0/24; };
forwarders {
8.8.8.8;
};
};
服务器和主机都在运行,我可以从我的 Windows 机器上 ping 它们:ping dns 服务器:
Pinging 192.168.56.3 with 32 bytes of data:
Reply from 192.168.56.3: bytes=32 time<1ms TTL=64
Reply from 192.168.56.3: bytes=32 time<1ms TTL=64
Reply from 192.168.56.3: bytes=32 time<1ms TTL=64
Reply from 192.168.56.3: bytes=32 time<1ms TTL=64
并 ping 主机:
Pinging 192.168.56.7 with 32 bytes of data:
Reply from 192.168.56.7: bytes=32 time<1ms TTL=64
Reply from 192.168.56.7: bytes=32 time<1ms TTL=64
Reply from 192.168.56.7: bytes=32 time<1ms TTL=64
Reply from 192.168.56.7: bytes=32 time<1ms TTL=64
但是,我的网络是虚拟的。这意味着我在 VirtualBox 网络主机管理器中配置 DHCP,如下所示:
我的实际机器(Windows 机器)的网络配置是:
Wireless LAN adapter Wi-Fi:
Connection-specific DNS Suffix . : my-wireless-network
Link-local IPv6 Address . . . . . : xxx
IPv4 Address. . . . . . . . . . . : 10.xx.xxx.xxx
Subnet Mask . . . . . . . . . . . : 255.255.252.0
Default Gateway . . . . . . . . . : 10.xx.xxx.xxx
Ethernet adapter VirtualBox Host-Only Network #3:
Connection-specific DNS Suffix . :
Link-local IPv6 Address . . . . . : fe80::4844:71a7:73f1:69d2%5
IPv4 Address. . . . . . . . . . . : 192.168.56.6
Subnet Mask . . . . . . . . . . . : 255.255.255.0
Default Gateway . . . . . . . . . :
Wireless LAN adapter Local Area Connection* 3:
Media State . . . . . . . . . . . : Media disconnected
Connection-specific DNS Suffix . :
Ethernet adapter Bluetooth Network Connection:
Media State . . . . . . . . . . . : Media disconnected
Connection-specific DNS Suffix . :
答案1
配置正确。解决方案只是确保在网络接口卡中设置 DNS IP 时选择正确的网卡。
对我来说这有点棘手,因为我在虚拟网络中工作,并且必须在虚拟接口而不是实际的无线网卡中设置 DNS IP。