OpenWRT 分流DNS的设置

这篇具有很好参考价值的文章主要介绍了OpenWRT 分流DNS的设置。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

  • 文章出处:

    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`

涉及到的组件

  • Passwall
  • AdGuard 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)

重点疑难解答

  1. (不推荐)你到底需要不需要openwrt自带的dnsmasq,如果不需要,请更改dnsmasq的端口
  2. (推荐)如果需要使用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,然后被缓存住。(国外因为跳过测速,所以多个域名是正确的)文章来源地址https://www.toymoban.com/news/detail-446703.html

到了这里,关于OpenWRT 分流DNS的设置的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • OpenWrt 在没有80\443端口、不能dns验证的情况下为自己的域名申请免费ssl证书

    本方法适用于使用OpenWrt 在没有80443端口、不能dns验证的情况下为自己的域名申请免费ssl证书。 提示: 1、如果你的网络的80或者443端口是开放状态,可直接使用https://letsencrypt.org/进行ssl申请,使用acme.sh脚本可快速完成。 2、如果你的网络ddns服务提供商服务到位,可以使用d

    2024年02月04日
    浏览(90)
  • 【openWrt】设置执行定时任务

    遇到一个问题,使用openWrt软路由搭建服务器,在docker装了一个maccmsV10,需要每天执行cj信息定时任务,但是maccmsV10本身不支持执行定时任务的配置的。  看了下,openWrt是支持本身是linux系统,所以是可以设置定时任务的。只需要装了cron服务。 设置计划任务,保存 重启cron服务

    2024年02月16日
    浏览(73)
  • OpenWrt 网络设置(六)

    UCI命令讲解

    2024年02月12日
    浏览(36)
  • 新版OpenWrt VLAN设置方法

    上篇《 上网和IPTV单线复用的方法 》中OpenWrt是较老版本的~ 新版OpenWrt 的网络菜单中已经找不到交换机了,Vlan功能被阉割了? 怎么可能? 官方文档是说用DSA替换了swconfig架构。 (官方原文: DSA stands for Distributed Switch Architecture and is the Linux kernel subsystem for network switches. Because

    2023年04月08日
    浏览(42)
  • openwrt+pppoe上网设置

    我佛了真的佛了,上学期买了个小米R3g,差不多是60块钱能买到的性价比最高的wifi5路由器了,卖家刷了openwrt,好家伙,复杂得一批,原理了解起来要花一定时间,只想最快速地能设置好,查了好几个教程,总算知道咋整了,然后!!今天断网了,我要重新设置的时候我忘记

    2024年02月12日
    浏览(39)
  • openwrt路由IPv6设置

    1. 目标版本: 19.xx及后续版本 2. WAN IPv6地址获取         PPOE拨号模式: 获取IPv6地址手动;余下操作与DHCP接入模式相同。         然后,新增接口DHCPv6客户端  DHCP服务器选项设置:  其他选项默认即可(若没有此选项,需要点击创建按钮)。此处DHCPv6服务选禁用(选中继也

    2024年02月05日
    浏览(126)
  • dns是什么意思?dns怎么设置(手动设置/软件设置)

    不知道大家有没使用过自己设置dns来最大化优化电脑网络速度,设置dns大家都比较陌生,因为一般也很少去提到,因为电脑一般默认的都是自动获取dns,无需我们去设置,但大家应该听说过电脑能上QQ但是打不开网页的情况吧,这些也与dns设置有关噢,下面编辑给大家介绍下

    2024年02月06日
    浏览(49)
  • OpenWrt 软路由 IPV6设置

    本例用的是 esir 大神的固件,版本是高大全 OpenWrt R21.8.6 GDQ v9.1[2021] 背景: 因为宽带是中国移动,光猫已改为桥接,通过软路由拨号,获取的IPv4是一个内网地址,没有公网的动态IP,打电话到移动客服说IPv4资源枯竭了,家庭宽带改不了公网IP,考虑到后面要做DDNS,端口映射

    2024年02月17日
    浏览(176)
  • 如何将电脑DNS设置为阿里云DNS 阿里公共DNS设置图文教程

    随着阿里公共DNS正式推出,如今国内用户又多了一种公共DNS服务,阿里公共DNS拥有多线BGP优秀链路、一流IP库,并具备防钓鱼、防DNS劫持的左右,可以给宽带用户带来稳定、安全、快速的DNS解析服务。以下本文将详细为大家介绍如何将电脑DNS设置为阿里云DNS,以下是具体的 阿

    2024年02月06日
    浏览(45)
  • OpenWrt之IPv6设置详解

    最近电信终于肯下发v6的地址了, 得为路由器配置一下了, 之前一直是处于关闭的状态, 今天重新设置回去. 从此有了v4与v6双公网地址. 光猫设置为 桥接 路由器设置为 PPPoE拨号 其他设备 均通过 无线/有线 方式接入路由器 以下内容全在OpenWrt 22.03及以上版本进行 选择 网络 - 接口

    2024年02月09日
    浏览(56)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包