-
Notifications
You must be signed in to change notification settings - Fork 464
tinyfecVPN运行在虚拟机中,加速windows和局域网内其他主机的网络
wangyu- edited this page Feb 27, 2018
·
9 revisions
下载这个LEDE镜像,用virtualBox载入:
确保虚拟机的网络工作在桥接模式。
按照这个方法清空虚拟机中的iptables规则:
https://github.com/wangyu-/tinyfecVPN/wiki/清空iptables的方法
(最新版本的虚拟机可以不清空,因为我已经清空过了;如果你用的是旧的虚拟机镜像,必须清空。)
在虚拟机中安装好tinyfecVPN。(tinyfecVPN可以换成UDPspeeder+OpenVPN)
在虚拟机中安装好udp2raw。(可选,鉴于运营商封udp这个问题比较普遍,建议配合udp2raw使用)
#开启ip forward:
echo 1 >/proc/sys/net/ipv4/ip_forward
#配置SNAT:
iptables -t nat -A POSTROUTING -s 10.222.0.0/16 ! -d 10.222.0.0/16 -j MASQUERADE
#启动udp2raw服务
./udp2raw_amd64 -s -l0.0.0.0:9966 -r 127.0.0.1:8855 --raw-mode faketcp -a -k passwd
#启动tinyFecVPN服务
./tinyvpn_amd64 -s -l 127.0.0.1:8855 --sub-net 10.222.2.0 --tun-dev tun100 --report 10 -k 1234
#运行udp2raw client
./udp2raw_x86 -c -r45.76.100.53:9966 -l 127.0.0.1:8855 --raw-mode faketcp -a -k passwd
#运行tinyFecVPN client
./tinyvpn_x86 -c -r 127.0.0.1:8855 --sub-net 10.222.2.0 --tun-dev tun100 --keep-reconnect --report 10 -k 1234
#开启ip forward:
echo 1 >/proc/sys/net/ipv4/ip_forward
#配置SNAT:
iptables -t nat -A POSTROUTING -s 192.168.99.0/24 -o tun100 -j MASQUERADE #192.168.99.0/24 改成你自己的局域网网段
#配置路由
ip route add 44.55.66.77/32 via 192.168.99.1 #44.55.66.77改成你的VPS ip; 192.168.99.1改成你的网关(一般是路由器的ip)
ip route add 0.0.0.0/1 via 10.222.2.1 dev tun100 #(如果把tinyfecVPN换成OpenVPN+UDPspeeder,可能需要修改)
ip route add 128.0.0.0/1 via 10.222.2.1 dev tun100
推荐用如下命令把tun100创建成持久型的tun设备。否则你重启tinyfecVPN后,tun100相关的路由规则会失效,需要重新添加。
#在运行tinyFecVPN前执行如下命令。只需执行一次,只要不重启就一直有效。
ip tuntap add tun100 mode tun
ifconfig tun100 up
(需要你检查自己的ip命令是否支持tuntap,如果不支持,需要安装完整版ip命令)
你只要在windows上把网关改成虚拟机的ip,dns改成8.8.8.8,就可以通过tinyfecVPN加速你的网络了,所有流量都会被重定向。
对于同一局域网中的游戏主机、android、ios设备也一样。网关改成虚拟机的ip,dns改成8.8.8.8,就可以被tinyfecVPN加速。
需要自己编译无限制的tinyfecVPN server端。
以上方法用win10+virtualbox测试通过,很稳定。
用win10+vmware测试遇到了问题,现象是,局域网中的其他虚拟机可以被tinyfecVPN加速,而真机统统不行。也许是我的vmware版本的桥接有bug,我看到网上别人的vmware用类似的方法是可以的,你可以自己尝试下。