-
Notifications
You must be signed in to change notification settings - Fork 1.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Restore port 53 of dnsmasq after the smartdns is stopped. #1738
base: master
Are you sure you want to change the base?
Conversation
@TDXCHAIN 何意思? |
@@ -119,8 +119,10 @@ stop_main_dns() | |||
uci -q set dhcp.@dnsmasq[0].dns_redirect=1 | |||
uci -q delete dhcp.@dnsmasq[0].old_dns_redirect | |||
} | |||
uci -q delete dhcp.@dnsmasq[0].port | |||
[ "$dnsmasq_port" = "0" ] && { | |||
uci -q set dhcp.@dnsmasq[0].port="53" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
不设置的话应该是有默认值的。
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
https://github.com/openwrt/luci/blob/master/modules/luci-mod-network/htdocs/luci-static/resources/view/network/dhcp.js#L696
https://github.com/openwrt/openwrt/blob/main/package/network/services/dnsmasq/files/dhcp.conf
这是dhcp的配置情况,默认的是这个样子,实际应该没有53端口,只是openwrt默认的是53端口转发。。。
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
这里选择删除端口信息的话,dnsmasq应该会创建默认的53端口配置。
是遇到什么问题么?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
这里选择删除端口信息的话,dnsmasq应该会创建默认的53端口配置。
是遇到什么问题么?
根据我实际使用情况来看,dnsmasq默认配置上端口号可能为空值(此时确实是53端口)。在此情况下,smartdns将其改写为53正确但不合理(别动我的dnsmasq!)。
顺便说一下当openwrt只有一个接口且配置为dhcp client时,配置文件中的接口ip也可能是空值,也会导致smartdns的一些问题。
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
这里选择删除端口信息的话,dnsmasq应该会创建默认的53端口配置。
是遇到什么问题么?
uci配置和实际运行配置不一样。dnsmasq创建53端口的运行配置不会改变uci的配置,此时读uci配置的端口号可能是空值。
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
uci配置和实际运行配置不一样。dnsmasq创建53端口的运行配置不会改变uci的配置,此时读uci配置的端口号可能是空值。
实际情况是:
1、在smartdns未启动时,dnsmasq默认配置上端口号实际是空值,如事前dnsmasq默认配置上端口号设置为53,端口即为53。
2、在smartdns启动后,smartdns将dnsmasq默认配置上端口号改写为0。
3、停用smartdns后,smartdns会将dnsmasq默认配置上端口号变为空值,而不会恢复为53端口(假设第1项smartdns未启动情况且已设置了dnsmasq默认配置上端口号为53)。
No description provided.