查看: 3978|回复: 0

[项目] 解毒 | 距离不再成问题?蒲公英VPN组网路由器上手玩

[复制链接]

该用户从未签到

发表于 2017-11-23 09:45:55 | 显示全部楼层 |阅读模式
分享到:
转自极客湾,拿到蒲公英试用的小伙伴们可以参照此文章分享。
期待ing~

Hello大家好,不知道大家还记不记得我们之前给大家科普的“小姐姐的家”——NAS的视频呢?如果大家都看过的话,想必对其中群晖的“QuickConnect”功能有所印象吧~没错,就是那个在任何地方都可以轻松访问到家里NAS的功能。然而,QuickConnect毕竟仅针对群晖自己的NAS,如果我没买NAS,而在家中局域网上有些共享的文件想在外访问;或是公司的网络没有申请公网IP备案,而出差时又有公司内部事务要处理;等等这些情况出现,我们该怎么应对呢?

这时,有些技术基础的小伙伴就会考虑使用DDNS(动态DNS)服务了吧。而谈到国内的DDNS服务提供商,大家可能第一时间想到的就是花生壳(Oray.com)。正巧,今天我们收到的产品,就是来自Oray科技旗下的“蒲公英”路由器。而它的拿手绝活呢,正是带有DDNS性质的VPN异地组网。接下来,就让我们看看它有什么特别之处吧!
640.webp (4).jpg

正如上图所示,蒲公英就是专门针对无公网IP,但又想异地互访的这种需求而推出的一款产品。那么它是用的何种“黑科技”来满足这种需求的呢?对的,就是VPN(Virtual Private Network)。这个名词想必大家都比较熟悉,但是光有VPN还不够,由于没有固定的公网IP,还需要通过UDP打洞来初始化VPN连接。而UDP打洞所需要的服务器呢,就是蒲公英给我们提供的。具体的概念科普,这里就不再给大家细讲了,有兴趣的童鞋可以自行搜索学习。那么接下来,本文将分五部分对蒲公英X5这一款路由器进行简单的测评:

1)蒲公英X5外观
2)单机路由器基本功能
3)异地多机VPN组网(正常模式)
4)异地多机VPN组网(旁路模式)
5)移动客户端VPN组网


- 1 -
蒲公英X5外观

首先,我们看一下X5的基本组成:
640.webp (5).jpg

双天线2x2的设计,方方正正的形象,一贯的符合企业级路由器低调的外观。仅在面板左侧提供了一个指示灯,用多种颜色来标识单机上网、VPN组网中、组网异常等状态,非常的简洁。
640.webp (6).jpg

前面板使用半透明的钢琴烤漆,右侧镭刻了一个X5的标识,表明了这款路由器的型号。整机采用金属材质,虽然没有开散热孔,但是金属材料的使用也对散热起到了不小的帮助。加上原本的发热并不大,正常使用摸起来也就温温的感觉。

640.webp (7).jpg

后面板提供了1个WAN与4个LAN口,都支持千兆传输。除此之外两根天线、电源接口、USB3.0外接设备口以及一个小小的Reset按键,再无其他。
640.webp (8).jpg

近看接口,发现每个接口都配备了RX/TX指示灯,也是这台“准企业”路由器与一般的家用路由器的区别之处。做工方面比较严丝合缝,接口处无松动问题,边缘也没有割手的情况,算是不错的水平了。
640.webp (9).jpg

除去X5外,蒲公英系列的路由器一共四款,X1、X3、X5及X6,从低端便携式wifi到高端10口全千兆路由都有。以上就是它们的全家福啦!(X1太小漏拍了= =||)

- 2 -
单机路由器基本功能

接下来,我们一起来看看X5作为一款基本的千兆AC双频路由器,它的表现如何吧!
640.webp (10).jpg

局域网内千兆有线对拷速度,基本跑满千兆网络,比较不错的表现。
640.webp (11).jpg

局域网内5G无线对拷速度,考虑到无线对拷需要经过内置的CPU进行包处理,再加上信号稳定性、电磁环境干扰等一系列因素,这个成绩还算是OK。
640.webp (12).jpg

在USB3.0模式下传输外挂硬盘中的大文件,使用有线网络可以达到21M/s,速度基本合格。
640.webp (13).jpg

在USB3.0模式下传输外挂硬盘中的大文件,使用2.4G网络时连接尚且稳定,但是速度明显慢于千兆有线连接。并且由于数据量过大,会对附近的2.4GHz无线设备造成一定的干扰,例如无线鼠标会出现明显的卡顿。 640.webp (14).jpg

在USB3.0模式下传输外挂硬盘中的大文件,使用5G网络时效果明显好于2.4G网络,与千兆有线网时的速度相差不大。而且对附近的2.4GHz无线设备基本无干扰,鼠标使用非常流畅。


- 3 -
异地多机VPN组网(正常模式)
前面只是作为一款路由器,最基本的一些功能。而下面呢,就要介绍蒲公英路由器的“杀手锏”了——异地VPN组网。开始之前呢,先来看看我们的网络拓扑环境:
640.webp (15).jpg

为了保证测试传输速度时不受运营商上下行带宽的影响,小天哥将测试网络部署在了某985大学中。园区网络采用SDN结构、千兆光纤互联,完全不会成为测试速度时的瓶颈。

虽然寝室与实验室同属园区内网,但由于双方都使用了路由器,导致寝室中的机器并不能直接ping通实验室内的机器。这里将校园区SDN网络模拟为广域网,而寝室与实验室的蒲公英路由器分别模拟家中和工作单位的路由器。

640.webp (16).jpg

进入蒲公英路由器首页——“智能组网”界面,点击“绑定帐号”,将两台路由器分别都绑定到我们的花生壳账号上。绑定成功后,点击“我要组网”,跳转至蒲公英管理页,点击“立即创建网络”;
640.webp (17).jpg

接下来填入网络名称并选择网络成员(将路由器成员从左边添加至右边框内):
640.webp (18).jpg

注意这里右下角提示(同一网络中路由器地址不能相同),是何意义呢?一般来说,我们的路由器局域网的子网掩码都是24位,如果组VPN的路由器地址都是同一网段(比如10.168.1.X/24),那么将会带来一个问题:如果我是10.168.1.100,我需要ping 10.168.1.101,我是要从当前局域网找呢,还是去组建的VPN的另一头去找呢?这会导致二层转发策略的混乱,因此所有组网的路由器不可以在同一网段。这样当我是10.168.1.100,我去找10.168.2.100时才可以明确去VPN的另一端找,也就不会导致二层转发策略的混乱了。这里我们在另一台路由器里更改一下网段地址为10.168.2.1/24即可:
640.webp (19).jpg


更改好后回到之前的组网页面,选择好网络成员后点击“完成”,组网就成功了!我们作为实验室中的主机10.168.1.110,来ping一下VPN网络的另一端(寝室)的主机10.168.2.234:
640.webp (20).jpg

可以看到在第一个高延迟数据包后接了一个访问超时,这两个包构成了UDP打洞的全过程:第一个包与服务器通信,获知对方的IP地址;第二个包向对方发包,但由于对方没有相应的路由表,会将包丢弃掉,因此表现在结果上是“请求超时”;之后双方都获取到相应的路由表,就可以正常发包通信了。这样,物理上不在同一局域网里的两台机器就建立起了稳定的通信链路,互访就再也不成问题啦!
640.webp (21).jpg

讲到这里,有些小伙伴可能已经想到了更高级的用途:由于逻辑上已经处于同一个局域网,因此有些需要固定IP的应用就可以大展身手了。就拿上次群晖的QuickConnect举个栗子:QuickConnect给你的是一个域名xxx.quickconnect.to,除了使用群晖的专有APP以及直接在浏览器中输入之外,使用的条件比较有限;而蒲公英的VPN组网则直接使用IP访问,访问共享文件夹、映射网络驱动器、使用iSCSI卷等操作就可以不受任何限制了(除了网速)~
640.webp (22).jpg

最后让我们进入蒲公英的“智能组网”管理界面看一下当前路由器的状态:
640.webp (23).jpg

可以看到两个成员都已在组网中,可惜连接类型是“转发”,意味着所有的数据包都要通过蒲公英的服务器,因此上面ping的时延到了50+ms;如果是“点对点”直连的话,延迟仅仅在1-2ms,还是很给力的呦!


- 4 -
异地多机VPN组网(旁路模式)
在实施旁路模式组网前,我们先来讲一下为什么要有这么一个旁路模式:
640.webp (24).jpg

从蒲公英官网给出的这个图中可以看到,组建VPN网络的双方不一定都有条件将蒲公英路由器作为一级路由向下分发,有可能存在当前的网络拓扑已经固定的情况,如果进行更改将耗费较大的人力物力精力。此时异地组网的旁路模式将提供一个可靠的解决方案:只需将蒲公英路由器挂在已有的网络拓扑中,然后将路由器设置为“旁路模式”,即可达到相同的组网效果。那么接下来,还是从本次测试的网络拓扑结构开始,看看旁路模式会带来哪些变化:
640.webp (25).jpg


可以看到,与正常模式不同,我们此次测试没有在蒲公英X5下面挂载任何的设备,仅仅将其连接到了实验室里的另一个路由器上。而实验室路由器承担了整个实验室的网络拓扑,连接到大交换机中。那么此时,两台蒲公英组网后,我们先来看看正常模式:
640.webp (26).jpg

可以看到,作为寝室中的主机10.168.2.234,完全可以ping通实验室中旁路路由的网关10.168.1.1(前两个包依然是UDP打洞过程,前文已经讲过),但是无法ping通旁路路由的WAN口地址(192.168.1.X网段)。
640.webp (27).jpg

原因呢,就是当寝室中的蒲公英X6接收到发往192.168.1.X的数据包后,没有找到相关的路由表,因此直接从WAN口转发出去,而没有增加VPN的包头,也就到不了实验室这边的蒲公英X5。我们的目标呢是要ping通实验室中的其它主机,也就是192.168.1.X网段内的主机。接下来让我们将组网模式更改为“旁路模式”:
640.webp (28).jpg

在已经组好的网络的管理界面中点击“旁路设置”,打开旁路设置界面:
640.webp (29).jpg

点击“添加旁路路由”:
640.webp (30).jpg

设置好旁路路由的上级网段后,点击“保存”,旁路模式就设置完毕啦!我们尝试从寝室中的主机10.168.2.234访问实验室中的其他机器,可以看到与旁路路由在同一级的其他主机都可以访问到,包括旁路路由本身的WAN口地址,同时也能访问到192.168.1.X的网关。如下图所示:
640.webp (31).jpg

究其原理呢,就是设置为旁路模式的路由器向蒲公英的服务器发送了有关上级网络的路由信息,使得组网内的所有其他蒲公英都收到了这条路由表,意味着如果我访问192.168.1.X网段,我就先包上一层VPN包头,发向10.168.1.X这台蒲公英,然后让它去解包后再处理。这样就在不更改实验室原本的网络拓扑结构的情况下,通过设置蒲公英X5的旁路模式实现了异地VPN组网。

- 5 -
移动客户端VPN组网
这一部分呢,我们讲一下由蒲公英开发的,与硬件路由器相配套的软件组网。软件可以独立组网或者搭配硬件组网,目的是适应不同应用场景。我们这里就简单的用手机作为组网中的第三台主机,来测试一下:
640.webp (32).jpg

在小米5上下载蒲公英相应的Android客户端APP后,只需绑定现有的账号,启动后就会自动添加进现有的VPN网络中啦,操作可谓是非常的简单了。接着我们去到蒲公英管理页面查看当前网络成员:

640.webp (33).jpg

可以看到成员中多了一个MI 5手机,属性不同于上面的两个“路由器”,它是一个软件虚拟的“客户端”。得知它的IP地址为172.2.224.233,那我们尝试从电脑端ping一下:
640.webp (34).jpg

可以看到通信完全不成问题,只是由于手机端使用的是4G网络,因此延迟较高。如果开启Android端的SSH服务,甚至可以直接远程到Android的命令行里进行调试呦~


到这里呢,评测就暂告一段落了。我们来简单总结一下蒲公英X5路由器的优缺点——
优点
  • 外观简洁,做工细腻,没有太多花哨的元素;
  • 全金属外壳,散热较好;
  • 异地多机VPN组网功能强大,有效解决无固定公网IP地址的尴尬;即便是处于带宽较低的转发模式,也成功组建了VPN网络,实现了成员之间的互访;
  • 操作简单,方便上手。


缺点
  • 无线2.4G与Intel 7260AC/8260AC的兼容性不佳(5G无问题),虽然Intel网卡确实在路由器兼容性方面存在一定的缺陷;
  • 虽然官方给出的UDP打洞成功率在90%以上,但是在本次测试中结果不是很理想,组网内主机大多时间处于转发模式而非P2P模式。期待官方通过后续的功能性更新提高多种网络条件下的成功率;
  • 组网限制3台路由器/客户端,转发带宽较低,如需更强大的服务则需要单独付费;
  • 固件2.10版本的旁路模式组网存在少许BUG,期待官方在后续固件中解决。


回复

使用道具 举报

您需要登录后才可以回帖 注册/登录

本版积分规则

关闭

站长推荐上一条 /2 下一条



手机版|小黑屋|与非网

GMT+8, 2024-4-27 11:16 , Processed in 0.131233 second(s), 18 queries , MemCache On.

ICP经营许可证 苏B2-20140176  苏ICP备14012660号-2   苏州灵动帧格网络科技有限公司 版权所有.

苏公网安备 32059002001037号

Powered by Discuz! X3.4

Copyright © 2001-2024, Tencent Cloud.