麒麟v10arm使用dnsmasq部署本地DNS服务器

一、安装dnsmasq服务

1. 解压

有网络直接yum就行

复制代码
mkdir -p /root/dnsmasq
mv dnsmasq-kylin-arm-offline.tar.gz /root/dnsmasq
cd /root/dnsmasq
tar -zxvf dnsmasq-kylin-arm-offline.tar.gz

2. 一键离线安装(解决依赖闭环)

复制代码
# 进入rpm目录,本地全部安装
cd /root/dnsmasq
yum localinstall ./*.rpm -y

3.验证 + 启用服务

复制代码
# 查看版本
dnsmasq -v

# 开机自启 + 启动
systemctl enable --now dnsmasq
systemctl status dnsmasq

二、配置dns服务器

麒麟默认自带 dnsmasq 冲突、还有系统 dhcp、resolved,先关:

复制代码
# 关闭系统DNS解析服务
systemctl stop systemd-resolved
systemctl disable systemd-resolved

# 关闭自带dhcp(防止端口冲突)
systemctl stop dhcpd || true
systemctl disable dhcpd || true

1. 备份原配置

复制代码
cp /etc/dnsmasq.conf /etc/dnsmasq.conf.bak

2. 修改配置

复制代码
# 作用:指定 dnsmasq 监听哪张网卡(只在这张网卡提供DNS服务),你的网卡是 enp1s0,就写 interface=enp1s0
interface=enp1s0

# 作用:只绑定指定的网卡,不监听 0.0.0.0(防止监听所有网卡)
bind-interfaces

# 作用:DNS 缓存大小,表示缓存 1000 条解析记录。越大解析越快,本地DNS 1000 足够用
cache-size=1000

 
# 作用:上游公共DNS(当解析外网域名时,用这两个DNS去查) 223.5.5.5 = 阿里云DNS  # 119.29.29.29 = 腾讯云DNS
 server=223.5.5.5
server=119.29.29.29

 
# 作用:要求查询必须是完整域名(如 a.com),不允许非法域名,防止畸形DNS请求,安全选项
domain-needed

 
# 作用:不转发私有网段IP的反向解析(防止泄露内网信息) 安全选项,本地DNS必开
bogus-priv

 
# 自定义本地域名解析
# 格式:address=/自定义域名/要解析到的IP
# 作用:当设备访问这个域名时,直接返回你指定的IP
# 访问 local.server → 解析到 10.0.51.83
address=/local.server/10.0.51.83

#  只解析 binzi.heihei.com 到 10.0.51.83
address=/binzi.heihei.com/10.0.51.83

#  泛解析所有 *.heihei.com 域名到 10.0.51.83
address=/heihei.com/10.0.51.83

 
# 【泛域名 / 通配符 写法说明】
 
# ------------------------------
# 例子1:把所有 .com 域名 → 指向 10.0.51.83
# ------------------------------
address=/com/10.0.51.83

# ------------------------------
# 例子2:把所有 .net 域名 → 指向 10.0.51.83
# ------------------------------
address=/net/10.0.51.83


# ------------------------------
# 通配所有域名(任何域名都解析到 10.0.51.83)
# 格式:address=/#/IP
# ------------------------------
address=/#/10.0.51.83

3. 放行防火墙

复制代码
firewall-cmd --permanent --add-port=53/udp
firewall-cmd --permanent --add-port=67/udp
firewall-cmd --reload

4. 重启 dnsmasq 生效

复制代码
systemctl restart dnsmasq
systemctl enable dnsmasq
systemctl status dnsmasq

5. 检测是否正常

复制代码
# 检测DNS解析
[root@5183 dnsmasq]# nslookup local.server 10.0.51.83
Server:         10.0.51.83
Address:        10.0.51.83#53

Name:   local.server
Address: 10.0.51.83




# 检测DHCP参数
[root@5183 dnsmasq]# dnsmasq --test
dnsmasq: syntax check OK.
相关推荐
utf8mb4安全女神10 小时前
expect工具,expect脚本,实现全自动免交互登录ssh,shell脚本和expect结合使用,在多台服务器上创建1个用户【linux】
linux·运维·服务器
暮云星影10 小时前
全志开发环境搭建及编译构建
linux·arm开发·驱动开发
vortex510 小时前
Alpine Linux 运行架构解析:从内核到容器的精简之道
linux·运维·架构
程序猿零零漆10 小时前
Python核心进阶三连:闭包装饰器、深浅拷贝、网络编程从原理到实战
网络·python
王二端茶倒水11 小时前
智慧酒店 WiFi 运营:从 Portal 认证到住客体验闭环
运维·物联网·架构
三块可乐两块冰11 小时前
rag学习5
linux·前端·python
::呵呵哒::11 小时前
在macOS/Linux上优雅管理多个JDK版本:环境变量与别名配置指南
java·linux·macos
袖手蹲11 小时前
K10 百炼 AI 语音助手从网络配置到全链路语音交互的嵌入式实战
网络·人工智能·交互
liulilittle11 小时前
KCC: An Exploration Along the Lines of BBR
网络·tcp/ip·计算机网络·bbr·通信·拥塞控制·kcc
vortex511 小时前
Witr:系统进程溯源与行为分析工具
linux·运维·服务器