1. 开始

1.1 更新日志

2023/01/29: 兼容最新版SmartDNS
2022/08/23:配置文件更换了延迟较低的DNS
2022/08/10:优化配置文件(修复Passwall中DNS未运行)

1.2 首先先下载两个文件并解压到同一个文件夹

  1. 下载地址
  2. 备用下载地址1
  3. 备用下载地址2: Google Drive
  4. 两压缩文件解压得到如下文件:
    image-1648218150396

2. 配置SmartDNS

2.1 把下载的文件上传至你的OpenWrt

image-1648218333959

2.1.1 红框里的文件(覆盖)上传至: /etc/smartdns

屏幕截图(1)
image-1648218700733

2.1.2 蓝框里的文件(覆盖)上传至: /etc/config

image-1648219193436

2.2 回到OpenWrt加载SmartDNS配置

2.2.1 刷新SmartDNS界面

查看是否出现如图信息:
image-1656585839693
FAQ:图中6055是把第一服务器(6053)和第二服务器(7913)都指向这个端口并分组,下面ADG写这个没错
image-1648219581708

2.3 启动SmartDNS

image-1656584634244

3. 配置AdGuard Home

3.1 安装AdGuard Home(可能需要科学网络)

image-1648219736268

3.2 启动AdGuard Home

image-1648219859829

3.4 设置AdGuard Home端口

image-1648220122561
温馨提示:新版固件自动集成ADG,默认端口号为1745
可在这里更改为5553,默认的1745也可以用但得在"4."端口写1745
12324-1661769072356

3.5 设置AdGuard Home 密码(略)

3.6 AdGuard Home DNS设置

上游 DNS 服务器和Bootstrap DNS 服务器全写和本文一样,因为使用SmartDNS解析,去广告使用AdGuard

上游服务器:127.0.0.1:6055(指向SmartDNS)
image-1661263787067
Bootstrap DNS 服务器:127.0.0.1:6055(指向SmartDNS)
image-1648220354285
image-1648220515600
1 (3)

3.7 检查配置并保存

如AdGuard出现:"指定的DNS服务器不可用"请检查SmartDNS是否运行,第一服务器(6053),第二服务器(7913),合并端口(6055),少一个都会导致检查不通过
image-1648220868694

3.8 添加过滤器(略)

4. DHCP/DNS(必做)

注意DNS转发只留:127.0.0.1#5553 (转发到ADG服务端口)
参考:image-1660116641331
image-1648224219856-1660116735891

5. 配置Passwall

5.1 更新规则列表

image-1648221722404-1648548394411

5.2 添加本文自用规则(可选)

复制粘贴即可
image-1648222633834

5.3 Passwall 过滤模式: DNS设置

127.0.0.1:7913是SmartDNS第二服务器端口

  1. 旧版Passwall
    过滤模式:自定义DNS(UDP)
    自定义DNS:127.0.0.1#7913

image-1648221262294

  1. 新版Passwall
    DNS分流:Dnsmasq
    过滤模式:通过UDP请求DNS
    自定义DNS:127.0.0.1:7913
    image-1648221471034-1648548469578

5.4 选择节点保存并启动(略)

image-1648223360423
image-1656585496413

6. 错误自查

FAQ:本文的ADG支持去除国内和国外的广告,可ADG添加自定义规则: ||*360*^测试360网站
image-1656583786981

7. 进阶操作(可选)

7.1 添加指定走国内或是国外DNS的域名

进入SmartDNS域名设置添加
如让百度走国内DNS
nameserver /.baidu.com/china #直连
如让google走国外DNS
nameserver /.google.com/GFW #代理
image-1656587936153

7.2 为SmartDNS添加额外的DNS服务器

温馨提示:过多的DNS服务器只会拖慢解析速度!
公共DNS列表:已知的DNS 提供商

SmartDNS添加DNS服务器必须添加参数,无参数将导致分组查询无效和去污染无效!
解析黑名单ip表:-blacklist-ip

国外服务器参照此图

#分组并过滤返回黑名单表里的IP
-exclude-default-group -blacklist-ip      

image-1654183448028

国内服务器参照此图:

#过滤返回黑名单表里的IP
-blacklist-ip

image

8.Adguard Home显示查询客户端IP(可选,有bug,不建议开启)

默认客户端显示的是127.0.0.1
image-1660117065839

8.1

  1. 把SmartDNS的重定向修改为:“作为dnsmasq的上游服务器”
  2. AdGuardHome重定向修改为:“重定向53端口到AdGuardHome”
  3. 防火墙注释下面规则
#iptables -t nat -A PREROUTING -p udp --dport 53 -j REDIRECT --to-ports 53
#iptables -t nat -A PREROUTING -p tcp --dport 53 -j REDIRECT --to-ports 53
#[ -n "$(command -v ip6tables)" ] && ip6tables -t nat -A PREROUTING -p udp --dport 53 -j REDIRECT --to-ports 53
#[ -n "$(command -v ip6tables)" ] && ip6tables -t nat -A PREROUTING -p tcp --dport 53 -j REDIRECT --to-ports 53

AdGuardHome显示客户端IP已知bug:passwall直连列表无法使用

9. 关于

本文全凭个人理解和网上收集资料总结得出,仅供学习和交流使用。