alwaystest / Blog

24 stars 2 forks source link

梅林V7.2 KoolShare之SS V3.1.2 DNS解析方式分析 #54

Open alwaystest opened 7 years ago

alwaystest commented 7 years ago

梅林V7.2 KoolShare之SS V3.1.2 DNS解析方式分析

标签(空格分隔): ShadowSocks Merlin KoolShare


6300V2上的Merlin系统好久没折腾过了,折腾路由器的时候发现SS上使用的某些技术已经看不懂了,浅探一番之后在这里记录一下。

ShadowSocks

这个版本的SS已经集成了KcpTun,所以直接装SS即可,没有必要再装KcpTun。简单来说呢KcpTun和TCPSpeed,FinalSpeed,锐速是类似的,都是用来加快网络传输速度的,可以改善差网络条件下的代理速度。服务端可以使用Docker快速搭建。客户端有编译好的二进制文件可以直接使用。由于KcpTun有Go语言版本,效率高,占用内存少,很适合在路由器这种配置不是很强劲的平台上运行。

Chromecast

Chromecast功能的实现就是在路由器的iptables规则列表里面添加一条把目标端口是53的udp请求重定向到路由器的DNS解析代理。对于防止DNS投毒攻击来说是很有效的,但是如果网络条件不稳定,DNS代理请求不能及时返回的话,轻则导致网络访问速度下降,重则导致网络不可用。

路由器的DNS代理方式

我目前采用的方式是pdnsd。由下到上是这样的:

到VPS的连接不稳定,所以需要使用pdnsd来对dns做缓存,否则可能导致上网缓慢。

游戏模式目前我没有需求,没有研究过,应该是对UDP包做了特殊处理吧。

ss-tunnel的作用相当于dns2socks+ss-local吧。

fishjar commented 4 years ago

chromecast的问题有什么好的解决办法吗?

alwaystest commented 4 years ago

chromecast的问题有什么好的解决办法吗?

DNS 解析分流吧。 正常的网站走国内 DNS,被 Ban 的网站走代理 DNS。 如果出国网络质量比较差的话,即使解析了 DNS,后续的访问质量也可能不好。 这样可以避免对国内网站访问的影响。

也可以自建 dnsmasq,增加一层 dns 缓存,可以稍微缓解一点点。不过最终的问题还是出国流量质量不好,解决这个才是解决问题的根本。