目前遇到两种场景:
逻辑是:
电脑 C (wireguard客户端) ———>服务器 A (wireguard服务端) ———>服务器 B(wireguard linux客户端) ———>校园网内网资源。
电脑 C (wireguard客户端) ———>服务器 A (wireguard服务端) ———>电脑 B(wireguard windows客户端) ———>校园网内网资源。
比如内网网段是 10.0.0.0/8,wireguard网段是10.7.0.0/24
1.安装wireguard
1 | wget -O wireguard.sh https://get.vpnsetup.net/wg |
生成客户端,一个客户端生成一次,拷贝json文件到客户端
参考:
https://github.com/hwdsl2/wireguard-install/blob/master/README-zh.md
2.配置allow-ip
给你的所有客户端里面的allowip改为
1 | AllowedIPs = 10.7.0.0/24, 10.0.0.0/8 |
给把你的跳板客户端的allowip改为
1 | AllowedIPs = 10.7.0.0/24 |
服务端里面,找到你想要作为nat跳板的peer的allowip改为
1 | AllowedIPs = 10.7.0.0/24, 10.0.0.0/8 |
表示10.0.0.0/8使用这个节点
(场景一)设置校园网内Linux Nat
开启内核转发
1 | echo "net.ipv4.ip_forward = 1" | sudo tee -a /etc/sysctl.conf |
将客户端配置文件改成如下格式,其中eth0改为你自己的网口
1 | [Interface] |
之后把文件放到/etc/wireguard/wg0.conf这里
使用命令:
1 | wg-quick up wg0 |
启动该配置文件
(场景二)设置校园网内windows NAT,注意,不是开启路由转发,开启路由转发需要本地路由器支持
1 | # 首先,找到你要设置的网卡的 InterfaceIndex,例如这里是 wg_server |
也可以用这个:https://github.com/micahmo/WgServerforWindows
参考:https://kenvix.com/post/setup-nat-on-windows/
说些什么吧!