[ 本帖最后由 wmx12345 于 2025-2-27 18:48 编辑 ]<br />
<br />
一、前言
不知不觉已经玩了3年的NAS了,一直在用蒲公英,想着写点儿东西出来,分享一下心得,本人非网络技术类专业,抛砖引玉,技术不足之处,还望各位指正。
二、访问**Nas**的几种方式
1、付费玩家
(**1**)、固定IPV4
移动、联通、GuangDian(不明白为什么是屏蔽词)的家庭网络都是大局域网组网,不提供公网IP,要公网IP只能拉数据专线。目前家庭网络能提供公网的运营商估计只有电信,所以开个电信宽带,要求电信提供公网IP,就能畅玩NAS了,如果你是这种玩家,以下内容就不用看了,下面的内容属实有点儿繁琐,属于白嫖党专属。
(2)、IPV6+域名(强烈推荐)
随着国家大力推广IPV6,手机端已经全面支持IPV6,最近几年使用这种方式访问NAS的方式非常火热,而且成本极低,阿里云域名一般不到10元,一年一换即可,再开一个IPV6的域名解析20元,一年30元即可享受飞一般的速度。各电信大运营商(除了GuangDian),都支持IPV6网络,这种方式不是本文论述的重点 ,有需要的朋友请移步B站找保姆教程吧。
如果你发起访问Nas的地方都支持IPV6,或者你手机流量足够多可以直接开热点通过IPV6访问Nas,那么下文的内容不适合你,使用这种方式是无可争议的最快的。
2、免费玩家
(**1)、NAS厂商提供的Connect**服务
各个NAS厂商都会提供Connect,例如飞牛OS的FN Connect服务,分配一个三级域名,但是免费的服务,体验感肯定不会很好,必定人家都是有服务器成本的,百度、阿里的网盘都经不起白嫖党的压榨,何况是NAS这个小领域呢。
(**2)、SD-WAN**技术
国外的SD-WAN基本可以不考虑,不稳定且速度上不去,国内的爱快、贝锐蒲公英等技术厂商的SD-WAN均有一定的免费额度,尤其是贝锐蒲公英有3个客户端软件或硬件端的免费使用额度,而且支持P2P直连,于是快乐不就来了。
三、基础篇
1、蒲公英路由器+软件客户端的混合组网
这是蒲公英官方主推的一种方式,使用这种方案最明显的优点是技术门槛低,买个贝锐蒲公英X1就可以,贝锐蒲公英X1支持旁路由模式,可以不改变现有网络拓扑结构,在公司就可以用软件端访问NAS了,如果是P2P连接,速度会很快,以前我可以P2P连接的,现在只能工作在中继模式下了,原因不明,中继模式我目前实测平均是300KB/S,会有浮动。技术层面的优点是可以提供,软件端到局域网,局域网到局域网的访问,对网速要求不高的人群很适合。

然而,弊端也是显而易见的,蒲公英X1只有百兆网口,即使当旁路由也会影响内网速度,对于追求1Gbps,2.5Gbps,甚至万兆网络的玩家来说,让蒲公英的百兆网口卡脖子,影响内网速度是完全无法忍受的。如果买贵点儿蒲公英硬件,又不能与现有网络组mesh网络,只当一个旁路由太累赘、太浪费。一般想继续看下去的玩家,必定也是不屑于使用蒲公英的硬件的,于是也就有了下文所示的各种骚操作。
2、在NAS上安装蒲公英进行点对点内网穿透
蒲公英软件版本提供了客户端软件和服务器软件,其中服务器软件是付费套餐可选内容,所以在NAS上只能安装客户端软件,推荐大家使用docker安装,镜像名为bestoray/pgyvpn。飞牛OS的Docker拉取镜像之后,注意要添加配置参数PGY_ USERNAME、PGY_PASSWORD,具体安装方式请参照蒲公英官方文档。
采用这种方式组网,除了可以省去一个蒲公英的硬件成本之外,还可以不影响内网的速度,另外还有2个客户端软件可以连接到Nas,公司电脑上连接Nas当云盘、装个微力同步同步资料或者远程看电影摸鱼,都是不错的体验。
但是中年男人怎么可能只有一台Nas?随着时间推移,软路由、另一个nas、OP梯子,家里的设备可能越来越多,在每个设备上都安装一个蒲公英客户端?还是就此妥协,使用蒲公英的路由器当主路由?No、No、No,肯定还有更好的选择!
四、进阶篇
1、NAS里安装浏览器
如果只是偶尔访问家里的其他设备,可以采用这种方式。通过蒲公英连接到家里Nas之后,在Nas上通过浏览器(例如docker版的chrome)访问内网的设备,但是也仅仅能访问,体验会很差,不推荐,可以应急使用。
2、蒲公英配合NAS的网络代理服务,客户端到局域网
(**1)、Nas服务器端的squid**网络代理
很多人对网络代理这个服务不陌生,得益于docker的普及,在Nas上很容易使用这个功能。群晖套件自带Proxy Server,本质上是个封装好了的squid,飞牛OS可以使用docker安装ubuntu/squid。注意,飞牛docker安装squid时,映射文件夹时,可能存在docker对宿主文件夹没有读写权限的问题,使用ssh工具,chmod 777就好了。
我家里是用的黑裙的Proxy Server,对docker版的squid配置不是精通,请自行搜索squid的配置教程,做好IP地址限制。如果Nas开通了IPV4或者IPV6公网,还要配置squid的验证,否则谁都可以使用squid进你的内网了,存在安全隐患。

(**2**)、客户端网络代理
在公司的访问端,可以直接用windows的代理服务,设置好Nas蒲公英的IP地址和端口,就可以使用Nas的代理服务访问家里的其他设备了。例如主路由网址是192.168.31.1,直接输入这个IP就可以调整家里主路由的设置。
顺便提一句,家里局域网的IP段一定要非主流,不要192.168.0.1,192.168.1.1这种,小米路由192.168.31.1这种也不要用,否则一旦公司或者其他地点的网段和家里一致,你的访问端就无法访问家里的网络了,会很麻烦。


如果你做完了以上步骤,相信你已经身心俱疲了,一定已经解决了各种奇葩的报错,无法运行,与此同时成就感也是满满的。想象一下,你逃避了公司路由器对游戏网站的屏蔽,可以玩上游戏了,同事必将向你投过羡慕的目光。
这种方式有个很大的弊端,会把你电脑上所有的数据流量全部导向你家里的路由器,有些应用程序受制于本地域名解析的问题,还是会被公司的路由器屏蔽。难道白嫖只能止步于此了吗?显然不可能!弃用Windows自带的代理功能,可以采用专业的代理软件,做详细的代理配置,我使用的是Proxifier
,配置好Proxy Server和Proxification Rules
,Proxifier软件的具体功能可以自行摸索。完成这一步后,上面2个问题都迎刃而解,网络流量实现了分流。

(**3**)、不能说的秘密
OP梯子咋办呢?这个问题是最简单的,直接将家里的Nas的网关设置为OP的地址,这样代理的所有流量会经过OP,你通过公司的网络又可以抨击资本主义的黑暗了,正道的光,再次照在大地上。
(**4**)、需求衍生出的新问题
一天,我在公司的网络鸿图对战平台(红警战网)玩红警,同事羡慕的同时,也唤起了同事的回忆,纷纷要求加入一起玩。蒲公英的客户端肯定是不够用的,公司的网络结构也不能改变,如何才能让同事开通代理一起玩游戏呢?难道又要回到贝锐蒲公英X1旁路由的老路子上来吗?的确,作为权宜之计,我这么干过,反正公司的下载和上行速度都不快,100Mbps不构成速度瓶颈。屏幕前的你愿意放弃折腾了吗?
3、客户端侧飞牛OS+蒲公英组建的旁路由,实现局域网到局域网的访问
(**1**)、飞牛OS对Nas市场的影响
飞牛OS的横空出世,具有划时代的意义,中国大陆终于有了中文版的开源Nas了,再也不用委曲求全地去一步步折腾黑群了,简单地下一步就可以安装好一台Nas。
最近我从海鲜市场买了一款双口的J1900小主机,8+120G,188元,让我高兴了好几天,我觉得是物有所值,准备安装飞牛OS。既然是旁路由模式的蒲公英,总不能在电脑和旁路由之前再加一个交换机,这不符合爱折腾man(吐槽一下网站的屏蔽词,这个地方不能写人)的美学观。
(**2**)、OVS虚拟交换机
飞牛OS暂时还没有提供OVS虚拟交换机的界面,但是本身是安装了vSwitch服务的,可以在后台手动构建了OVS模式下的网桥。
首先在网络设置中找到公司网口到飞牛OS的网口,我这里网口1是enp3s0网卡,点击…,启用OVS,后台会自动创建一个名为enp3s0-ovs的网桥,sudo ovs-vsctl add-port enp3s0-ovs enp4s0,sudo ovs-vsctl show,可以看出网口2已经添加到网桥中,在网口2插上电脑,电脑和飞牛OS就都可以连上网络了。




(**3**)、解锁软件版蒲公英的旁路由模式(需要一定的网络知识支撑)
普通的Docker版蒲公英是不支持旁路由模式的,服务器版的蒲公英又要收费,这最后一公里式的网络问题,该如何解决呢?基本原理很简单,所有客户端电脑把数据流量交给旁路由,旁路由转发给家里的Nas代理。
不是每个人都具有网络工程师的技能,但是这是AI时代,我把需求告诉了Deepseek,历经几个小时的聊天,它为我制作出了可以用于配置网络服务的脚本,但是也存在很多bug,而我不精通linux网络脚本命令,没法优化,目前也只能是修改到能用的水平,我就简单介绍一下这几个脚本,附件详见文末。
(a)、蒲公英安装的几个注意事项
请按蒲公英官方推荐的Docker方式安装,网络设为host模式,使用高权限执行容器,如果网络使用bridge模式,会增加很多麻烦,必定都要添加路由表了,蒲公英的网络还躲在容器里,不合适。
(b)、脚本概述
“pgy-network-setup.sh”是安装脚本,修改参数后,在ssh中执行,可开启IP转发、添加静态路由表、添加NAT映射、添加转发规则,已经做了持久化保存。如果想知道为什么需要这么多步骤,就去问Deepseek吧,说下来一大堆,不再赘述。一些必要的查询命令、脚本对应的手动命令行,我都写在脚本里了,可以自行选择是否使用。
“pgy-network-teardown.sh”是卸载脚本,多次执行“pgy-network-setup.sh”删改IP之后,会产生数据残留,需要手动配置清理。我让Deepseek清理所有数据残留,也一直没写出令我满意的脚本。
注意不要在Windows环境下编辑上面2个脚本,容易出问题,尽量在ssh工具里用编辑器编辑吧。剩下的2个bat文件,就是在Windows客户端上添加静态路由表和删除静态路由表的批处理文件。
(c)、sh脚本参数详解
CONFIG_TAG="PGY_RELAY_SETUP" # 用于标记本脚本创建的规则,不用修改
CLIENT_SUBNETS=("192.168.2.21/32") # 客户端所在子网数组,如果你想让整个局域网下的人都能访问,直接填192.168.2.0/24就可以了,子网掩码的作用请自行百度学习。我不想谁都可以访问,所以设置了一个数组,可以一个个添加。
LOCAL_PGY_VIRTUAL_IP="172.16.0.24" # 蒲公英本地虚拟IP(容器内),也就是飞牛OS上的蒲公英的地址
REMOTE_VIRTUAL_SUBNET="172.16.0.0/16" # 远端蒲公英的虚拟子网,这里可以填固定IP,但是不建议这么做,家里的Nas折腾几次之后,IP都会变的,直接设为子网比较好
PHY_INTERFACE="enp3s0-ovs" # 宿主机物理接口名,请填你飞牛OS上看到的网桥的名字
PGY_VLAN="oray_vnc" #这个名称应该是固定的,如果不放心用ip r之类的命令自己核实一下吧
(d)、bat脚本参数详解
“route add 172.16.0.0 mask 255.255.0.0 192.168.2.129 -p” 中
“192.168.2.129”是旁路由的本地网络地址,“172.16.0.0 mask 255.255.0.0”同上面的"172.16.0.0/16",如果对子网掩码比较蒙,百度恶补一下就行,只需要知道啥意思就行,不会就让AI写。
(e)、构建旁路由路由表
①、配置好bat文件里的IP地址,在Windows主机上双击执行。
②、把文件存到飞牛OS的文件夹中,配置好sh文件里的IP地址,把文件路径拖进去ssh,回车运行sh即可。
③、理论上来说,你windows上原来装的蒲公英可以退出了,通过你windows上的代理或者其他人通过代理,应该都可以通过旁路由访问到你家里的Nas了。事实上,一般人很难把上面步骤①②配置对,快去debug吧,“pgy-network-setup.sh”里我留了几个查询命令,只要最后查询出来,大概像我这样,就可以跑通了。


(f)、最终实现的效果
所有公司需要玩游戏的电脑通过Proxifier代理设置红警战网的启动程序“HTplatform.exe”访问家里172.16.X.X的代理服务器,然而日常数据流量仍然从公司的路由器进出,互不干扰。
五、结束语
能认真看完到这里的,必定是折腾党无疑,希望有大神能帮忙优化一下上面的脚本,我自己感觉还是太不智能了,能力有限不会修改。要是飞牛OS能把这些功能做个工具或者界面,就再好不过了。
以上的各种折腾,其实就是因为公司不开通IPV6导致的,我本身是做了IPV6+域名的,但是公司访问不到家里,所以一直眷恋蒲公英。
创作不易,转载请注明出处!
PS:论坛不好缩进,我也没办法
附件:客户端到蒲公英的静态路由表配置.rar