ZeroTier 组网小记 – 路由器 NAT 配置

背景

校园最近在改造网络,本来应该是好作业,可是最近发现校园网没办法连回睡房了,不晓得搞的什么名堂,分明睡房宽带有公网 IP 可是在校园网便是连不上网段区分,横竖给快把我搞自闭了。
为何浏览器怎样翻开网站这样说呢?由于我这边开发根本上都是 Remote Develop,需求长途连回睡房才华开发的,这样的好处便是清楚明了,根本上不必担忧笔记本用电和环境问题。
可是校园这波shell脚本入门操作直接把我打回原形,让我深化认清实际,不由赞赏感慨万千。虽然有 frps 的备用计划,可是这个计划根柢不是用来开发的,仅仅用来应应急而已。要想安稳运用,翻来翻去仍是 ZeroTier 最适合不过了。

查验过的方软件商铺

为了说清楚我为啥终究选了 ZeroTier,我得说一说我了解的其它计划。对了,我挑选的时分不知不觉有一个准则:**付费订阅计划 — 直接丢掉。**没办法我仅仅一个贫穷可怜的学生,没办法 afford 这些企业级的服务,终究钱到位了,还要考虑这些乱七八糟的作业嘛?直接整套私家保管的服务器不香嘛?

  • NGROK

记住其时 v1 版别仍是开源的呢!后边搞起商业化了。由于是服务端装备,比较便利搞 Web 办理后台,天然是适合为收取订网段区分和ip地址规模阅费用。其时比较无知,花了 10 元用了一个月,后边再也没有用过了。

  • DDNSTO

最早是在梅林的软件中心里遇见的,宝哥开发(十分凶狠)。作为一个路由器插件真shell脚本根本指令的是十分简略易用,几乎便是小白的福音。缺陷也很明显,需软件商铺求微信认证之软件库蓝奏云后才华翻开自己创立的服务,并且被约束在浏览器里边,浏览器哪个好要知道浏览器做的再好也shelley英文名怎样读比不过用了多浏览器年的 xshell 舒畅,也因而不支撑 vgithub中文社区scode remote de浏览器怎样翻开网站velop。最近领会了一下就丢掉了,由于需求付费订阅才华运用了

  • FRP

从开始的 1.x 版别就初步运用了,其时网段和网关的差异 frp 好像还不太行,没有许多路由器的插件支撑啊。现在就不相网段与lan口ip地址抵触同了,插件都很完善了,并且 Github 的小星星都来抵达 47k 了,可见其软件库盛行程度。这也是我从一初步就用到现在的计划,并且有许多的特效,比如说支撑点对点通道的建立(NAT 穿透),支撑各种协议等。你只需求一台具有公网 IP 的服务器即可。不过受限于 1M 的宽带,对我仅仅作为应急备用办法。

  • SSH

SSH 有一个署网段区分和ip地址规模理的功用,也能够完毕穿透的作用,并且传输进程中自带加密,不过一般状况都是暂时运用吧。

  • ZeroTier

感觉 ZeroTier 才代shelly表了未来的方向,IPv6 传闻能够做到万物互联,横竖我现在根软件snapchat柢没有智能设备也领会不到。那就先让我 IPv4 互联吧,ZeroTier 组成的浏览器历史上的痕迹在哪里虚拟内网才是真的有用,其它计划根本上都是对我供应一个端口算了,其主打对我。而 ZeroTier 主打对内,所谓的软件“对外”假定只要你一个人在用其本质仍是“对内”。已然这样,不如给笔记本装一个 ZeroTier 服务,这样无论走到哪都能够随时连github官网回来。

  • 公网 I浏览器怎样翻开链接P

上面的计划都不行shell脚本防止的需求公网 IP 的参加,假定你直接拨号后便是公网 IP,这不便是对上面浏览器怎样翻开网站计划的降维冲击嘛?需求内网的服务?没问题,分分钟在路由器上创立一条端口转shell编程发规则即可,真的做到了走到哪连到哪的作用了。唯一的缺陷恐怕便是改动的 IP 和不对称的上传速度了吧?

方针

假定仅仅简略的将两台装有 ZeroTier 的电脑打通,明显用不到这篇文章。由于我之前便是这样做的呢!可是问题多多,根本上没办法运用,为此github敞开私库折腾了一天的时间才折腾了一篇文浏览器历史记录为何不能删章出来。

遇到的问题

  • 两台电脑的 ZeroTier 网络非github下载常不抱负,通过 iperf 查验速度只能抵达 1M 左右,并且经常性断线,联接进程十分折磨人,虽github永久回家地址然装备了个人 moon 服务器。
  • 经常丢包,丢包重传会导致 S软件商铺SH 领会软件特别差劲。
  • 断线一次不知github打不开道什么时分能再次建立联接。

说了这么多,其根柢原因便是校园的了色校园网络,呸。

处理办法

由于那两台电脑都没有公网 IP,因而 ZeroTier 的表现十分的差劲。通过查验,具有公网 IP 的路由器上 ZeroTier 的表现十分好,网络质量十分安稳。因而处理办法是通过路由器的转发来完毕两台机器软件技术的互连。

详细需求

  • 路由器下面的设备不需求设备 ZeroTier 也能拜github打不开访 ZeroTier 网络,并且需求分配一个GitHub IP 地址,能被 ZeroTier 网络浏览器哪个好网段怎样设置任何节点拜访到。

呃说了半天其实需求只要后边一半,由于前一半的需求现已在上一篇文章中完毕了 。
运用 Google 找了一圈,只找到两篇相关文章。

  • 参阅文章:Openwrt路由通过Zerotier组网完毕异地内网互访

其中心是:装备 Ze网段怎样设置roTier 的路由,让某一网段通过 ZeroTier 网络中的一个节点转发。

  • 这个“github是干什么的网段”必定不能和 ZeroTier 装备的网络堆叠,否则会转发失利。
  • 这个“网段”不能是常见的“192.168.x.x”私软件工程有网段,否则和本地 192.168 网段重合会导致本地局域网网段区分和ip地址规模不能互通。

上面两点需求特别注意,由于我没系统学习过网络相关的知识,这也是我踩了许多坑才得出的定论。

现在问题来了:一初步装备路由器的时分根柢想不到“192.168.x.x”会遇到今天这样网段是什么意思的问题。假定批改路由器的地址,其下面的一切设备都需求跟着做出相应的批改shell脚本。这是一件吃力不讨好的作shell是什么意思业,由于许多设备的地址都是静态的,并且批改起来十分的费事。总不行能为了这点破作业大动干戈吧。
Shell

后边我想,**为何不通一个网卡绑定多个 IP 地址呢?这样我只需求额外绑定另一个网段的 IP 地址就能够抵达分shell脚本根本指令配私有 IP 的意图shellfish了啊。**我现在初步悔恨为何欠好好看看鸟哥的书,由于路由相关的知识真的不太懂。尤其是 iptables 这块内容。哎,书到用时方恨少,到月底不够花。软件工程专业

debian 装备第二 IP 地址

  • 暂时装备
ifconfig ens192:0 172.20.0.8 netmask 255.255.网段和子网的差异0.0 up
# ens192:0 后边的 0 能够是其它数字,阐明能够装备许多 IP 地址哦

这儿有个困惑,为网段与lan口ip地址抵触是什么意思何第二GitHub个 IP 地址不能装备第二个 gateway?
ZeroTier 组网小记 - 路由器 NAT 装备

  • 永久装备
# /etc/network/interfshell是什么意思aces
auto ens192
iface ens192 inet static
address 192.168.1浏览器约束拜访网站.8
gateway 192.168.1.2
netmask 255.255.255.0
auto ens192:0
iface ens192:0 inet statishell脚本根本指令c
address 172.20.0.8
n浏览器翻开网页显现不了图片etmask 255.255.255.0

这样装备完毕后,重启后第二 IP 也不会丢掉了。

检查一下路由表,发现根柢没有改动
ZeroTier 组网小记 - 路由器 NAT 装备

Windows 装备第二 I浏览器历史上的痕迹在哪里P 地址

为了随时随地运用长途桌面,给 Windows 也装备好。
ZeroTier 组网小记 - 路由器 NAT 装备
不得不说,Windows 真的是一图胜千言啊,果然是图形操作系统的老大哥。

检查互通

装备好 172.20.0.0/24 网段后,需求检查查验一下。

# 172.20.0.8 虚拟机下面
# ~ ping 172.20.0.11
PING 172.20.0.11 (172.20.0.11) 56(84) bytes of data.
64 bytes from 172.20.0.11: icmp_seq=1 ttl=128 time=0.259 ms
64 bytes from 172.20.0.11: icmp_seq=2 ttl=128 time=0.25软件工程专业4 ms
^C
--- 172.20.0.11 ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 4ms
rtt min/avg/ma网段与lan口ip地址抵触是什么意思x/mdev =shellfish 0.254/0.256/0.259/0.016 ms

看起来 L软件工程专业inux 和 Windows 现已互通了github官网,可是去路由器里边查验一下。

root@OpenWrt:~# ping 172.20.0.8
PING 172.20.0.8 (17浏览器约束拜访网站2.20.0.8): 56 data bytes
^C
--- 172.20.0.8 ping statistics ---
7 packets transmitted, 0 packets received, 100% pshellfishacket loss

看起来状况不妙,路由器好像不认识它们。

roo网段和网关的差异t@OpenWrt:~# ping 172.20.0.8 -I br-lan
PING 172.20.0.8 (172.20.0.8): 56 data bytes
64 bytes from 172.20.0.8: seq=0 ttl=64 time=0.311 ms
64 bytes from 17github官网2.20.0.8:网段与lan口ip地址抵触 se网段和网关的差异q=1 ttl=64 timegithub中文官网网页=0.276 ms
64 bytes from 172.20.0.8: seq=浏览器哪个好2 ttlshelley英文名怎样读=64 time=0.237 ms
64 bytes from 172.20.0.8: seq=3 ttl=64 time=0.258 ms
^C
--- 172.20.0.8 ping statistics ---
4 packets transmitted, 4 packets received, 0% packet losshell怎样读s
round-trip min/avg/max =github官网 0.237/0.270/0.311软件库 ms

这次咱们指定 ping 运用接口 br-lan 后成功了,看来路由器需求手动装备 172.20.0.0/24 网段的路由才行。

route add -ne软件商铺t 172.29.0.0/24 dev br-lan

检查装备后的github怎样下载文件路由表

root@github是干什么的OpenWrt:~# route -en
Kernel IP routgithub直播渠道永久回家ing table软件工程专业
Destination     Gateway         Genmask         Flags   MSS Window  irtt Ifac软件e
172.20.0.0      0.0.浏览器哪个好0.0         255.255.255.0   U         0 0          0 br-lan

再次查验

root@Ope软件工程专业nWrt:~# ping 172.20.0.8shell编程
PING 172.20.0.8 (172.20.0.8)浏览器翻开网页显现不了图片: 56 data bytes
64shell是什么意思 bytes from 172.20.0.8: seq=0 t软件工程tl=64 time=0.288 ms
64 bytes from 172.20.软件商铺0.8: seq=1 ttl=64 time=0.444 ms
^C
--- 172.20.0.8 ping statistics ---
2 pa网段区分和ip地址规模ckets transmitted, 2 packets received, 0% packet loss
round-trip min/avg/max = 0.288/0.366/0.444 ms

自此 172.软件技术20.0.0/24 私有网段装备完毕,接下来需求装备 ZeroTier 的路由。

装备 ZeroTier 路由表

ZeroTier 组网小记 - 路由器 NAT 装备
这儿 via 指定由哪一个节点进行转发,天然要填入路由器分配到的地址了。

稍安勿躁,看查验结果

ZeroTier 组网小记 - 路由器 NAT 装备
shell脚本编程100例了这儿根本上完毕后需求的后半部分:路由器下的设备分配独立的 IP 地址,且能被 ZeroTier 其它节点拜访。

终究一步

添加静态路由表
ZeroTier 组网小记 - 路由器 NAT 装备
之后路由器重启后也能够康复之前的装备。

可选 – 为 ZeroTier 创立接口和防火墙

这一步其实可有可无,不过创立完毕接口后就能够在“接口”里边看到“ZeroTier”流量运用状况了。

  • 创立接口

ZeroTier 组网小记 - 路由器 NAT 装备

  • 创立防火墙区域

ZeroTier 组网小记 - 路由器 NAT 装备
软件开“zerotier”的转发后,理论上不需求手动添加 iptabl软件库es 表了,可是我浏览器查验的时分没有成功,因而仍旧保存 iptables 的添加。

总结

总算是处理了网络问github中文官网网页题,应该能够安心写代码了。

发表回复

提供最优质的资源集合

立即查看 了解详情