用途:本机作为局域网 DNS 过滤机(AdGuard Home),拦截网络内游戏等域名访问。
设备一览
| 设备 | 角色 | 地址 / 端口 |
|---|---|---|
| 华为路由器 HUAWEI-EX1XZ2 | 网关 / DHCP | 192.168.3.1 |
| Dell OptiPlex 7040 | DNS 过滤机 | 固定 IP 192.168.3.7(WiFi wlp3s0) |
| AdGuard Home | DNS / 管理界面 | DNS :53,管理 http://192.168.3.7:3000 |
| 手机 / PC / 游戏设备 | 客户端 | 192.168.3.x(DHCP) |
网段:192.168.3.0/24
拓扑图
flowchart TB
Internet((互联网))
subgraph WAN["外网侧"]
Internet
end
Router["华为路由器<br/>HUAWEI-EX1XZ2<br/>LAN: 192.168.3.1<br/>DHCP / 网关"]
Internet <-->|"WAN"| Router
subgraph LAN["局域网 192.168.3.0/24"]
Opti["Dell OptiPlex 7040<br/>WiFi: wlp3s0<br/>固定 IP: 192.168.3.7"]
AG["AdGuard Home<br/>DNS :53<br/>管理 :3000"]
Clients["手机 / PC / 游戏设备<br/>经 DHCP 拿地址"]
Opti --- AG
end
Router <-->|"WiFi / 有线"| Opti
Router <-->|"WiFi / 有线"| Clients
Clients -.->|"① DNS 查询 → 192.168.3.7"| AG
AG -.->|"② 放行:向上游解析<br/>拦截:游戏域名不返回"| Internet
Clients -->|"③ 普通上网流量<br/>仍走网关 192.168.3.1"| Router
DNS 拦截数据流
sequenceDiagram
participant D as 终端设备
participant R as 华为路由<br/>192.168.3.1
participant A as OptiPlex AdGuard<br/>192.168.3.7
participant U as 上游 DNS / 互联网
Note over R: DHCP 把 DNS 下发为 192.168.3.7
D->>A: DNS 查询(如游戏域名)
alt 命中黑名单
A-->>D: 拦截(NXDOMAIN / 假 IP)
else 正常域名
A->>U: 向上游解析
U-->>A: 返回真实 IP
A-->>D: 返回解析结果
D->>R: 业务流量走默认网关
R->>U: 转发上网
end
要点说明
- AdGuard 只拦 DNS:域名解析在 OptiPlex 上过滤;实际网页/游戏数据包仍经华为路由上网。
- 全网生效前提:路由器 DHCP 的 DNS 服务器填
192.168.3.7,客户端重连 WiFi 后生效。 - 本机固定 IP:OptiPlex 已设为
192.168.3.7/24,网关192.168.3.1。建议在路由里做 DHCP 地址保留,避免冲突。 - 53 端口:已关闭
systemd-resolved的DNSStubListener,由 AdGuard 监听*:53。 - 绕过可能:客户端改用公共 DNS、DoH/DoT、代理、直连 IP 时,DNS 黑名单可能失效。
相关路径
| 项目 | 路径 |
|---|---|
| AdGuard 数据目录 | /home/liu/adguardhome/ |
| 游戏拦截示例规则 | /home/liu/adguardhome/game-blocklist.txt |
| 固定 IP 脚本 | /home/liu/adguardhome/set-static-ip.sh |
| 释放 53 端口脚本 | /home/liu/adguardhome/fix-port53.sh |
| 管理界面 | http://192.168.3.7:3000 |