无公网IP通过ZeroTier方便实现内网穿透

需求:想要在公司访问家里内网NAS,或是在家里访问公司服务

有固定的公网IP或动态的公网IP:常见的方案动态域名解析做端口转发方式等

无公网IP:常见的实现方案向日葵、teamviewer、ngrok、frp等

有公网地址的情况下,我这里还是推荐端口转发方式,速度最理想!!!另外条件允许还是优先考虑frp做内网穿透,速度根据自己情况可控,最理想的方案!!!

本文主要讲解一个无公网IP的情况,通过ZeroTier实现内网穿透,而且配置起来非常容易

ZeroTier设备支持:

免费用户可以支持100个设备,支持Windows、macOS、Linux、IOS、Android、Synology、QNAP、Western Digital MyCloud NAS等等。

ZeroTier原理:

ZeroTier虚拟了一个网段,网段为192.147.17.0/24,公司和家里分别安装ZeroTier客户端,客户端会虚拟出一个网络并加入192.147.17.0/24这个网段,在家即可访问192.147.17.22地址,反之同理。

ZeroTier部署流程:

1、注册账号并创建一个网段
2、下载客户端并加入这个网段

开始部署:

1、创建账号

https://my.zerotier.com

2、创建网络

进入https://my.zerotier.com/network点击Create创建网络

3、点击进入已创建的网络

此时可以看到Network ID,后续添加设备都会需要这个ID。

我这里说下Access Control,默认是Certificate (Private Network),选择此模式表示每次在添加新的主机时,需要手动勾选是否允许连接,如果选择None (Public Network)模式,表示加入网络后自动分配IP并允许连接,从安全性来说建议使用默认选项Certificate (Private Network),方便性来看None (Public Network)更方便,不用每次加入网络后手动勾选。

另外根据个人情况你也可以自由设置网段,此处不做过多说明

好了,一个中转的ZeroTier就配置完成了,接下来只需要在其他设备安装所对应的客户端,然后加入到这个网络中就可以了。

Windows客户端安装

下载zerotier windos客户端

https://download.zerotier.com/dist/ZeroTier%20One.msi

安装后点击Log In登陆,登陆成功后会看到当前创建的网络,点击Join加入

或者右键点击zerotier图标,点击Join Network加入

然后在https://my.zerotier.com/network页面所创建的网络中刷新即可看到,刚刚加入的主机,如果使用的是Certificate (Private Network)模式,需要在页面中手动勾选一下允许加入网络。

Centos7客户端安装

1、编辑添加yum源
vi /etc/yum.repos.d/zerotier.repo

[zerotier]
name=ZeroTier, Inc. RPM Release Repository
baseurl=http://download.zerotier.com/redhat/el/$releasever
enabled=1
gpgcheck=0

[zerotier]
name=ZeroTier, Inc. RPM Release Repository
baseurl=http://download.zerotier.com/redhat/el/$releasever
enabled=1
gpgcheck=0

2、安装zerotier
yum clean all
yum install zerotier-one

3、启动服务
zerotier-one -d

4、查看服务状态
zerotier-cli status

看到200 info 596811110b 1.2.12 ONLINE表示服务正常

可以使用netstat命令看到所启动的服务端口(这里192.168.1.162是centos本机的IP)

5、加入网络(后面是你自己的ID号)
zerotier-cli join Network ID

加入后会提示200 join OK

进入https://my.zerotier.com/network

刷新几次页面即可看到新加入的主机,然后在前面勾选即可,勾选后Version会变成版本号,并且会分配出一个IP地址

6、主机验证

回到centos7主机上通过ifconfig命令即可看到,此处又多了一个内网IP,此内网IP和zerotier一致,表示配置完成

附:加入、离开、列出网络状态
zerotier-cli join Network ID
zerotier-cli leave Network ID
zerotier-cli listnetworks

你可能感兴趣的:(网络透传)