--- title: 群晖NAS安装旁路由 tags: - 网络 - NAS技术 categories: NAS服务 abbrlink: 43311 date: 2022-02-25 11:02:22 keywords: description: --- >试想以下这样的场景,当我们了解了DDNS、端口转发等功能,却发现家里的路由器并不支持;或者当家里的路由器对于拦截广告等功能已经不堪重负时,我们应该怎么办? >最好的方式当然是换一台路由器,但是当我们手边刚好有一台NAS的时候,不妨使用NAS搭建旁路由(软路由)的方式来解决这些问题。 # NAS安装旁路由的两种方式 网上流传比较多的有两种方式: >通过NAS自带的虚拟机安装 >通过Docker安装。 笔者在当时安装的时候,刚开始是使用Docker的方式,中间也对网络也进行了各种设置,但是让我崩溃的是,安装完后对笔者的某些应用有限制。不得已只好放弃,转而采用虚拟机进行安装。建议在有NAS的时候采用虚拟机的方式安装,而在无法提供虚拟机的时候再采用Docker的方式。 # 安装虚拟机VMM 在这里使用群晖NAS进行安装,其他NAS流程是类似的。 VMM是虚拟机程序Virtual Machine Manager的简称,群晖套件中心就有,打开套件中心,搜索Virtual Machine Manager,第一个就是,点击安装 # 主板开启虚拟化 进入群晖系统–>控制面板–>网络–>选中“局域网”–>点击“管理”,在下拉菜单中选择“Open vSwitch 设置” 在弹出界面中选中“启用” # 下载OpenWRT 2023-01-06精简版[下载](https://oss.dreamlyn.cn/nas/openwrt/bleach-mini-20230106-openwrt-x86-64-generic-squashfs-combined-efi.img.gz) 2024-01-01精简版[下载](https://oss.dreamlyn.cn/nas/openwrt/bleachwrt-mini-20240101-x86-64-generic-squashfs-combined-efi.img.gz) 2023-01-06大而全版[下载](https://oss.dreamlyn.cn/nas/openwrt/bleach-plus-20230106-openwrt-x86-64-generic-squashfs-combined-efi.img.gz) 2024-01-01大而全版[下载](https://oss.dreamlyn.cn/nas/openwrt/bleachwrt-plus-20240101-x86-64-generic-squashfs-combined-efi.img.gz) # 安装OpenWRT 解压刚才下载的文件得到.img后缀的文件,然后打开群晖内的Virtual Machine Manager,选择映像–>新增–>从PC上传文件并上传刚才解压出来的img文件,之后点击下一步。 勾选存储空间并点击应用 状态处显示良好,表明此次上传没有问题。 上传完映像之后,我们点击网络–>新增,为网络命名为ETH1,勾选连接网线的接口(一般局域网1就是),随后应用。 之后我们点击虚拟机,导入刚才的镜像。 从硬盘映像导入,选择刚才上传的映像,然后点击下一步 选择存储空间后继续下一步 为虚拟机命名,选择CPU和内存容量,继续下一步。 设置虚拟盘大小,其他默认,下一步。 网络选择ETH1并设置,在里面的型号中选择`e1000`。(不选也可以使用,但网络为半双工的,改为e1000后,网络变成全双工)。 自动启动选择是,其他默认,下一步 设置管理员权限,只勾选admin,下一步 勾选创建后启动虚拟机,随后应用。 至此,虚拟机已经安装成功了。但是openwrt的默认ip地址是192.168.1.1,而我家里的路由器IP地址是192.168.31.1,需要将openwrt的IP地址设置成192.168.31.X,在此我设置成192.168.31.2(需要和主路由一个网段)。 如下图,选择旁路由后点击连接,在弹出的标签页进入openwrt的终端。 # 设置网络 输入命令修改ip地址 ``` vi etc/config/network ``` VI编辑器简单实用方式:按 i 键进行修改,修改完后按Esc退出,接着输入命令 :wq ,保存刚才的修改 之后输入service network restart命令重启网络就可以了。 待重启之后,在浏览器输入刚才修改过的IP,就可以进入Openwrt的登陆界面了,OpenWRT的默认账号密码是root:password,进入系统后可以修改密码。 # 配置OpenWRT 安装完成后,要想正常使用还需要再配置一下,找到左侧菜单 网络–>接口,选择LAN的接口进行修改 这里主要设置IPv4地址、IPv4网关和自定义DNS服务器。 同时在下方勾选忽略此接口,来禁用OpenWRT的DHCP功能,保存并应用就可以了。 # OpenWRT常用功能 ## 拨号上网 默认情况下,运营商提供的光猫是不支持DDNS和端口转发等功能的,那么我们就需要使用OpenWRT来进行拨号上网,并在里面进行DDNS和端口转发等功能。 首先来看下网络组成情况。 我们需要将光猫改成桥接模式(可以找维修师傅远程处理即可),然后在OpenWRT里进行如下操作: 点击网络–>接口–>LAN–>修改–>物理设置,取消桥接接口选项。 在网络–>接口中添加新接口,如图所示进行设置,点击提交。 修改WAN口,在基础设置中输入拨号账号和密码即可。 PC上网时,将默认网关设置成旁路由的IP地址(我这里是192.168.31.2)。 ## 端口转发 点击网络–>防火墙–>端口转发来进行端口转发的设置。 ## 设置DDNS 首先我们要了解DDNS的原理。 如图为PC正常上网的流程,PC根据域名到DNS服务器请求IP地址,DNS服务器根据A 记录查找IP地址并返回给PC,PC使用IP地址请求web服务。(当然这些流程对用户来说都是透明的) 了解了这个流程我们再来说DDNS,DDNS其实就是动态的调整DNS服务器中的A记录,实现的前提就是域名服务商提供API来修改域名的A记录,我们在需要使用DDNS的地方通过脚本来获取可能动态会变动的公网IP,然后通过API告诉域名服务商修改A记录。 我以DNSPOD为例进行演示,在DNSPOD的控制台找到域名解析,并添加一条A记录,这里我设置主机记录为home,IP地址先随便填写. 在DNSPOD的控制台点击我的账号并选择我的密钥,查看对应的SecretId和SecretKey . 点击服务–>动态DDNS–>端口转发来进行端口转发的设置,在下方输入框输入DNSPOD并点击添加. 勾选启用,查询主机名填写刚才添加记录的域名,DDNS服务提供商,选择dnspod.cn,域名填写刚才添加记录的域名,用户名和密码对应SecretId和SecretKey,然后点击保存并应用. 当下图红线处出现域名和IP对应关系时,即为配置成功. ## 其他功能 OpenWRT是搭载在Linux系统之上的,里面的服务还有很多,比如frp内网穿透、DNS过滤器、广告过滤大师、Docker等,在此就不再一一列举了,感兴趣的可以在评论区留言共同交流.