VPS虚拟机如何自建“IPLC”

作者: 科学上网家 分类: 资源 发布时间: 2024-08-15 20:56

如果你只有VPS,无法创建虚拟机出来,还有没有办法使用隧道落地的方式自建伪“iplc”呢?

有的。用docker就好,没必要开小鸡了

你要做的是:

1. 找个国内网络还不错的vps,比如你就任性开个ecs按流量计费,把口子拉满,这个跑docker
2. 国外落地用的服务器或vps,不用跑docker
3. 给两边建立wireguard隧道,你用其他隧道也行,你能打通就好
4. 国内vps安装docker,并新建一个network单独给容器用,不用默认的docker0的侨接网络
5. 策略路由到你刚刚新建的docker network

前面3个步骤不用说了。那docker怎么玩?我这里就直接用命令行,没安装面板了。

1. 安装docker,用一键方式最靠谱,国内建议用阿里云的mirrors

curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun

2. 创建docker网络

docker network create nat

创建完注意看一下这个网络的ip段

docker network inspect nat

我的例子中是172.19.0.0/16

3.创建一个容器吧,或者你可以找一个s5的镜像,直接跑在nat的网络下,记得开个端口出来哈

docker run --net=nat -itd --name=container ubuntu

4.最后把策略路由改一下到docker新建的network就好了。

标记你刚刚创建的docker网络的地址,设置默认路由,这里是172.19.0.0/16

ip rule add from 172.19.0.0/16 lookup 10
ip route add default via 172.19.0.1 table 10

然后做一个转发,把这个子网的流量都从你的wireguard接口出去

iptables -t nat -A POSTROUTING -s 172.19.0.0/16 ! -d 172.19.0.0/16 -o wg0 -j MASQUERADE

--------------------------- 分割线 ---------------------------

测试数据

国内是阿里云ecs 深圳机房,按流量计费的 100M端口速度
落地是澳门CTM,没有CN2加成

比较郁闷的是,国内的机房同样是深圳,怎么阿里云过去就要40ms了。

首先是没开策略路由的情况下的mtr 8.8.8.8

开了策略路由

speedtest测试结果还是在25Mbps左右的下行

--------------------------- 分割线 ---------------------------

速度上不去的原因有可能是udp的qos导致的,也可能是加密算法的原因,也有可能是我设置的mtu太高。总之回头换其他方式的隧道再试试了。

发表回复