千兆-Unifi-NAS-QVR 组网简述

家庭组网的碎碎念

过年前得益于电信的活动馈赠,几乎免费将宽带提升到千兆(因为要预存所以不算免费,但每月返还,因此说是几乎免费吧),就将家里的内外网包括监控都优化了一下,今天大年初四没什么事做就简单记录一下。

说起来已经缺了两篇东西本来年前就要发的,写了个草稿就丢在那里又写不下去鸽了好就,但是今天就先写这篇有思路的吧。

前期架构

受益于家里去年装修了一次,将室内网线和监控网线布好,后续的所有操作都有了很大的操作空间,虽然现在还是后悔书房应该布多两个网口,但影响不大就算了。

这里真心建议新装修的都布一下室内线,最好每个房间都有一个网口。

增加一个组网AP,比任何单个旗舰路由器都要强。

无线网部分

设备:

  • 路由器:Ubnt ER-X
  • 交换机:水星5口千兆交换机(带PoE供电)
  • AP:Unifi UAP-AC-LR *2 、Unifi UAP-AC-LITE
  • UPS:山克 84AH

首先要明确一点,现在市面上卖的大部分家用“路由器”,其实不只是路由器,而是结合了路由、交换、AP三者合一,而我选择这些设备是秉承“各司其职”的原则:

  • ER-X作为性能较好的路由器处理内外网数据包的转发
  • 交换机主要是内网的数据交换(当然带PoE是为了给后面三个AP供电)
  • AP进行无线信号辐射和数据传输。

有线接入段

首先电信皮纤进来后,光猫用的是桥接模式,接ER-X路由器由路由器进行拨号。

这里重点讲一下为什么光猫要用桥接模式,因为如果光猫用路由模式(即由光猫进行拨号),实际上光猫除了进行光电转换之外还有一个“路由器”的职责,网关是设置在光猫上,那么最终所有的内外网数据转发都要在光猫上进行。

虽说现在电信的新光猫性能已经比以前有很大的提升,但是如果要兼顾光电转换和路由功能的话,我认为还是 各司其职” 比较好。毕竟处理数据还是要耗费CPU、内存等资源的,现在家里的联网设备越来越多,手机、电脑、电视、HomePod等各种智能家居,再加上视频流、直播、电影下载等,如果设备接入数和数据吞吐量一上来,光猫的性能或者散热支撑不住的话可能会速率下降甚至当机重启。

然后路由模式下,所谓的“旗舰性能”的路由器其实只能充当个二级路由的作用,可以说是浪费了它的路由性能,最终网关上所有数据转发出口都还是要由光猫承担。

因此我选择了光猫使用桥接模式,只负责光电转换的功能,由ER-X进行拨号,选择ER-X是因为他作为入门级的企业级路由器用作家用是绰绰有余的(当然选择它也因为在我的预算范围内)。

ER-X管理界面

唯一的缺点是,界面没做得像国内品牌一样那么傻瓜式,而且是全英界面,不过稍微有过一点路由器设置基础和英文基础的再上网查一下基本问题不大。而且ER-X的功能其实很强大,还有DNAT、SNAT、针对端口的防火墙设置、IPSec VPN设置等,但因为暂时没这个需求(也因为学艺不精还没研究透)所以并没有把他的功能全部发挥出来。

无线辐射段

路由器后面就简单了,接上PoE交换机,然后是三个AP,AP选择的是Unifi牌子,此前其实专门做AP的牌子不多,H3C更多是瘦AP,我又不想另外增加多一台设备,而且看Unifi的颜值比较符合我的口味,再加上Kaming当时已经在用LITE,反响很好,因此选择了Unifi。

在型号方面,二楼三楼是房间,比较多墙体,因此在AP上选择了信号辐射较强的LR型号,而一楼客厅和饭厅是打通的没有墙体阻碍,也受制于经费,因此在一楼只选择了LITE。

无线拓扑

刚刚说过这里的AP是胖AP,而H3C更多的是瘦AP,胖瘦AP主要的区别是:

  • 瘦AP自身无法独立工作,必须要用AC控制器下发配置,与AC控制器相连方可共同工作。
  • 胖AP自身可独立工作,也可受AC控制器控制与其他AP协同工作,但因为自身就有独立工作的能力,因此只要AC控制器下发了配置后,即使AC控制器掉线也能正常工作。

那没有AC的话我的AP是怎么管理呢?Unifi有一个软AC,就是通过软件对Unifi AP(下面简称UAP)进行配置下发和管理,需要在同一局域网内使用一台计算机安装此软件,然后识别UAP后对其进行管理。通过软AC和“Unifi 网络”的移动端APP,在外面也能对家里的网络进行控制。

当然这个远程控制的功能在七八年前国内厂商就已经能实现了,高中时候玩的极路由(现在好像已经倒闭了吧),那时候还有C罗特别版,在外地上大学的时候就经常家人说wifi慢我就用手机重启和修改信道。

但是软AC有一个缺点,就是如果装在电脑上,想要在外面通过APP访问的话,就一定要保证电脑不关机,软AC不退出,不然AC就是离线的,无法网络访问。UAP因为是胖AP,所以不受影响能正常使用,只是无法远程控制。然后因为我是买了台NAS是7 * 24h开机的,因此我将软AC装在了里面(通过docker的方式),就能实现外网随时控制了。

有线部分

设备:

  • 交换机:水晶16口千兆交换机、海康8路PoE供电交换机(百兆)
  • 摄像头:海康威视球形枪(支持ONVIF协议)*6
  • NAS:威联通QNAP TS-453B mini
  • UPS:山克 84AH

有线部分接入段跟无线部分一样,都是光猫桥接路由器拨号,而且是同一个网络,上面用了很大边幅来讲就不再展开了,主要还是讲讲家里的摄像头和NAS存储。

监控

这次装修决定要在房子周围把摄像头加上,至于为什么没有选小米之类的“智能摄像头”是因为那些更适合室内简易场景使用,写明不可用于户外,而我们是要装在房子周围院子里,无论是考虑到户外防水还是取电都还是用回专业摄像头比较合适,至于为什么选海康威视,我觉得就没什么考虑的必要了。

然后一般家里装监控,选的都是海康套装,除了摄像头、交换机,还会买一个录像机,但是跟上面的AC控制器一样,我并没有使用硬件录像机,原因有两个:

  • 秉承“不必要的设备能少绝不加”的原则,因为装修时难以找到合适的位置拜访机柜,最后只能腾空一个鞋柜(也就是弱电箱)的位置放置,因此除了必要的光猫、路由器、交换机、UPS,不想在那里增加另外的设备。
  • 录像机一般只支持一盘位或者两盘位,而且很少支持RAID阵列,数据安全和系统稳定没有保证。

因为家里原本就想弄个NAS私人存储玩一下,原本只是想着给照片、视频备份,后来研究了一下发现里面还能跑监控软件,然后在群辉和威联通之间,选了硬件性价比更高的威联通,对应的软件是QVR Pro。

微信图片_20210215164134.png

这里要提的一句是,QVR Pro虽然支持海康威视的摄像头,但由于海康摄像头型号太多,并不是所有的型号都能在QVR Pro里找到,而型号不对的话(即使是相邻型号)也无法联通,但幸好海康威视的摄像头都支持ONVIF协议,可以通过ONVIF协议调通。

当然,刚开始配置摄像头的时候,不知道为什么一直进不去后台,后来发现要用 chrome 的iPhone模式才进得去,至今不知为何,不过配置也只是刚开始的时候要调,日常都不会进去,不影响使用也没什么问题。

NAS

NAS选的是威联通QNAP TS-453B mini,其实主要还是群晖和威联通之间的选择,但是当时预算3K以下,同时想要4盘位组RAID5,群晖没什么选择,威联通虽说软件做得一般,但硬件性价比还是高,选的这个型号当时双十一优惠价1900买的(现在更新了CPU和DDR4内存,涨价到3000了),CPU还可以,两个内存槽,标配是2G,文档写最高支持4G * 2,看网上有人实测可以8G * 2,便买了一条8G再从以前的手提里拆了条8G的出来,直接拉满。

目前NAS主要是三个作用:监控、软AC、电影存储和串流。

就是家里的电视,只要能联网,连上家里的WiFi,都可以访问NAS里的共享文件夹,里面的电影都能随时播放。虽然说现在电视的视频软件有很多,但是一个是很多老电影和粤语电影都是各大厂商都没有版权的,例如前两天重新看了一遍《伦文叙老点柳先开》,这部比我还老虽然不多人知道但是的确很好笑的电影就在各大平台都没有版权,给钱都看不了。但是有NAS就能下到NAS里串流到电视上看。

微信图片_20210215174050.jpg

还有昨天又看了一遍《蜘蛛侠:平行宇宙》,不得不说是真的好看,我实在太喜欢蜘蛛侠了(不过真人电影中我更喜欢《超凡蜘蛛侠》)。

近期升级

千兆带宽

首先得益于电信的老用户馈赠,让我能够从原来的199元/月的300Mbps免费升级到1000Mbps。

微信图片_20210215195926.jpg

升级之后的第二天晚上马上就拿电脑去测,发现速率只有380~450Mbps左右,忽高忽低,一开始怀疑是水晶头没打好接触不太好,毕竟自己打的手艺可能不过关,因此拿了台手提到弱电箱直接插路由器上测,但依然只有400Mbps左右,怀疑是后台数据还没更新,仍然是300Mbps,多出来的是冗余,因为此前300Mbps基本上能测出330Mbps左右,有一定冗余量,就打了10000号自动重配数据,但是重配完之后还是只有450Mbps。

既然不是电信数据问题,那估计问题就出在路由器身上,为了排除路由器问题就要进行单机测试,先把光猫改成了路由模式,然后把整个内网跟光猫断开,用手提和网线直接接上去,发现能跑到960Mbps,证明线路等是没有问题的,问题应该出在我的路由器上。

但是考虑到ER-X的性能在一般家用的场景下是绰绰有余的,开始怀疑是ER-X后台配置问题,用STEAM下载游戏的方式进行测试,发现吞吐量大的时候,ER-X的CPU用量会达到80%以上,在网上查到要把“硬件卸载”打开。

在ER-X中,有很多功能都可以利用卸载引擎,最常见的是IPv4流量转发。如果不启用卸载,IPv4流量将通过CPU路由,在EdgeRouter-X上吞吐量最多只能达到500Mbps。启用卸载后,吞吐量将达到950Mbps左右,基本跑满千兆网络。

——《在ER-X中启用Hardware Offloading》

后跟Kaming也聊起这个问题,Kaming也说可能是因为这个引起的,便着手去执行。

具体操作为: 1、 登录ER-X管理后台(默认为192.168.1.1),点右上角 CLI ,然后用账号密码登录(如果用过Linux的就会知道密码是不会显示字符,初次使用命令行的话不要以为键盘坏了)。

image.png

2、输入下行代码,查看当前状态,如果默认没修改过应该会如下图所示,IPSec和HWNAT都是 not loaded

show ubnt offload
image.png

3、输入如下代码

configure   #进入配置模式

set system offload hwnat enable   #设置硬件卸载  

commit;save   #提交和保存
微信图片_20210215203838.png

4、 此时再查看一次硬件卸载状态,若如下图所示显示 HWNAT offload module: loaded 则代表已成功开启硬件卸载。

show ubnt offload
image.png

此时在steam上下载《彩虹六号》,实测能够超过100Mb/s,换算过来也超过了800Mbps,还不算此时我爸妈的手机以及他们在电视的腾讯视频上在看电影,不要求一定跑满1000Mbps,但有800Mbps以上也满足了,毕竟要到这么大带宽的机会还是少,但以后根本不怕任何游戏更新了。 :-p

微信图片_20210215204821.png

NAS扩容

这次扩容主要是硬盘上的扩容,而且主要是针对QVR的需求进行的扩容。

之前由于预算有限,只用了一个希捷的4T盘,由于临界值等问题,更是只分了2T不到空间给QVR存储,后来发现,QVR因为license问题只能回看14天录像,而保存文件则只有12天。

QVR回看license不便宜,而且如果有本地文件的话14天前的视频就算不用QVR来回看也问题不大,因此买了块西数的企业级8T硬盘(买不起黑盘和金盘orz),看看能否增加本地存储天数,主要还是看重他的高可靠性,虽然说后续组了RAID 5的话能承受得起1块盘的损坏,但换盘总是需要时间和金钱的,稳定就是最好的。

现在分配了4T给QVR作为监控文件的存储,不过预算还是有限,还组不起RAID,也只能单盘运作,多烧香祈祷在组RAID之前别坏盘吧orz。

微信图片_20210215211912.png

但是其中有个小插曲就是,我原本打算插了新盘进去通过“先组raid1然后移除原本4T盘”的方式进行数据迁移,后来发现由于设置错误,插进去之后变成了一个资源池中的两个独立盘,想删除新盘重新插盘,结果错手点成了删除资源池,连同旧盘一同删除了,但重新插盘的话必须先格式化,代表着此前所有数据都没了。

不过幸好其中并没有什么重要数据,自己手动把系统、分区、QVR、unifi controller、摄像头什么的重新配了一次就没问题了。

智能家居

没什么好说的,我用的是绿米AQARA的一整套,主要是看上他能接入Apple HomeKit。

最多还是开关,如果装修有能力接零火双线就一定要接零火版,电流控制更加稳定,如果是后期自行加装实在没办法就只能单火版了。

除了日常的开关、插座之外,最主要还装了电动窗帘

当时装修极力坚持一定要装电动窗帘,至少客厅和两个主卧都装了,算上安装费一路大约是1000~1100左右,原本是双十一899元一路,但因为是超过标准长度了所以超出部分导轨按米加收。

看起来好像只是电动代替了人力没太大必要,但是如果加上互联网就大有不同了。除了每天早上定时开窗帘(等于半个闹钟),一睡醒就能看到窗外阳光的舒适感,还有每天中午定时关窗帘不让椅子被暴晒。

再加上后来买了个HomePod,为什么花两千多买HomePod不买其他便宜一点的智能音箱呢?因为HomeKit有一个特点,就是要远程控制的话一定要有一个苹果设备在家联网,对iPad压泡面不太敢兴趣的我选了HomePod,同时还考虑到,我认为Siri是做得最好的语音识别和交互(没有之一),最重要的是当时只有Siri支持粤语。因此加了个HomePod在客厅,教会了我奶奶用Siri,她现在就不用隔着椅子去拉窗帘了。

讲多两句

有人问究竟是有线mesh组网好还是AC+AP组网好?(完全不认同这个问题,何来的有线mesh这种说法,有线mesh就是AC+AP了)以及之前也有跟同事探讨过无线mesh组网和传统AC+AP组网方式的优劣。

首先我先提出一个观点:AC+AP和mesh组网从来不是对立,而更像是弟弟(mesh)对哥哥(AC+AP)的补充,都是从以前的单一设备(带AP的路由器)小范围覆盖向多设备(AP或mesh设备)全面积覆盖演进的两种不同方法。

这种全面积覆盖并不是指多个WiFi把房子全部覆盖住,而是同一个SSID(也就是同一个WiFi)对全屋覆盖,人们在屋内行走移动的时候终端设备无需手动切换WiFi而根据信号强弱自行切换接入设备,换句话来说就是,根据信号强度对接入设备进行无缝切换而不引起使用感知的变化

其实人们(也包括我)对大面积、多间隔场景使用多设备桥接以达到全方面覆盖、无缝切换这条路已经探索许久,提出过不少解决方法,包括但不限于十多年前的无线中继、电力猫(这两者以前都尝试过,效果并不好),到受价格和线路影响仅在商用场所使用较多的AC+AP,到现在被大力吹捧(以至于我认为像新能源汽车一样都被吹过头了)的mesh组网。

mesh组网

举个例子,假设这是一个大户型家庭的mesh组网(随手画的,户型不要纠结),除了在弱电箱光猫旁边有一个路由器(同时也作为mesh节点),在客厅、书房、主卧、次卧各有一mesh节点,此时我画出其辐射效果较好的范围(不代表覆盖范围,其实现在的天线覆盖范围很大,只是再往远处效果衰减厉害而已,所以这里只取衰减较小、效果较好范围)。

微信图片_20210215221050.png

然后虚线是各个mesh节点之间的无线连接,由于mesh网络是一个多跳网络,因此每一个mesh节点跟其他mesh节点都会相连,组成一个星型网络架构,然后所有设备就近接入信号最好的mesh节点(不考虑移动中切换阈值问题),然后mesh节点会自动选择最优路径,这条最优路径不一定是最少跳数,会综合信道干扰、吞吐量负载等综合计算。

例如手机在主卧发一条微信,手机通过mesh 5接入WiFi,mesh 5自动计算最优路径,此时客厅mesh 3可能因为电视在看4K电影,吞吐量和负责都比较大,而次卧mesh 4又在打游戏,因此mesh 5就选择了“mesh 5 - mesh 2 - mesh 1” 这条路径。

但是这里有一个问题就是,无论是通过 mesh 2、3、4、5进行接入,最终都要通过mesh 1,即网关和路由器连接到外网,而mesh 1与其他任何mesh 节点之间都是通过无线连接的,所以最终终端的最大速率不仅受接入设备的天线辐射功率和协议影响,还受他选择的路径中各个mesh节点的最小速率限制,而这个速率就受天线辐射功率、协议、信号衰减、干扰等多重因素 * 需经过的mesh节点数影响。换句话说就是,选择的路径经过的mesh节点越多,影响因素就越多。

AC+AP

同样的户型,假设装修时布放好了室内线,那么我们可以采用AC+AP的方式进行组网。因为AC可以存在于该局域网中的任何位置,而且不辐射信号不作为网关等,这里我就不标注出来了。

微信图片_20210217094940.png

与mesh组网不同的是,大家可以留意到所有的虚线都没了,只剩下4个AP通过实线与“路由器及AP”相连,这是因为我刚刚说的,装修时布放好了室内线。因为用有线连接的话,基本上现在用六类线或者超六类线,在室内的长度衰减基本可以忽略不计。

依然假设手机在主卧发一条微信,手机接入的是AP 5,然后AP 5将数据直接通过网线传输到路由器上,然后接入运营商网络。在这里可以看到与mesh组网相比,用网线直接连接,省去了无线连接的多跳,数据传输不再受其他AP影响。

如果说我们的数据包是货物,那么就可以将每一秒要要传输的数据包都看作是一辆货车。

  • 用mesh组网就是多条高速公路相连,每辆货车能装载的最大重量(即终端与外网相连的最大速率)取决于这次选择的路线中每一段高速的最大限载。
  • 用AC+AP组网就是高铁,基本上只取决于你的货车每秒能从高铁上接收多大重量的货物(即终端到接入设备的速率),此后接入设备到路由器和外网这一段就是高铁运输,不再受其他限载影响。

合作与发展

其实所有的事物都是从对立开始,到后面却发现其实是共同发展。

mesh组网和AC+AP也是如此。AC+AP是传统型组网,mesh是新型无线组网,现在网上对mesh组网的看法大多是“长江后浪推前浪”,一副全方位碾压AC+AP要把对方干死的样子,但其实我并不认为如此。

我从不认为这两者是对立的存在,相反,我更认为mesh是对传统AC+AP组网的补充,AC+AP组网稳定性、带宽保证等是比mesh组网要好的,虽然我是学无线出身的,但有线比无线稳定的事实是不能忽略和否认的(无线实在是太难了T^T)。

只是AC+AP组网的有一定门槛,包括但不限于:

  • 胖AP设备相对mesh组网设备价格一般更高
  • 需要AC设备
  • 需要提前布放好室内线

而mesh组网则是降低了这个门槛,采用无线连接的方式,再加上在无线桥接基础上发展出来的多跳和最优路径选择,提升了无线连接的效率,使得没有布放室内线的家庭也能享受多设备组网带来的网络质量提升。

因此我认为mesh组网与其说是AC+AP的替代品,不如说是对AC+AP的补充。

同时也不能忽略的是,在mesh组网高歌猛进的同时,AC+AP也在不断地吸收和发展,例如上门说到需要AC设备,现在已经逐渐有软AC的出现(我现在就是通过docker在运行着软AC),同时AC+AP也在兼容着mesh组网,除了使用有线连接外,可以允许无线mesh连接。

微信图片_20210217111800.png

我曾实测试过有一次上controller上面发现我其中一个AC旁边有一个“已连接(无线)”的标识,检查后发现原来是我那个AP的网线松了,然后自动帮我切换的无线mesh模式。也就是说在UAP中,有线传输和无线mesh是主备存在的,如果没有有线连接的话,也可以使用无线mesh进行组网。

所以说,AC+AP和无线mesh从来就不是对立存在的,mesh可以弥补到没有布放室内线等家庭的组网需求,而AC+AP也在不断发展兼容着无线mesh的组网方式。

二者就像汽油车和新能源汽车,前者可靠性强,后者经济性有优势,但二者绝不是对立的,而要相辅相成,吸收对方的优点,共同发展,就如同现在越来越多的汽油车出混动版本,借用一定的电技术去弥补自身的部分缺点。

传统不等于不好,新事物也不代表一定能取代前人,看清自己的不足,学习对方的长处,这才是真正的发展之道。