在企业或家庭网络环境中,我们经常需要将DNS查询请求转发到特定的上游DNS服务器(如Google DNS、阿里云DNS等),以提升解析速度、增强安全性或实现内部域名解析。本文将详细讲解如何在RockyLinux系统中配置DNS转发功能,即使你是Linux新手,也能轻松上手。
DNS转发是指本地DNS服务器(如使用dnsmasq或bind搭建的服务器)在收到客户端的DNS查询请求后,若自身无法解析该域名,则将请求转发给指定的上游DNS服务器(如8.8.8.8、114.114.114.114等),并将结果返回给客户端。
本教程基于RockyLinux 8/9系统,使用轻量级的 dnsmasq 作为DNS转发器。它安装简单、资源占用低,非常适合中小型网络环境。
打开终端,以 root 用户或具有 sudo 权限的用户执行以下命令:
sudo dnf install -y dnsmasq 先备份原始配置文件:
sudo cp /etc/dnsmasq.conf /etc/dnsmasq.conf.bak 然后编辑主配置文件:
sudo vi /etc/dnsmasq.conf 在配置文件中找到或添加以下关键参数(建议删除前面的注释符号 # 并修改值):
# 监听所有接口(或指定IP,如192.168.1.100)listen-address=127.0.0.1,192.168.1.100# 允许来自局域网的查询(根据你的网段调整)interface=eth0# 禁用读取/etc/resolv.conf,使用自定义上游DNSno-resolv# 设置上游DNS服务器(可多个)server=8.8.8.8server=114.114.114.114server=223.5.5.5# 启用DNS缓存(默认150条,可调整)cache-size=1000# 可选:为内部域名设置解析(例如 dev.local)# address=/dev.local/192.168.1.50 说明:
listen-address:指定dnsmasq监听的IP地址,确保包含你希望客户端访问的IP。no-resolv:防止dnsmasq自动读取系统的 /etc/resolv.conf 文件。server:定义上游DNS服务器,即你要转发到的目标DNS。sudo systemctl start dnsmasqsudo systemctl enable dnsmasq 允许UDP 53端口(DNS使用):
sudo firewall-cmd --permanent --add-service=dnssudo firewall-cmd --reload 在客户端(或本机)将DNS服务器指向RockyLinux主机的IP(如192.168.1.100),然后执行:
nslookup google.com 192.168.1.100 如果返回正确的IP地址,说明RockyLinux DNS转发配置成功!
systemctl status dnsmasqjournalctl -u dnsmasq -fss -tulnp | grep :53通过本教程,你已经掌握了在Rocky Linux中配置DNS服务器设置和本地DNS转发教程的核心方法。使用 dnsmasq 不仅简单高效,还能为你的网络环境带来更好的解析体验和管理灵活性。
如果你正在寻找更高级的功能(如权威DNS、区域传输等),可以考虑使用 bind,但对于大多数场景,dnsmasq 已经足够强大。
关键词回顾:RockyLinux DNS转发配置、DNS服务器设置、Rocky Linux网络配置、本地DNS转发教程
本文由主机测评网于2025-12-10发表在主机测评网_免费VPS_免费云服务器_免费独立服务器,如有疑问,请联系我们。
本文链接:https://www.vpshk.cn/2025125720.html