OpenWRT 分流DNS的设置

您所在的位置:网站首页 ros国内外分流 OpenWRT 分流DNS的设置

OpenWRT 分流DNS的设置

2024-06-09 07:49| 来源: 网络整理| 查看: 265

文章出处:

OpenWRT 分流DNS的设置 · Issue #57 · luckyyyyy/blog

我自己根据实际需要基于上方的链接内容进行了相关补充

OpenWRT配置IPv6的方法参考如下文章:

OpenWRT IPv6 NAT配置

目前还是有许多人喜欢设置DNS,虽然会浪费一些转发性能,但如果明白其中的链路关系,合理设置后,还是能起到不错的效果的。同时也把正确的设置方式告诉大家。

同时请注意,删除你电脑,手机上的DNS(不要设置任何DNS)

`建议小白用户使用 Clash 更稳定且方便 此教程仅针对有特殊需求的用户 建议小白用户使用 Clash 更稳定且方便 此教程仅针对有特殊需求的用户 建议小白用户使用 Clash 更稳定且方便 此教程仅针对有特殊需求的用户 建议小白用户使用 Clash 更稳定且方便 此教程仅针对有特殊需求的用户 建议小白用户使用 Clash 更稳定且方便 此教程仅针对有特殊需求的用户

不是非常了解DNS,请不要设置,避免各种问题,作者本人已更换Clash,非常稳定。 同时作者建议使用 shellclash 如需要x86稳定固件 不喜欢折腾的 可以联系我 telegram: eval0xFFFD20`

涉及到的组件 PasswallAdGuard Home(可选)Dnsmasq (无需进行任何设置)SmartDNS (分流+主DNS服务器) AdGuard Home(可选)

主要是起到记录的作用,对需要查看记录的同学有帮助,至于DNS广告屏蔽,虽然有用但会误伤,慎重选择。同时由于记录文件较大,请一定要注意把记录时间改小,或者设置到有足够空间的目录中,否则会导致时间久了将磁盘撑满

配置上游DNS为如下部分:

127.0.0.1:6053 [::1]:6053

设置重定向53端口到AdGuardHome,如果使用了lean大佬的固件,请在防火墙,自定义规则中注释掉已添加的53端口重定向规则(大部分人都使用了lean的固件)

防火墙规则备份:

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 iptables -t nat -I POSTROUTING -o eth0 -j MASQUERADE

注意:

设置了重定向后,所有DNS结果都将应答非权威记录,如果不了解DNS协议请无视,这条并不会影响什么。在接口LAN → 自定义DNS服务器地址处,填写127.0.0.1。在接口LAN → 修改 → 下方的高级设置中,设定DHCP附加选项 6,192.168.2.1,保存并应用即可。 SmartDNS

主要用于分流和DNS查询,国外走 Cloudflare DNS ove TLS/HTTPS ,国内延迟优先(但可能影响P2P下载,实测实际还好)。

启用第一组服务器,选择作为dnsmasq上游,IPV6服务器√(需要先看下DHCP/DNS → 高级设置中禁止解析 IPv6 DNS 记录这一项一定要取消勾选,否则无效),双栈IP优选√,域名预加载√,过期缓存服务√。缓存大小尽量设置大一些(我这里设置的是1024)启用第二组服务器,端口6553,跳过测速√,跳过address规则√,跳过Nameserver规则√(非常重要,否则会死循环),跳过ipset规则√,跳过address SOA(#)规则√,跳过双栈优选√,跳过cache√,其余设置保持默认。配置上游服务器,部分设置要填写后点编辑才能看到。 国内上游填写你的运营商,额外填写一些国内常用的,例如阿里云,DNSPod等等,可以参考文末的配置,分组信息填写cn。国外上游填写1.1.1.1端口853,协议填写tls,分组信息填写passwall,额外的服务参数填写 -exclude-default-group 不指定端口的default端口:udp 53 tcp 53 tls 853 https 443 Passwall DNS分流 smartdns国内分组名 cn过滤模式 通过UDP请求DNS远程DNS 127.0.0.1:6553(填写smartdns的第二DNS端口) Dnsmasq(DHCP/DNS) DHCP/DNS设置中添加DNS转发127.0.0.1:6053(端口为smartdns监听的端口)高级设置中将DNS查询缓存的大小设置为0(因为DNS转发已经使用了)如果需要使用域名访问内网服务的话,将重绑定保护关闭(这是一个dnsmasq的保护策略,但是会阻止部分域名访问内网服务,详见链接:https://blog.csdn.net/qq_36348899/article/details/119297854)

重点疑难解答:

(不推荐)你到底需要不需要openwrt自带的dnsmasq,如果不需要,请更改dnsmasq的端口(推荐)如果需要使用dnsmasq,那么注意Lean固件里防火墙53端口优先的指令,注销防火墙的53端口优先指令(ipv4的和ipv6的都注释),然后配置AdGuardHome里的重定向服务,参考上部分Adguard Home配置 一些配置

smartdns 部分直接 vim 编辑 /etc/config/smartdns 照抄即可,无需手动设置,配置完记得界面上点击保存应用,或者uci命令刷新配置,我里面有杭州电信的DNS服务器,不是杭州的记得自己改掉,否则可能有负面效果。

config smartdns option server_name 'smartdns' option port '6053' option tcp_server '1' option seconddns_tcp_server '1' option coredump '0' option seconddns_server_group 'passwall' option seconddns_no_speed_check '1' option seconddns_no_dualstack_selection '1' option prefetch_domain '1' option ipv6_server '0' option force_aaaa_soa '1' option dualstack_ip_selection '1' option serve_expired '1' option redirect 'dnsmasq-upstream' option rr_ttl_min '300' option seconddns_port '6553' option seconddns_enabled '1' option seconddns_no_rule_nameserver '1' option seconddns_no_rule_addr '0' option seconddns_no_rule_soa '0' option seconddns_no_rule_ipset '0' option cache_size '300' option seconddns_no_cache '1' option enabled '1' list old_redirect 'dnsmasq-upstream' list old_port '6053' list old_enabled '1' config server option name 'aliyun' option ip '223.5.5.5' option port '53' option type 'udp' option blacklist_ip '0' option server_group 'cn' option enabled '1' config server option name '114' option ip '114.114.114.114' option port '53' option type 'udp' option blacklist_ip '0' option server_group 'cn' option enabled '1' config server option enabled '1' option type 'udp' option name 'Mobile' option ip '211.137.241.34' option port '53' option server_group 'cn' option blacklist_ip '0' config server option enabled '1' option type 'udp' option name 'Mobile2' option ip '211.137.241.35' option port '53' option server_group 'cn' option blacklist_ip '0' config server option name 'baidu' option ip '180.76.76.76' option port '53' option type 'udp' option blacklist_ip '0' option server_group 'cn' option enabled '1' config server option type 'udp' option port '53' option name 'DNSPod' option ip '119.29.29.29' option blacklist_ip '0' option server_group 'cn' option enabled '1' config server option enabled '1' option name 'cloud' option ip '1.1.1.1' option port '853' option type 'tls' option server_group 'passwall' option blacklist_ip '0' option addition_arg ' -exclude-default-group' config server option enabled '1' option type 'udp' option name 'CNNIC SDNS' option ip '1.2.4.8' option port '53' option server_group 'cn' option blacklist_ip '0' 如何验证?

登录路由器 使用 dig 或者 nslookup 检查下各端口的DNS以及分流情况

nslookup www.taobao.com 127.0.0.1:7913 返回的是节点对应淘宝最快的IP nslookup www.taobao.com 127.0.0.1:6053 返回的是国内最快的IP nslookup www.taobao.com 应该是国内

注:如果手动查询规则列表内的域名,使用端口6053,然后匹配规则,转发给7913,然后被缓存住。(国外因为跳过测速,所以多个域名是正确的)



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3