共计 1930 个字符,预计需要花费 5 分钟才能阅读完成。
介绍
- 通过多地运行节点服务,以中继方式实现异地节点网络互通,突破地域限制,提供分支机构、数据中心、云之间全场景互联互通。
- 不需要固定公网 IP,能上网就能组网;支持软件、虚拟机、硬件等方式部署,云端管理方便快捷。
- 可以方便开发者跨地域部署内网服务,节省 IP 及公网宽带费用。
- 底层使用 tls + websocket 安全互联,支持 TCP / UDP / PROXY(socks5 http https) 等跨区域转发。
- WGD 功能实现三层路由,方便运维 / 网管扩展 SD-WAN MPLS VPLS VXLAN GRE IPIP 等应用.
部署
场景
假设有运行两个节点软件 test1 和 test2,登录 nowtunnel 创建节点并在两台设备中运行。
代理转发 :
环境描述 :
# 节点 test1 设备 IP: 192.168.1.5
# 节点 test2 设备网段: 192.168.2.0/24,测试服务器 IP: 192.168.2.5
规则类型 : proxy
# Proxy 类型会自动识别协议 socks5/http/https
监听 IP/ 端口 : 0.0.0.0 8871
# 监听设备任意 IP+ 端口号 8871
中继节点 : test2
# 中继节点选远端 / 对端节点 test2
验证结果 (通过 curl 代理功能验证) :
curl --proxy socks5://192.168.1.5:8871 http://myip.ipip.net
# 可以看到代理流量通过“test2 节点”流出,此时通过 curl 查询到的 IP 归属为“节点 test2”的公网 IP
curl --proxy socks5://192.168.1.1:8871 http://192.168.2.1
# 通过 curl 可以访问 192.168.2.1 的 WEB 界面
TCP 端口转发 :
环境描述 :
# 节点 test1 设备 IP: 192.168.1.5
# 节点 test2 设备网段: 192.168.2.0/24,测试服务器 IP: 192.168.2.5
规则类型 : tcp
# 任意使用 tcp 协议的应用
监听 IP/ 端口 : 192.168.1.5 33981
# 监听设备 IP 192.168.1.5 端口号 33891
中继节点 : test2
# 中继节点选远端 / 对端节点 test2
远程主机 / 端口 : 192.168.2.5 3389
#
验证结果 (通过 windows mstsc 远程桌面) :
# 此时通过远程桌面访问 192.168.1.5:33891,等同于直接访问 192.168.2.5 的远程桌面 3389 端口
UDP 端口转发 :
环境描述 :
# 节点 test1 设备 IP: 192.168.1.5
# 节点 test2 设备网段: 192.168.2.0/24,测试服务器 IP: 192.168.2.5
规则类型 : udp
# 任意使用 udp 协议的应用
监听 IP/ 端口 : 0.0.0.0 9901
# 监听设备任意 IP+ 端口号 UDP 9901
中继节点 : test2
# 中继节点选远端 / 对端节点 test2
验证结果 (通过 nc 工具) :
echo "TEST" | nc -4u 192.168.1.5 9901
# 本例中所有访问 192.168.5.1:9901 的 UDP 流量都会通过“test2 节点”发向 192.168.2.5:9901
路由转发 :
- WGD 隧道路由原理: 底层 nowtunnel 网络 (tcp+ssl) + udp 端口转发 + wireguard/iptables。
- 支持 nat 和 route 方式路由。
- 系统使用 ip rule 绑定 table,不污染本地路由,也可以指定该 table 的静态路由。
- 点击节点 test1 “ 转发规则 ” – “ 新增规则 ”,规则类型选 “wgd”。
环境描述 :
# 节点 test1 设备 ip: 192.168.1.5 , 设备所在网段: 192.168.1.0/24
# 节点 test2 设备 ip: 192.168.2.5 , 设备所在网段: 192.168.2.0/24,192.168.3.0/24
# 打通 192.168.1.0/24,192.168.2.0/24,192.168.3.0/24 网段之间的路由。# 注意: 本例中 wgd 配置可以在 test1 上,也可以在 test2 上,但不能两边都配置.
规则类型 : wgd
# 三层路由转发
中继节点 : test2
# 中继节点选远端 / 对端节点 test2
本地网络 / 对端网络 :
# 配置宣告本地网络和对端网络,多个用逗号隔开。验证结果 (通过 ping 工具) :
# 在 test1 网络中的网关路由器上配置静态路由:route add 192.168.2.0 mask 255.255.255.0 192.168.1.5
route add 192.168.3.0 mask 255.255.255.0 192.168.1.5
# 在 test2 网络中的网关路由器上配置静态路由:route add 192.168.1.0 mask 255.255.255.0 192.168.2.5
# 配置完成后所有网段将互通。
正文完