但是用Turenas或者Freenas用户应该会有这样的烦恼,版本11.2-RELEASE之后,Zerotier在系统自带命令行、Jail环境下都部署失败,或者出现难以解决的BUG。
翻阅大量资料都没有Truenas或Freenas系统成功解决问题的方案。机缘巧合下看到司波图的视频。尝试通过Truenas安装docker环境,然后docker部署Zerotier实现内网穿透,自建虚拟局域网。
最后发现该方案实现难度低、系统运行稳定。通过Zerotier,将虚拟局域网内24H运行的机器作为网关,顺利使用(手机电脑平板)外网连接家里局域网上任意主机(路由器、NAS、PC)。
这里引用知乎 Lulus 的教程
https://zhuanlan.zhihu.com/p/83849371
https://my.zerotier.com/
(1)Advanced中添加局域网网段。待Turenas或其它主机安装完Zerotier客户端后,添加对应Zeroyier分配的具体的主机ip(本地局域网网段 via Zerotier分配主机ip)
(2)Zerotier分配主机ip需要打开Allow Ethernet Bridging
Truenas里面安装CentOS 7 docker环境。
这里引用B站司波图的教程。一步步安装完CentOS 7及Portainer
https://www.bilibili.com/video/BV1JN411R7Gs
通过FinalShell,登录到CentOS7。安装zerotier-one-docker dockers应用
这里用Github里 henrist / zerotier-one-docker 提供的命令行
https://github.com/henrist/zerotier-one-docker
docker run \ -d \ --restart unless-stopped \ --name zerotier-one \ --device /dev/net/tun \ --net host \ --cap-add NET_ADMIN \ --cap-add SYS_ADMIN \ -v /var/lib/zerotier-one:/var/lib/zerotier-one \ henrist/zerotier-one
docker exec zerotier-one zerotier-cli status
docker exec zerotier-one zerotier-cli join NETWORK-ID
docker exec zerotier-one zerotier-cli listnetworks
写入内核
vi /etc/sysctl.conf
添加 net.ipv4.ip_forward = 1
sysctl -p
CentOS 7防火墙放通转发
iptables -I FORWARD -i 网卡名 -j ACCEPT
iptables -I FORWARD -o 网卡名 -j ACCEPT
iptables -t nat -I POSTROUTING -o 网卡名 -j MASQUERADE
#网卡名可以在CentOS7中用 docker exec zerotier-one zerotier-cli listnetworks 或者 ifconfig 查询zt开头的网卡名
iptables -I FORWARD -j ACCEPT
iptables -A FORWARD -d 本地局域网网段 -j ACCEPT
iptables -t nat -A POSTROUTING -s 本地局域网网段 -j MASQUERADE
iptables -t nat -A POSTROUTING -d 本地局域网网段 -j MASQUERADE
#添加本地局域网网段(192.168.1.0/24)
iptables -A FORWARD -d ZeroTier分配网段 -j ACCEPT
#添加 ZeroTier分配网段到iptables(10.147.17.0/24)
iptables-save
#保存iptables配置到文件,否则重启规则会丢失
待续
参考链接:
https://zhuanlan.zhihu.com/p/83849371
https://www.bilibili.com/video/BV1JN411R7Gs
https://github.com/henrist/zerotier-one-docker
一、思路和环境:
1、Redmi路由器AC2100作为主路由,路由系统为Padavan,主要负责拨号、DHCP、WIFI等功能,网络地址为192.168.11.1。
2、群晖虚拟机vmm安装koolshare的Openwrt,单臂软路由作为旁路由,以实现zerotier等插件功能,网络地址为192.168.11.11。
3、将旁路由的网关指向主路由网络地址192.168.11.1,关闭DHCP和桥接;同时,将主路由的网关指向旁路由的网络地址192.168.11.11。通过主路由和旁路由互指网关实现。
二、旁路由设置
1、删除wan等接口,只保留lan接口。我这里保留了zerotier接口。
2、设置旁路由网关为主路由地址:192.168.11.1。
3、取消勾选lan接口的桥接接口。
4、禁用旁路由DHCP。
5、打开防火墙进行设置
6、防火墙添加自定义规则:iptables -t nat -I POSTROUTING -o eth0 -j MASQUERADE。至此,旁路由设置完毕。
三、主路由设置
1、路由器拨号并打开DHCP服务,网关设置为旁路由地址:192.168.11.11,设置DNS。
2、测试内网访问外网,同时测试外网访问内网以及openwrt插件。
四、收工。
我这里主要是使用了旁路由的zerotier插件功能,目前使用一直没问题,很稳定,内网无线有线连接也正常。在设置旁路由过程中走了很多弯路,如果你仍未跳坑,以上思路可借鉴给你,最后祝你成功!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)