前言
本文档所涉及的操作步骤,仅适用于个人搭建的内网环境,目的是为技术爱好者提供网络端口配置、DNS 服务原理的学习与测试参考,帮助理解 UDP 53 端口的功能特性及网络服务配置逻辑。
所有操作均以合法合规为前提,使用者需确保测试环境为个人合法所有或已获得完全授权,严禁将相关操作用于任何公共网络、他人网络或未授权的网络环境中,不得违反《网络安全法》及相关法律法规、管理规定。
本文档仅提供技术学习交流,严禁以任何形式用于商业盈利、二次售卖或非法传播。请在下载 / 获取本文档后的 24 小时内自觉删除全部内容及副本,若因未按要求删除或违规使用导致的一切法律纠纷、责任损失,均由使用者自行承担,与文档提供方无关。
一、判断内网环境可行性
在进行后续配置前,可先通过简单测试判断当前环境是否支持相关端口配置测试,步骤如下:
- 连接校园网(无需进行额外认证,确保设备已接入网络)
- 打开电脑 CMD 命令行工具(Windows 系统)或终端(Linux/Mac 系统)
- 输入命令执行后查看输出结果是否如下
nslookup baidu.com

若命令能正常解析出百度的 IP 地址(即 DNS 解析正常),说明当前内网环境的 DNS 相关配置未被限制,可进行后续端口配置测试
二、释放并配置 UDP 53 端口
UDP 53 端口是 DNS(域名系统)的默认解析端口,若服务器的 53 端口被系统自带的systemd-resolved服务占用,需先释放该端口并配置本地 DNS,具体步骤如下(以 Ubuntu 服务器为例):
1. 停用 systemd-resolved 服务
通过 SSH 工具连接服务器,输入以下命令停止占用 53 端口的服务:
systemctl stop systemd-resolved

2. 编辑 resolved.conf 配置文件
输入以下命令打开配置文件进行修改:
vi /etc/systemd/resolved.conf
进入 Vi 编辑器后,按i键切换至插入模式,按照以下说明修改配置(注释部分为修改要点):
[Resolve]
DNS=223.5.5.5 # 取消该行注释,国内改为223.5.5.5,国外1.1.1.1#FallbackDNS= # 保持默认注释状态#Domains= # 保持默认注释状态#LLMNR=no # 保持默认注释状态#MulticastDNS=no # 保持默认注释状态#DNSSEC=no # 保持默认注释状态#Cache=yes # 保持默认注释状态DNSStubListener=no # 取消该行注释,将默认的yes改为no,关闭本地DNS存根监听
修改完成后,按Esc键退出插入模式,输入:wq!(英文冒号 + wq!),回车保存并退出编辑器。

3. 配置 resolv.conf 软链接
执行以下命令建立正确的 DNS 配置文件软链接,确保配置生效:
ln -sf /run/systemd/resolve/resolv.conf /etc/resolv.conf

4. 验证 53 端口释放状态
输入以下两个命令,检查 53 端口是否已成功释放(无程序占用):
lsof -i:53 # 查看端口占用进程netstat -ap | grep 53 # 过滤53端口相关网络连接
若 lsof -i:53 无任何返回结果,且 netstat -ap | grep 53 仅返回与 53 端口无关的进程信息,说明 53 端口已成功释放,无程序占用:

若返回结果中出现类似 named 1234/named UDP *:53、systemd-res 5678/systemd-resolve TCP *:53 的内容,则说明 53 端口仍被占用,需重新排查 systemd-resolved 服务是否已停用
三、WireGuard 安装
在完成 UDP 53 端口释放后,可在个人服务器中安装 WireGuard 并配置客户端,以下操作仅适用于合法内网测试,严禁用于公共网络或未授权环境:
1.安装 WireGuard 并创建首个客户端(E1)
通过一键安装脚本完成 WireGuard 服务安装,同时绑定 53 端口(与前文释放的 UDP 53 端口对应),并创建名为 “E1” 的客户端,具体步骤如下:确保服务器已连接内网网络,且具备 root 权限(执行 sudo -i 切换至 root 用户,若已为 root 可跳过)在终端中输入以下命令,执行一键安装脚本(脚本来源为公开技术资源,仅用于学习测试):
bash <(wget -qO- https://get.vpnsetup.net/wg) --auto --port 53 --clientname E1 --dns1 223.5.5.5
命令参数说明:
--auto 自动完成安装流程,无需手动交互--port 53 将 WireGuard 服务端口绑定到 UDP 53 端口(需确保 53 端口已释放,否则会安装失败)--clientname E1 创建名为 “E1” 的客户端配置(后续可通过该客户端连接WireGuard服务)--dns1 223.5.5.5 为客户端配置 DNS 服务器(选用阿里云 DNS,适配国内环境解析需求)
等待安装完成:脚本执行过程中会自动安装依赖、配置服务、生成客户端密钥及配置文件,安装成功后会在终端输出客户端连接信息(如二维码、配置文件路径等,建议截图或复制保存,用于后续客户端连接)

2.添加第二个客户端(E2)
WireGuard 客户端配置遵循 “一个配置对应一台设备” 原则:即单个客户端配置(如 E1)仅支持一台设备连接WireGuard服务,若多台设备同时使用同一配置,会导致连接冲突、网络中断等问题。
若需新增一台设备接入WireGuard服务,无需重新安装服务,直接为该设备创建独立客户端(命名为 “E2”)即可,具体步骤如下:保持服务器 root 权限,在终端输入命令(为新设备生成独立客户端配置):
bash <(wget -qO- https://get.vpnsetup.net/wg) --addclient E2 --dns1 223.5.5.5
命令参数说明:
--addclient E2 在现有 WireGuard 服务中新增名为 “E2” 的独立客户端配置,与已有的 “E1” 配置完全隔离,避免设备连接冲突;
--dns1 223.5.5.5 为 “E2” 客户端(即新设备)配置阿里云 DNS,确保多设备内网解析规则一致。
执行完成后:终端会输出 “E2” 客户端的专属连接信息(含唯一密钥、设备连接二维码、配置文件路径),需将该配置单独导入新设备(不可与 E1 设备混用),即可实现新设备的 WireGuard 连接。
补充说明:若后续需新增第三台、第四台设备,可重复执行上述命令,仅需将 “E2” 替换为自定义客户端名称(如 E3、E4),即可生成多组独立客户端配置,满足多设备同时接入需求。
四、WireGuard 客户端配置
打开WireGuard手机客户端,点击右下角加号,选择扫描二维码
扫描之前在安装或者添加新的客户端的二维码
随意命名后点击创建隧道


至此本篇教程结束
评论(1)