一,定义
DNS:Domain Name System 域名系统,端口 UDP 53(查询)、TCP 53(区域传输 / 大包)。 DNS 服务器作用:把域名(ntp.local、uav-gcs01、server01)翻译成内网 IP,设备不用记数字 IP;离线内网无公网解析,必须自建内网 DNS。
两种模式
- 递归 DNS:给内网设备做查询(我们内网自建的就是这类)
- 权威 DNS:存放本内网专属域名解析记录(内网机器、NTP、地面站、仿真服务器都在这里登记)
二、内网自建 DNS 核心价值(贴合你的无人机仿真环境)
- 统一域名访问:
ntp.uav.lan直接指向内网 NTP 服务器 IP,不用记 192.168.x.x; - 离线环境可用:断外网也能解析内网所有设备;
- 批量管理 IP 变更:某台地面站换 IP,只改 DNS 一条记录,所有客户端自动生效;
- 配合 NTP、文件服务器、仿真集群统一域名体系;
- 可拦截外网域名、管控内网访问(涉密 / 封闭实验室常用)。
三、主流内网 DNS 软件
- Bind9(标准工业级,功能最全,Linux 首选,支持内网区域、转发)
- Dnsmasq(轻量,路由器 / 迷你服务器、小规模内网,配置简单)
- Windows DNS 服务(Windows Server 配套,Windows 机房友好)
方案 1:Dnsmasq 轻量内网 DNS(推荐,100 台以内设备)
适合仿真机房、小型无人机集群、单网段内网
1. 安装(CentOS / Ubuntu)
# CentOS/RHEL
yum install dnsmasq -y
# Ubuntu/Debian
apt install dnsmasq -y
2. 主配置 /etc/dnsmasq.conf
关键配置片段:
# 监听内网网卡,替换你的服务器内网IP
listen-address=127.0.0.1,192.168.1.100
# 上游公网DNS(有外网时用;纯离线注释掉)
server=223.5.5.5
# 内网域名后缀
local=/uav.lan/
# 内网静态解析记录(自定义所有设备)
address=/ntp.uav.lan/192.168.1.100
address=/gcs01.uav.lan/192.168.1.101
address=/sim01.uav.lan/192.168.1.102
address=/storage.uav.lan/192.168.1.103
# 允许所有内网网段查询
interface=eth0
3. 放行防火墙 53 端口 UDP/TCP
firewall-cmd --add-port=53/udp --permanent
firewall-cmd --add-port=53/tcp --permanent
firewall-cmd --reload
4. 启动自启
systemctl enable --now dnsmasq
5. 测试解析
nslookup ntp.uav.lan 192.168.1.100
ping ntp.uav.lan
6. 客户端配置
所有仿真机、地面站、飞控板网关 DNS 填写这台服务器 IP:192.168.1.100
方案 2:Bind9 企业级内网 DNS(多网段、大规模集群)
多子网、几十上百台仿真设备、需要分区域管理用 Bind9,可做纯离线权威 DNS,不依赖外网。 核心结构:
- 全局配置文件
/etc/named.conf - 内网区域文件:
/var/named/uav.lan.zone,存放所有设备域名 - IP 映射
纯离线内网场景(无外网)
注释所有上游转发 DNS,仅提供内网域名解析,外部域名全部无法解析,适配封闭实验室。
方案 3:Windows Server 自带 DNS 服务
- 服务器管理器 → 添加角色 → DNS 服务器
- 新建正向查找区域(内网域如
uav.lan) - 手动新建 A 记录:域名 + 对应内网 IP(ntp、地面站、仿真节点)
- 防火墙放行入站 UDP/TCP 53
- 客户端 IPv4 首选 DNS 填本机 Windows DNS 服务器 IP
四、内网 DNS + NTP 配套最佳实践(无人机仿真集群)
- 统一内网域名后缀:
.uav.lan - NTP 服务器绑定域名
ntp.uav.lan,所有设备 NTP 地址填域名而非 IP; - 仿真地面站、多机仿真节点、存储服务器全部录入 DNS;
- DHCP 服务器下发 DNS 地址,新设备插上网线自动获取 DNS,无需手动配置;
- 纯离线环境:关闭上游公网转发,仅保留内网解析。