smartdns
smartdns copied to clipboard
请问如何只监听指定接口?
需求应用场景 对于特定接口的 53 端口,dnsmasq 不监听(这个 openwrt 提供),改由 smartdns 监听。
建议的方案 加入功能 “监听接口” 或者完善 “绑定到设备” / “绑定的设备名称” 功能。
设备信息
-
设备信息(CPU,厂家)
ath79/generic -
固件信息 OpenWrt 23.05
目前个人临时绕过方案是让 smartdns 监听非 53 端口,然后手动写配置 bind ...
重复#1229
openwrt的话可以直接在luci里填
@PikuZheng 在问题描述中提到了
完善 “绑定到设备” / “绑定的设备名称” 功能
这个功能看起来不生效,即使使用了这个绑定到设备,最终生成的配置是
bind [::]@xxx
使用 netstat -tulnp 查看结果,还是监听的全部,也就是 [::]。
而 OpenWrt 的 dnsmasq,选定该功能后,则完全不监听其它 ~端口~(接口)(这个选项上面还有一个小的配置。)
因为实际上,我的目标就是
dnsmasq 继续发挥作用,监听特定几个接口~smartdns 监听一个其它指定的接口。
BTW,如果这个功能完善了以后,建议界面上完善成像 OpenWrt 那样的选择接口,而不是现在的输入接口。
有何不妥?
明白了 你需要的功能相当于dnsmasq的”非全部地址“
明白了 你需要的功能相当于dnsmasq的”非全部地址“
是的,就是这个“非全部地址”,这样感觉也一目了解一些,到底监听哪个没监听哪个。
看了下 dnsmasq 源码以及 ChatGPT 回复,感觉实现还有点难度...
@PikuZheng 先看看我这个是不是个伪需求~如果只有我一个人想用,我使用其它方式绕过就好。 如果你觉得还有其他人使用,我就再看看要不要提个 PR...
最近发现在几个项目中之前提的需求,作者实现或者PR实现后,到最后发现只有少数人使用,自己都不好意思....
我也需要这个功能,我填绑定网卡lo,还是绑定到0.0.0.0,我就想只监听127.0.0.1+端口,接收由其它分流软件的查询包,比如chinadns-ng
我也需要这个功能,我填绑定网卡lo,还是绑定到0.0.0.0,我就想只监听127.0.0.1+端口,接收由其它分流软件的查询包,比如chinadns-ng
你的情况可以直接配置 bind 127.0.0.1:53
我也需要这个功能,我填绑定网卡lo,还是绑定到0.0.0.0,我就想只监听127.0.0.1+端口,接收由其它分流软件的查询包,比如chinadns-ng
你的情况可以直接配置 bind 127.0.0.1:53
透明代理本身劫持dns到127.0.0.1:53,不需要单独设置,我现在是透明代理通过chinadns-ng进行国内外分流,直连和代理分别转发到smartdns的6053和6553端口,smartdns本身只需监听127.0.0.1就行了,这样完全避免端口对外部暴露,代码是不是可以这样优化一下:就是绑定设备选择lo的话就关闭0.0.0.0的监听转为127.0.0.1监听,这样也方便移植吧,最新的passwall已经开放了直连和代理的自定义,我就是这样使用的,效果良好,希望以后smartdns能像chinadns-ng那样能作为代理软件的组件编译进去