历时两年,我终于解决了二级路由穿透的问题
本文主要描述了我为了将二级路由下的群晖穿透到外网的煎熬历程。
整个过程中我从一个小白逐渐成长为一个还不错的老手。
大致描述的话,分为以下几个阶段。
第一章 进入NAS的殿堂
第二章 二重路由与内网穿透
第三章 硬件解码与PVE虚拟机
第四章 无法回避的路由转发
经过一场段时间的肝,氪,痛苦。我终于网络工程小学毕业了。接下来终于可以去着手一些更加开放的课题了。
第一章 进入NAS的殿堂
最初了解到NAS是因为在什么值得买看了阿文菌博主的文章。Nas这个词,第一次进入我的视野。当时觉得非常新奇,但是又很好奇这样的一件设备到底是处于什么需求呢?

阿文菌主页
带着这样的疑问,直到我遇到了这样一块主板。当时看了著名日本电子产品商店tsukumo居然上架了一块七彩虹的Z490而且仅售600人民币左右。 我心里就想着有没有用先买回来再说。万一能玩玩呢。 当时的我刚刚工作并且疯狂购物的状态。所有我学生时期不想浪费父母钱想买的东西我都会去买。像是精英2,NS,PS5, 巨贵的p50移动硬盘甚至是1.4w的首发3080ti。所以一块如此便宜的z板,还是国产之星,还是白色外观,我没理由不买来玩玩。等到我组装好一套Atx 一套itx之后,我发现我多了一个以前用的电源,我就想那我买个内存,买个u买个硬盘岂不是一套机器就出来了???于是我就干了。
Version1:
主板七彩虹z490 cvn ·600
cpu:10100 ·700
科赋2666 8x2 1jr颗粒 ·400
U盒装原装散热 ·0
电源先马金牌500w ·200
8T WD red plus ·1300
引导用U盘:老婆去访问清华给送的小垃圾 ·0
参考了阿文菌和GXNAS大佬的教学内容,开始了折腾黑群晖。
只是发现不知道是不是这块板子的原因,用了GX大佬的10代u核显补丁后,还是无法驱动。
https://wp.gxnas.com/7952.html
上淘宝一搜看看有没有解决方案后,居然找到了GX大佬。大佬表示小意思。于是开始给我远程操作。用ssh给我打补丁。发现还是不行。说可能是主板的问题。

GX大佬注释
大佬帮我操作了一整天。还是不太行。但是好在给我黑裙洗白了。初期没有硬解也没有太大的问题。只用来当nas也很不错了。于是就这样闭着眼睛,用了一年多,期间什么大问题也没有出现。
也就是重启不太顺畅,因为那个u盘实在是太差了。我甚至给这个盘重新用工具量产了一遍。平均46瓦左右的功耗,也不高所以就一直不关机了。
第二章 二重路由与内网穿透
我们家用的是软某的千兆网络。如果需要ipv6服务的话必须要用他们家的路由器(bb unit)。我自己又另外购入了一个AX86u 和一个AX3000(其实是AX56,和Tuf那款不太一样)。一个放一楼一个放二楼。
当时不太能完全理解内网的端口映射关系,想要让nas直接通过公网能够连接。于是乎只能AX86和NAS同时接bb unit,家里的设备和nas处于不同的网段。
这样做虽然方便,但是有很多的缺点。
比如说两重路由器的情况下无法远程连接二级路由下家里的设备。像是ps5,xss,电脑都不行。让我处于一个能用但是不完全能用的状态下持续了很久一段时间。
这段时间里基本上把群晖的一些功能,虚拟机,docker,plex,emby,jellyfin等功能都玩透了。另外像是腾讯云的dnspod,设置域名等问题也弄好了。
其实文章到这里,基本上这样的方案已经可以满足大多数人的需求了。
有公网ip,nas功能齐全(没有硬解),wifi环境速度完美全屋mesh覆盖。
转折大概是因为我看了司波图大哥的一些很奇妙的折腾,包括但不仅限于pve的一些视频。让我寻思着我是不是可以转成虚拟机呢?
第三章 硬件解码与PVE虚拟机
处于以下几个重要的需求,我终于决定在pve平台下构建新的Server环境。
硬解:物理机下无法硬解的情况,我猜测在虚拟机下应该有概率可以实现。
内网带宽:1G的内网速度让我感觉家里的硬件设备像是一堆烂铁。希望进化为2.5或是万兆。
充分利用硬件的性能:Nas对于硬件的要求非常低,其实用更高利用率的PVE多开几个虚拟机完全没有压力。
内外网互通。我希望这台服务器可以完美的在两个网段上使用。
PVE完全可以符合我的这些需求。
主要参照以下教程进行了操作。
迁移
https://www.bilibili.com/video/BV1a4411f7UM/?spm_id_from=333.337.search-card.all.click
核显直通:
http://www.naxs.cn/zcjh/9326.html
主要是用来理解Grub文件和相关根目录知识,最后并没有采用直通。而是在LXC中的docker使用jellyfin硬解。
在确认了一系列资料后。我制定了自己的方案。
首先安装PVE环境,在PVE环境下新建一个DSM系统,进行模拟,看是否能正确硬解。当然这点最后被放弃,毕竟有LXC。
正式迁移DSM磁盘并直通到虚拟机环境。
这期间的操作,公网IP和群晖内置的邮件提醒,像是端口转发服务关闭,与群晖ddns服务连接关闭等等信息成为了我用来确认群晖是否正常的非常重要的工具。
确认家庭网络拓扑图。主要是4口2.5G PCIE网卡和新买的2.5G tp-link交换机如何使用的问题。这段我研究了非常长一段时间。期间有各种各样的方案。
如,网卡直通给OPwrt虚拟机,做交换机使用。最后直接通过PVE的网桥直接构建了桥接。再比如,交换机应该放置在什么节点,最后我选择了放在二楼书房,毕竟这里的有线设备最多,由于楼上楼下只有一根网线相连,我决定这跟网线用来连接楼下服务器和楼上的终端设备,同时有线回程Mesh的Ax3000节点。
这样做有几个好处,一是ax3000可以毫无压力的只负责二楼的wifi服务,减轻负担;二是楼上所有有线设备都可以2.5g连接;三是通过多个网口与服务器相连接,可以减轻单设备,单网口的负担等等等等。
主要是LXC的构建。这个司波图老师有详细的讲解。此平台下,可以随意折腾,备份,还可以搭建个人博客。由于存在PVE→LXC→Docker→容器这样的套娃关系,非常稳定和安全。硬解4k·120MBPS码率的视频毫不费力。CPU占用约为百分之2.
最终方案如下图所示。
通过这个方案,我成功实现了我想要的所有功能。
而且我对于这台机器也有了更加多的折腾和研究的空间了。完美。

拓扑图,可以下载放大观看
第四章 无法回避的路由转发
还有非常重要的一点就是一些特定设备,例如黑群,PVE宿主机我一定需要两个网段,不同的IP地址。因为我发现宿主机在一级路由192.168.3.x网段下,整个网络环境都通过bb unit一级路由器进行数据包的转发。所以网速只能达到千兆。即使是将虚拟机设置到192.168.50.x的网段,也还是会进行千兆的转发。这一点我测试了两周时间。测试方法如下: