roylez/openwrt_pangolin

unbound已设置tcp-upstream,但dns查询并没有转发到shadowsocks

Closed this issue · 2 comments

手动启动ss-redir打印verbose日志,在本机作如下测试:

dig +tcp youtube.com @168.126.63.1
dig -p 1053 +tcp youtube.com @10.10.10.1

4执行第一条命令时,ss-redir能观察到168.126.63.1:53的流量,执行第二条时没有记录,也查询不到结果(应该是到DNS Server的TCP连接被阻断了)。

由于unbound没有verbose日志,不确定问题出在哪。倾向于认为是unbound自己的问题,可能压根就没有发起upstream查询 我把forward-addr改成本机IP,开nc监听,能观察到查询流量,所以看起来是我的iptables没有设置对?

确实,unbound的dns查询我没有转发,因为用tcp查询基本上不会被墙,所以没整。如果你需要dns查询也走代理,需要在unbound里设置上游成你的本机的代理地址。

原因是iptables默认只针对lan的接口生效,dns查询是从路由器lo中转的,不使用iptables规则。