![bind9 无法解析内联网链接](https://linux22.com/image/768505/bind9%20%E6%97%A0%E6%B3%95%E8%A7%A3%E6%9E%90%E5%86%85%E8%81%94%E7%BD%91%E9%93%BE%E6%8E%A5.png)
作为我之前提出的一个问题的后续:Linux 服务器迁移至 Windows 工作站。昨天供应商给我们送来了一张新网卡,但目前还没有硬盘。我还决定重新配置服务器,因为旧机器上有太多我无法解释/修复的行为,而之前的开发人员没有留下任何文档就离开了。从 Ubuntu 14 升级到 20 也不错。大多数工作都很顺利,只有 bind/dhcp 让我在过去 24 小时的大部分时间里都头疼不已。
目标
设置 bind9/DHCP 和 Shorewall,并将工作配置带回家到 U 盘上。在那里完成所有操作,并在实际更换旧机器之前进行测试。
VM 设置
我的主机中运行着 VirtualBox6;并且已向其中添加了两个网络适配器。VDI 目前可动态调整大小,以充分利用我们可用的小型 SSD。两个适配器均使用默认设置连接到桥接适配器。我只在 VirtualBox 下拉列表“名称:”中为两个适配器选择了正确的端口
在我的客人
客户操作系统 (Ubuntu 20.04 LTS) 可以看到两个网络接口,使用 ifconfig 时,我可以看到它们的两个单独的接口名称(为简单起见):“A1”和“A2”。A1 连接到调制解调器并获得 IP。连接后,我可以浏览互联网。A2 应该转到交换机,让连接到该交换机的其他设备使用应该在那里的内联网。A1 使用调制解调器提供的 DHCP。我手动将 A2 设置为 10.0.0.1 和 255.255.255.0 掩码。我将其他字段留空。
来宾安装 在我的客人上我添加了 ShoreWall (https://shorewall.org/)、ISC(https://www.isc.org/dhcp/), Bind9(https://www.isc.org/bind/) 和其他应用程序。这里提到的三个是我遇到问题的最后三个。
来宾配置 我将旧机器的配置文件复制到新机器上,并在比较后根据需要替换新安装的配置文件。在版本间切换时,我仔细检查了该工具的文档(只有 Shorewall 的版本有所增加)。
我从 Shorewall 开始,使用新接口(A1 和 A2)替换 Shorewall 配置文件(主机、接口、masq)中的旧接口名称。更新所有配置文件后,我使用以下命令启动防火墙:
sudo shorewall check
将 masq 转换为 snat 文件(版本升级)接下来,我启动防火墙sudo shorewall start
并检查状态sudo shorewall status
。每次重新启动 VM 时,Shorewall 都会启动,状态工具不会报告任何问题。
接下来我关注 bind9。从旧服务器到新服务器没有重大版本升级。和以前一样,我比较并将旧文件复制到 /etc/bind/ 并根据需要添加它们。检查权限和 chmods 并与旧服务器进行比较。其中一个文件名为 intranet.sitename.org - 它应该将所有调用都发送到它并将其指向自身 - 此服务器上还有一个 Apacheserver,可以使用 localhost/127.0.0.1 和 10.0.0.1 进行访问。
移动所有配置文件后,我运行了以下命令:
sudo rndc reconfig
sudo rndc reload
sudo named-checkconf
sudo systemctl restart bind9
所有命令均顺利通过。
然后我用nslookup
它来测试我的 DNS。
nslookup ubuntu.com
工作并给出了如下结果(https://serverspace.io/support/help/configure-bind9-dns-server-on-ubuntu/)
但是,当我使用内部网网址时,我收到 NXDOMAIN 错误:
nslookup intranet.sitename.de
完整回复为:** 服务器找不到 intranet.sitemane.de:NXDOMAIN
我清空了缓存,再次检查了配置文件,但还是找不到问题所在。问题可能与 nslookup 报告的“服务器”有关。与原始机器相比,“服务器”的值是 10.0.0.1,而在我的新机器上它报告的是 127.0.0.1。但是 /etc/bind 中有一个 db.10 文件,它是从旧服务器复制而来的,并且具有正确的访问权限。
问题
- 我在 Virtualbox 中使用桥接适配器是否正确?如果不正确,如何确保 A1 和 A2 映射到从服务器出来的正确物理线路?
- bind 是否还有其他存储配置文件的地方?我在网上找到了 /etc/default,但目前那里没有文件。
- 旧服务器没有 IPV6 地址,这与我遇到的问题有关吗?
- 如何修复 NXDOMAIN 内联网站点错误。
非常感谢您的帮助和指点。此致。
答案1
我发现发生的事情与我从 Ubuntu 14 迁移到 Ubuntu 20 的假设有关。
在 Ubuntu14 中,有一个文件/etc/network/interfaces
配置了该机器上的两个以太网端口。从 Ubuntu18 开始,该文件不再使用,而是被替换为/etc/netplan/01-network-manager-all.yaml
我将该文件配置为与旧服务器匹配,重新启动后一切正常。
参考:https://linuxhint.com/ubuntu_20-04_network_configuration/和https://vitux.com/how-to-configure-networking-with-netplan-on-ubuntu/
希望它能帮助任何遇到类似问题的人。