V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
v2byy
V2EX  ›  程序员

如何将 ss-redir 的流量经过 udpspeeder

  •  
  •   v2byy · 2019-01-20 10:23:13 +08:00 · 4709 次点击
    这是一个创建于 2123 天前的主题,其中的信息可能已经有所发展或是发生改变。

    想使用 udpseeder 来给 PS4 加速。再 github 上找到了 udpspeeder 这个工具。

    目前是想再路由器上允许 udpseeder client 端。参考这个教程:

    Padavan 固件路由器简明教程

    现在的配置是这样的:

    路由器 udpspeeder 监听 1092 端口,将路由器 ss-redir 的 server 地址改为 127.0.0.1,然后端口改为 udpseeder 的端口 1092

    貌似不行,请问下大家如何搞?

    第 1 条附言  ·  2019-01-20 11:39:20 +08:00

    详细说以下配置吧。 vps 开启udpspeederv2, 显示已经再监听28900端口,20010端口为ss 监听的端口

    ./speederv2_amd64 -s -l 0.0.0.0:28900 -r 127.0.0.0:20010 -f 2:4 -k "mima" --timeout 1 --report 10
    
    [2019-01-20 02:46:53][INFO]fec_str=2:4
    [2019-01-20 02:46:53][INFO]fec_inner_parameter=1:4,2:4
    [2019-01-20 02:46:53][INFO]now listening at 0.0.0.0:28900
    

    路由器端 允许udpspeeder, 监听1092端口, 将1092端口的数据发送到ss_ip:28900端口

    /opt/bin/speederv2 -c -l 0.0.0.0:1092 -r my_ss_ip:28900 -f 2:4 -k "mima" --mode 0  --report 10
    
    [2019-01-19 13:21:39][INFO]now listening at 0.0.0.0:1092
    [2019-01-19 13:21:39][INFO][report]client-->server:(original:0 pkt;0 byte) (fec:0 pkt,0 byte)  server-->client:(original:0 pkt;0 byte) (fec:0 pkt;0 byte)
    

    路由器将流量发给udpspeeder, 使用ss-redir

    killall ss-redir
    ss-redir -c /tmp/ss-redir_1.json  -u
    

    其中ss-redir_1.config文件如下:

    {
    "server": "127.0.0.1",
    "server_port": "1092",
    "local_address": "0.0.0.0",
    "local_port": "1090",
    "password": "mima",
    "timeout": "180",
    "method": "aes-256-cfb",
    "protocol": "",
    "protocol_param": "",
    "obfs": "",
    "obfs_param": "",
    "plugin": "",
    "plugin_opts": ""
    }
    

    运行之后有错误提示:

     2019-01-19 13:46:44 INFO: listening at 0.0.0.0:1090
     2019-01-19 13:46:44 INFO: UDP relay enabled
     2019-01-19 13:46:44 INFO: running from root user
     2019-01-19 13:46:47 ERROR: getpeername: Transport endpoint is not connected
    
    第 2 条附言  ·  2019-01-20 11:41:13 +08:00
    这时候使用电脑连接上路由器 wifi,已经打不开网页了。
    vps 的 udpspeeder 没有其他的 log 输出,是不是还没有跟路由器的 udpspeeder client 连接上啊?
    18 条回复    2019-01-20 16:18:42 +08:00
    v2byy
        1
    v2byy  
    OP
       2019-01-20 12:31:30 +08:00 via iPhone
    谁帮忙 at 下开发 udpspeeder 的大佬啊
    azh7138m
        2
    azh7138m  
       2019-01-20 13:09:59 +08:00 via Android
    路由器将流量发给 udpspeeder, 使用 ss-redir

    这个是怎么做的,你的 iptables 规则怎么写的?
    yaoliyc
        3
    yaoliyc  
       2019-01-20 13:11:03 +08:00 via iPhone
    直接到 github 上找作者,有空或许会回你。
    anyele
        4
    anyele  
       2019-01-20 13:16:46 +08:00 via Android
    好像只是加了个人为限制,作者说自己改一下就行了
    yy1984
        5
    yy1984  
       2019-01-20 13:40:10 +08:00 via Android
    udpspeeder 是用来加速 udp 的吧? ss 是 TCP 的,加速不了。
    或者用 KCP 加速 UDP
    yy1984
        6
    yy1984  
       2019-01-20 13:40:38 +08:00 via Android
    上面打错了,是 KCPTUN 加速 TCP
    v2byy
        7
    v2byy  
    OP
       2019-01-20 14:02:11 +08:00
    @azh7138m 我以为直接将 ss-redir 的 server 端口和 ip 改一下就行了,需要设置 iptable 吗?

    现在我是直接将 ss-redir 的配置文件改成这样:

    ```
    {
    "server": "127.0.0.1",
    "server_port": "1092",
    "local_address": "0.0.0.0",
    "local_port": "1090",
    "password": "mima",
    "timeout": "180",
    "method": "aes-256-cfb",
    "protocol": "",
    "protocol_param": "",
    "obfs": "",
    "obfs_param": "",
    "plugin": "",
    "plugin_opts": ""
    }
    ```
    v2byy
        8
    v2byy  
    OP
       2019-01-20 14:02:42 +08:00
    @yaoliyc 给作者发邮件了
    v2byy
        9
    v2byy  
    OP
       2019-01-20 14:03:04 +08:00
    @anyele 具体怎么说?
    v2byy
        10
    v2byy  
    OP
       2019-01-20 14:04:30 +08:00
    @yy1984 嗯?好像 ss 可以开启 udp 加速吧?直接再 ss server 配置开启就行了?
    我再 vps 上也监听这 udp 协议的端口啊?

    KCP 是加速 tcp 这个我倒是试过,可以。
    azh7138m
        11
    azh7138m  
       2019-01-20 14:13:54 +08:00 via Android
    @v2byy 那你给 ps4 加速怎么实现的。。。
    v2byy
        12
    v2byy  
    OP
       2019-01-20 14:21:46 +08:00 via iPhone
    ps4 连接到路由器啊,路由器的流量通过 ssredir 转发到 udpspeeder,再到 vos 上的 udpspeeder 的 server 端
    azh7138m
        13
    azh7138m  
       2019-01-20 14:23:24 +08:00 via Android
    @v2byy 路由器的流量通过 ssredir 转发到 udpspeeder

    怎么实现的?你用的 gui 吗?勾选了透明代理?
    v2byy
        14
    v2byy  
    OP
       2019-01-20 14:24:49 +08:00 via iPhone
    @azh7138m #11 具体 ss redir 是如何实现透明代理的我不太清楚,但是我猜是 iptable 吧,因为在路由器上 ss redir 监听 1090 端口,可以通过 gfw 分流
    v2byy
        15
    v2byy  
    OP
       2019-01-20 14:28:51 +08:00
    @azh7138m 我 ssh 到路由器,查看了 iptable

    ```
    iptables-save | grep 1090

    -A SS_SPEC_WAN_FW -p udp -j TPROXY --on-port 1090 --on-ip 0.0.0.0 --tproxy-mark 0x1/0x1
    -A OUTPUT -d 208.67.220.220/32 -p tcp -m tcp --dport 443 -j REDIRECT --to-ports 1090
    -A OUTPUT -d 208.67.222.222/32 -p tcp -m tcp --dport 443 -j REDIRECT --to-ports 1090
    -A OUTPUT -d 8.8.4.4/32 -p tcp -m tcp --dport 53 -j REDIRECT --to-ports 1090
    -A OUTPUT -d 8.8.8.8/32 -p tcp -m tcp --dport 53 -j REDIRECT --to-ports 1090
    -A SS_SPEC_WAN_FW -p tcp -j REDIRECT --to-ports 1090

    ```

    ss-redir 就是监听再 1090 端口,这个是不是说明已经将流量到 forward 到 ss-redir 了?
    azh7138m
        16
    azh7138m  
       2019-01-20 14:40:51 +08:00 via Android
    @v2byy 不知道你怎么实现流量转发的,我猜是有一个 gui 界面(在路由管理上面的)上面有个透明代理的选项。

    到你 vps 的流量是不需要转发的。
    这第一条规则我看不懂,和我平时写的不一样,一般是要把自己 vps 地址单独写一条规则 mark 一下,后面不转发,这样子。
    azh7138m
        17
    azh7138m  
       2019-01-20 14:43:45 +08:00 via Android
    @v2byy
    大概类似这种
    iptables -t nat -A SHADOWSOCKS -d ip 地址 -j RETURN
    v2byy
        18
    v2byy  
    OP
       2019-01-20 16:18:42 +08:00
    @azh7138m 这个应该是正常的,否则我使用路由器来实现透明代理就不会成功了。

    现在我不明白的是,ss-redir 的配置文件 server 地址和 server_port 填写 udpspeeder 的是不是这样设置
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1060 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 21ms · UTC 20:03 · PVG 04:03 · LAX 12:03 · JFK 15:03
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.