wangyu- / tinyfecVPN

A VPN Designed for Lossy Links, with Build-in Forward Error Correction(FEC) Support. Improves your Network Quality on a High-latency Lossy Link.
MIT License
2.28k stars 457 forks source link

想专门用一台设备来跑tinyfecVPN+udp2raw加速游戏,路由器/树莓派哪个更好呢? #50

Open 772366 opened 6 years ago

772366 commented 6 years ago

作者您好 我已经成功在VPS+虚拟机上连通了。但是感觉虚拟机还是太麻烦了。 由于我windows上玩游戏,使用cpucores貌似会影响虚拟机性能,虚拟机也可能会拖累游戏性能,所以想专门买台linux设备。 现在有个2个选择,一个是树莓派,一个是买台能刷LEDE的路由器。预算500RMB以内吧。 不知道哪一种选择,更适合加速游戏呢? 谢谢。

wangyu- commented 6 years ago

这个问题其实有点跑题。不过简单给你说下吧。

树莓派CPU好于能同价格买到的路由器。内存容量碾压各种路由器。 树莓派的体积比一般路由器小巧得多。

路由器的网卡普遍好于树莓派。几百元的路由器一般都是1000m有线网卡+ 450m以上的双频无线网卡,这点树莓派是比不了的,树莓派3b是100m有线网卡+75m 2.4ghz单频无线网卡,新出的3b+你可以了解下,提升了一些,但是仍然比不了路由器。

树莓派用起来就像装了Debian的VPS一样;刷LEDE的路由器用起来更像是加强版的路由器,装的是路由器定制的linux发行版。

两种加速游戏都可以,自己决定吧。我自己买的是树莓派3b(当时3b+还没出)。

772366 commented 6 years ago

树莓派3b+到货了,分享下我用来加速游戏的参数吧。 ,在server端运行: ./udp2raw_amd64 -s -l0.0.0.0:9966 -r 127.0.0.1:8855 --raw-mode faketcp -a -k passwd ./tinyvpn_amd64 -s -l0.0.0.0:8855 -f20:20 -k "passwd" --mode 1 --sub-net 10.22.22.0 在client端运行: ./udp2raw_arm -c -r88.88.88.88:9966 -l 127.0.0.1:8855 --raw-mode faketcp -a -k passwd ./tinyvpn_arm -c -r127.0.0.1:8855 -f20:20 -k "passwd" --mode 1 --sub-net 10.22.22.0 ./tinymapper_arm -l0.0.0.0:554 -r10.22.22.1:554 -t -u 然后出现问题了,我使用这个脚本wget https://git.io/vpn -O openvpn-install.sh && bash openvpn-install.sh 一键安装的openvpn,系统是ubuntu18,把openvpn配置文件下载到电脑上,修改配置文件中得ip地址,改成树莓派ip,无法连通,日志显示TLS认证失败。不知道什么原因。所以暂时先用着$$加速游戏。 openvpn客户端配置文件如下:证书信息略过 client dev tun proto udp sndbuf 0 rcvbuf 0 remote 192.168.2.185 554
resolv-retry infinite nobind persist-key persist-tun remote-cert-tls server auth SHA512 cipher AES-256-CBC comp-lzo setenv opt block-outside-dns key-direction 1 verb 3 max-routes 1000 push "route 192.168.0.0 255.255.0.0 net_gateway"

服务器端配置文件如下 port 554 proto udp dev tun sndbuf 0 rcvbuf 0 ca ca.crt cert server.crt key server.key dh dh.pem auth SHA512 tls-auth ta.key 0 topology subnet server 10.8.0.0 255.255.255.0 ifconfig-pool-persist ipp.txt push "redirect-gateway def1 bypass-dhcp" push "dhcp-option DNS 8.8.8.8" push "dhcp-option DNS 8.8.4.4" keepalive 10 120 cipher AES-256-CBC comp-lzo user nobody group nogroup persist-key persist-tun status openvpn-status.log verb 3 crl-verify crl.pem 报错信息: Thu May 31 23:22:27 2018 MANAGEMENT: >STATE:1527780147,WAIT,,,,,, Thu May 31 23:23:27 2018 TLS Error: TLS key negotiation failed to occur within 60 seconds (check your network connectivity) Thu May 31 23:23:27 2018 TLS Error: TLS handshake failed Thu May 31 23:23:27 2018 SIGUSR1[soft,tls-error] received, process restarting Thu May 31 23:23:27 2018 MANAGEMENT: >STATE:1527780207,RECONNECTING,tls-error,,,,, Thu May 31 23:23:27 2018 Restart pause, 5 second(s) Thu May 31 23:23:32 2018 TCP/UDP: Preserving recently used remote address: [AF_INET]192.168.2.185:554 Thu May 31 23:23:32 2018 Socket Buffers: R=[8192->8192] S=[8192->8192] Thu May 31 23:23:32 2018 UDP link local: (not bound) Thu May 31 23:23:32 2018 UDP link remote: [AF_INET]192.168.2.185:554 Thu May 31 23:23:32 2018 MANAGEMENT: >STATE:1527780212,WAIT,,,,,,

772366 commented 6 years ago

在公司摸鱼,在虚拟机中解决了这个问题,树莓派上有待测试。 服务端配置文件 push "redirect-gateway def1 bypass-dhcp"这行注释掉。 然后自己在客户端配置文件中添加route,注意要添加在证书信息前面。添加 route 0.0.0.0 128.0.0.0 route 128.0.0.0 128.0.0.0 route 66.77.88.99 255.255.255.255 net_gateway
route 192.168.0.0 255.255.0.0 net_gateway

66.77.88.99是vps的ip,192.168.0.0 255.255.0.0是为了直连虚拟机。

wangyu- commented 5 years ago

用了树莓派3b一段时间,感觉树莓派的wifi抗干扰能力不好,同样的信道,路由器的WIFI没问题,树莓派的有时就很卡。

我现在用的方案换成了 路由器+树莓派。 路由器是很老的tp wdr4310,wifi还不错,但是CPU很弱(单核580mhz mips)。 路由器和树莓派用网线连起来。wdr4310上面只跑tinyfecvpn(关掉fec当普通vpn用),耗CPU的udp2raw和UDPspeeder跑在树莓派上。上网设备连路由器的wifi热点。 这样配置下来,wifi稳定性跟单独用树莓派比有显著提升,可以跑满20m带宽(路由器的CPU剩余20%左右)。 (tinyfecvpn开启了所有省性能的参数,--disable-obscure --disable-fec --disable-mssfix --disable-checksum)

总共价格300左右(80+220),比高端的arm路由器还是便宜很多的。而且路由器/树莓派以后可以单独升级,不用一次全换。 仅供参考,当然有钱的话,还是直接买高端的路由器更容易些。

ghost commented 5 years ago

正好最近有换路由器的打算,3B+都已经下单了,趁着没发货赶紧退了。

Smallthing commented 5 years ago

4b的无线网卡似乎增强了,不知道加一个外置天线会不会强大很多

orrzz commented 2 years ago

安卓手机可不可以啊