fffonion / Xunlei-Fastdick

迅雷快鸟 Xunlei Network Accelerator For Router
https://yooooo.us/2015/xunlei-fastdick-router
819 stars 177 forks source link

双线情况下的支持能力 #151

Closed Sharuru closed 5 years ago

Sharuru commented 5 years ago

你好,我正在群晖的 Docker 环境下运行该脚本进行提速。

在单线环境下时,一切正常。 但是一旦接入了双线环境(线路 1 上行高,线路 2 下行高;而我想让群晖常驻在线路 1 而通过流量转发的方式对线路 2 进行加速),启动时控制台会有以下错误信息: Warning: fastdick can not upgrade, so sad TAT: ip check error:3752215299

相关日志截图如下: image

在群晖接入的路由中,设置了两条规则:

  1. add dst to address list 行为,用来获取访问 TCP 请求中所有xunlei.com的 IP 地址。
  2. prerouting行为,当群晖访问上述行为取得的 IP 地址时,通过mark routing的方式将流量通过线路 2 转发出去。

请问是否有其他地方是我设置有误导致脚本无法加速?谢谢。

Sharuru commented 5 years ago

更新: 在 review 代码以后,我发现加速器的工作原理并不是通过访问 xunlei.com 实现的,而是先访问类似: http://api.portal.swjsq.vip.xunlei.com 这样的地址获得 ISP 提供的接口地址来进行加速的。

https://github.com/fffonion/Xunlei-Fastdick/blob/66f9b90c3e855bd309f7abbf5c20da8472e86531/swjsq.py#L113-L125

在遍历取得 ISP 提供的地址,并设置对应路由后,问题解决。 群晖依然能常驻在线路 1,同时在 Docker 内快鸟发送加速心跳包时,仅对线路 2 起效。

打扰了,:blush: