走近科学:unbound dns域名服务器自己本地解析出现问题,寻求解决之道

已经在FreeBSD系统配置了unbound dns服务器,其它机器已经指向了192.168.1.5这台dns服务器,但都无法解析内网域名。废了九牛二虎之力,终于解决了:https://skywalk.blog.csdn.net/article/details/157840825

问题

问题现在dns服务器192.168.1.5它自己的域名解析有点不正常了

复制代码
ping ub12.example.local
ping: cannot resolve ub12.example.local: Name does not resolve

仔细检查unbound的配置,发现了问题:

配置文件/usr/local/etc/unbound $ sudo vi unbound.conf

复制代码
include: "/usr/local/etc/unbound/unbound_local.conf"

    forward-zone:
        name: "."
        forward-addr: 192.168.1.1

将其修改成cmc山东的dns

复制代码
    forward-zone:
        name: "."
        forward-addr: 211.137.191.26

同时修改/etc/resolv.conf dns指向127.0.0.1

复制代码
# cat /etc/resolv.conf
nameserver 127.0.0.1

还是不行。

找到问题了,是还需要设置绑定ip,原来只绑定到ip,没有绑定到127,这样导致本机dns查询的时候失败:

复制代码
server:
        interface: 192.168.1.5
        interface: ::0

要么绑定到0.0.0.0,要么需要绑定到127.0.0.1,加上

复制代码
server:
        interface: 192.168.1.5
        interface: 127.0.0.1
        interface: ::0

重启服务

复制代码
sudo service unbound restart

重启一下网卡(我不确定是不是需要,反正刚开始还是没有改善,我重启网卡后才ok)

复制代码
sudo /etc/netstart

终于ok了

复制代码
ping ub19.example.local
PING ub19.example.local (192.168.1.19): 56 data bytes
64 bytes from 192.168.1.19: icmp_seq=0 ttl=64 time=1.700 ms
64 bytes from 192.168.1.19: icmp_seq=1 ttl=64 time=0.572 ms

问题解决了!

总结

因为没有看手册,全程都是看AI,所以关于unbound的安装,小小的走了一下弯路。

现在看来,/usr/local/etc/unbound/unbound.conf配置需要这样:

复制代码
server:
        interface: 192.168.1.5
        interface: 127.0.0.1
        interface: ::0

    access-control: 192.168.1.0/24 allow
    # 允许本机查询
    access-control: 127.0.0.1/32 allow
    access-control: 192.168.1.0/24 allow
    access-control: ::1/128 allow

    include: "/usr/local/etc/unbound/unbound_local.conf"

    forward-zone:
        name: "."
        forward-addr: 211.137.191.26

/usr/local/etc/unbound/unbound_local.conf 文件需要配成这样:

复制代码
# 本地DNS解析配置
local-zone: "local." static
local-data: "localhost.localdomain. IN A 127.0.0.1"
local-data: "localhost. IN A 127.0.0.1"
local-data: "localhost.localdomain. IN AAAA ::1"
local-data: "localhost. IN AAAA ::1"

# 本地域名解析
local-zone: "intranet.local." static
local-zone: "example.local." static
local-data: "fb5.intranet.local. IN A 192.168.1.5"
local-data: "ub19.intranet.local. IN A 192.168.1.19"
local-data: "ub19.example.local. IN A 192.168.1.19"
local-data: "mail.example.local. IN A 192.168.1.19"

即interface需要写上ip和127.0.0.1 或者直接写0.0.0.0

forward-addr需要配置公网dns:forward-addr: 211.137.191.26

在/etc/resolv.conf文件,dns服务器的dns要指向127.0.0.1

当然,如果直接指向本机的ip地址,也是可以的。

相关推荐
Leinwin4 小时前
OpenClaw 多 Agent 协作框架的并发限制与企业化规避方案痛点直击
java·运维·数据库
2401_865382504 小时前
信息化项目运维与运营的区别
运维·运营·信息化项目·政务信息化
漠北的哈士奇4 小时前
VMware Workstation导入ova文件时出现闪退但是没有报错信息
运维·vmware·虚拟机·闪退·ova
如意.7595 小时前
【Linux开发工具实战】Git、GDB与CGDB从入门到精通
linux·运维·git
运维小欣5 小时前
智能体选型实战指南
运维·人工智能
yy55275 小时前
Nginx 性能优化与监控
运维·nginx·性能优化
爱吃土豆的马铃薯ㅤㅤㅤㅤㅤㅤㅤㅤㅤ6 小时前
Linux 查询某进程文件所在路径 命令
linux·运维·服务器
05大叔8 小时前
网络基础知识 域名,JSON格式,AI基础
运维·服务器·网络
安当加密8 小时前
无需改 PAM!轻量级 RADIUS + ASP身份认证系统 实现 Linux 登录双因子认证
linux·运维·服务器
dashizhi20158 小时前
服务器共享禁止保存到本地磁盘、共享文件禁止另存为本地磁盘、移动硬盘等
运维·网络·stm32·安全·电脑