Hexo个人博客
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

195 lines
8.7 KiB

---
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,第一个就是,点击安装
<img src="https://img.dreamlyn.cn:8443/i/2024/02/22/204800.webp">
# 主板开启虚拟化
进入群晖系统–>控制面板–>网络–>选中“局域网”–>点击“管理”,在下拉菜单中选择“Open vSwitch 设置”
<img src="https://img.dreamlyn.cn:8443/i/2024/03/01/144432.webp">
在弹出界面中选中“启用”
<img src="https://img.dreamlyn.cn:8443/i/2024/03/01/144517.webp">
# 下载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文件,之后点击下一步。
<img src="https://img.dreamlyn.cn:8443/i/2024/02/22/211106.webp">
勾选存储空间并点击应用
<img src="https://img.dreamlyn.cn:8443/i/2024/02/22/211251.webp">
状态处显示良好,表明此次上传没有问题。
<img src="https://img.dreamlyn.cn:8443/i/2024/02/22/211532.webp">
上传完映像之后,我们点击网络–>新增,为网络命名为ETH1,勾选连接网线的接口(一般局域网1就是),随后应用。
<img src="https://img.dreamlyn.cn:8443/i/2024/02/22/211615.webp">
之后我们点击虚拟机,导入刚才的镜像。
<img src="https://img.dreamlyn.cn:8443/i/2024/02/22/211706.webp">
从硬盘映像导入,选择刚才上传的映像,然后点击下一步
<img src="https://img.dreamlyn.cn:8443/i/2024/02/22/211748.webp">
选择存储空间后继续下一步
<img src="https://img.dreamlyn.cn:8443/i/2024/02/22/211824.webp">
为虚拟机命名,选择CPU和内存容量,继续下一步。
<img src="https://img.dreamlyn.cn:8443/i/2024/02/22/211921.webp">
设置虚拟盘大小,其他默认,下一步。
<img src="https://img.dreamlyn.cn:8443/i/2024/02/22/212006.webp">
网络选择ETH1并设置,在里面的型号中选择`e1000`。(不选也可以使用,但网络为半双工的,改为e1000后,网络变成全双工)。
<img src="https://img.dreamlyn.cn:8443/i/2024/02/22/212057.webp">
自动启动选择是,其他默认,下一步
<img src="https://img.dreamlyn.cn:8443/i/2024/02/22/212134.webp">
设置管理员权限,只勾选admin,下一步
<img src="https://img.dreamlyn.cn:8443/i/2024/02/22/212236.webp">
勾选创建后启动虚拟机,随后应用。
<img src="https://img.dreamlyn.cn:8443/i/2024/02/22/212347.webp">
至此,虚拟机已经安装成功了。但是openwrt的默认ip地址是192.168.1.1,而我家里的路由器IP地址是192.168.31.1,需要将openwrt的IP地址设置成192.168.31.X,在此我设置成192.168.31.2(需要和主路由一个网段)。
如下图,选择旁路由后点击连接,在弹出的标签页进入openwrt的终端。
<img src="https://img.dreamlyn.cn:8443/i/2024/02/22/212432.webp">
# 设置网络
输入命令修改ip地址
```
vi etc/config/network
```
VI编辑器简单实用方式:按 i 键进行修改,修改完后按Esc退出,接着输入命令 :wq ,保存刚才的修改
<img src="https://img.dreamlyn.cn:8443/i/2024/02/22/212539.webp">
之后输入service network restart命令重启网络就可以了。
待重启之后,在浏览器输入刚才修改过的IP,就可以进入Openwrt的登陆界面了,OpenWRT的默认账号密码是root:password,进入系统后可以修改密码。
<img src="https://img.dreamlyn.cn:8443/i/2024/02/22/212805.webp">
# 配置OpenWRT
安装完成后,要想正常使用还需要再配置一下,找到左侧菜单 网络–>接口,选择LAN的接口进行修改
<img src="https://img.dreamlyn.cn:8443/i/2024/02/22/212917.webp">
这里主要设置IPv4地址、IPv4网关和自定义DNS服务器。
<img src="https://img.dreamlyn.cn:8443/i/2024/02/22/212953.webp">
同时在下方勾选忽略此接口,来禁用OpenWRT的DHCP功能,保存并应用就可以了。
<img src="https://img.dreamlyn.cn:8443/i/2024/02/22/213025.webp">
# OpenWRT常用功能
## 拨号上网
默认情况下,运营商提供的光猫是不支持DDNS和端口转发等功能的,那么我们就需要使用OpenWRT来进行拨号上网,并在里面进行DDNS和端口转发等功能。
首先来看下网络组成情况。
<img src="https://img.dreamlyn.cn:8443/i/2024/02/22/213121.webp">
我们需要将光猫改成桥接模式(可以找维修师傅远程处理即可),然后在OpenWRT里进行如下操作:
点击网络–>接口–>LAN–>修改–>物理设置,取消桥接接口选项。
<img src="https://img.dreamlyn.cn:8443/i/2024/02/22/213151.webp">
在网络–>接口中添加新接口,如图所示进行设置,点击提交。
<img src="https://img.dreamlyn.cn:8443/i/2024/02/22/213304.webp">
修改WAN口,在基础设置中输入拨号账号和密码即可。
<img src="https://img.dreamlyn.cn:8443/i/2024/02/22/213741.webp">
PC上网时,将默认网关设置成旁路由的IP地址(我这里是192.168.31.2)。
## 端口转发
点击网络–>防火墙–>端口转发来进行端口转发的设置。
<img src="https://img.dreamlyn.cn:8443/i/2024/02/22/213816.webp">
## 设置DDNS
首先我们要了解DDNS的原理。
如图为PC正常上网的流程,PC根据域名到DNS服务器请求IP地址,DNS服务器根据A 记录查找IP地址并返回给PC,PC使用IP地址请求web服务。(当然这些流程对用户来说都是透明的)
了解了这个流程我们再来说DDNS,DDNS其实就是动态的调整DNS服务器中的A记录,实现的前提就是域名服务商提供API来修改域名的A记录,我们在需要使用DDNS的地方通过脚本来获取可能动态会变动的公网IP,然后通过API告诉域名服务商修改A记录。
<img src="https://img.dreamlyn.cn:8443/i/2024/02/22/214355.webp">
我以DNSPOD为例进行演示,在DNSPOD的控制台找到域名解析,并添加一条A记录,这里我设置主机记录为home,IP地址先随便填写.
<img src="https://img.dreamlyn.cn:8443/i/2024/02/22/214525.webp">
在DNSPOD的控制台点击我的账号并选择我的密钥,查看对应的SecretId和SecretKey .
<img src="https://img.dreamlyn.cn:8443/i/2024/02/22/214601.webp">
点击服务–>动态DDNS–>端口转发来进行端口转发的设置,在下方输入框输入DNSPOD并点击添加.
<img src="https://img.dreamlyn.cn:8443/i/2024/02/22/214645.webp">
勾选启用,查询主机名填写刚才添加记录的域名,DDNS服务提供商,选择dnspod.cn,域名填写刚才添加记录的域名,用户名和密码对应SecretId和SecretKey,然后点击保存并应用.
<img src="https://img.dreamlyn.cn:8443/i/2024/02/22/214726.webp">
当下图红线处出现域名和IP对应关系时,即为配置成功.
<img src="https://img.dreamlyn.cn:8443/i/2024/02/22/214756.webp">
## 其他功能
OpenWRT是搭载在Linux系统之上的,里面的服务还有很多,比如frp内网穿透、DNS过滤器、广告过滤大师、Docker等,在此就不再一一列举了,感兴趣的可以在评论区留言共同交流.