锐角云主机折腾openwrt单臂软路由实现多拨叠加负载
锐角云既然享有矿渣之王美称,说明配置方面肯定是很不错,我们来一起看看!
CPU | 赛扬 N3450 |
内存 | 8G DDR3 1600 |
硬盘1 | 闪迪DF4064 64GB EMMC |
硬盘2 | 128G SSD |
网卡 | RTL8111G |
无线网卡 | Intel 3165D2W |
这配置只做物理软路由有点太浪费了,并且因为它只有一个网口,我手头上没有物理交换机,所以我选用安装PVE的方式虚拟KVM小鸡安装openwrt ,再利用PVE的虚拟交换机来做多网口拨号
网络架构
在安装网络环境之前,我们有必要对内网布局来个简单的梳理
我的宗旨是尽量不添加设备,利用手头的AX88U当作AP,省钱实用,在此感谢老白的拓扑图梳理
那么我的AX88U 默认是192.168.50.1,我们选择不动 根据这个段来组建内网
|
|
|
|
|
|
安装Proxmox VE (安装到EMMC 硬盘上)
-
从官网下载最新版本镜像 https://proxmox.com/en/downloads/category/iso-images-pve
-
用写盘工具将iso镜像写入U盘
-
将锐角云连接显示器插入U盘启动,按F7进入启动项,选择U盘启动
-
进入安装初始界面后 先选 Advanced Options, 然后点击 Install Proxmox VE (Debug mode), 在第一次提示你可以输入命令的时候输入 Ctrl-D
- 继续安装过程, 在第二次提示你可以输入命令的时候输入命令 vi /usr/bin/proxinstall 编辑文件
- 输入 /unable to get device 回车后 定位到对应位置, 输入i进入编辑模式 , 找到如下代码: (这里对VIM编辑器不熟悉的建议去学一下VIM的基本操作. VIM默认有两种模式 打开文件后默认是普通模式 可以控制光标移动,搜索但不能编辑, 输入i 进入编辑模式 可以编辑文件但无法保存, 按ESC键返回到普通模式. 普通模式输入/是搜索, 输入:wq是保存退出)
|
|
修改为下面代码 (增加 elsif ($dev =~ m|^/dev/mmcblk\d+$|) 部分代码 )
|
|
具体操作如下: 在普通模式移动到/dev/nvme那行输入2yy 就是复制2行的意思, 然后移动光标到else行 键入p 就是粘贴, 然后输入i 进入编辑模式 编辑成/dev/mmcblk\d+$, 然后按ESC返回到普通模式, 输入:wq, 保存退出后. 然后输入 Ctrl-D ,继续安装过程. 此时应该进入了正常的安装程序,
- 硬盘选择的时候选择 /dev/mmcblk1 (没有 bootX 后缀). 点击下图 options (建议关闭 swap, swapsize设置为0, 延长EMMC寿命. maxvz 也推荐设置为0, 毕竟只有64G, 不需要分太多卷). 最后安装完成后输入 Ctrl-D ,重启系统. 完成后访问 http://IP:8006 进入后台
- 更新软件源, 删除逻辑卷 /pve/data 合并磁盘等操作 (安装完/dev/pve/root 只有14G)
|
|
设置PVE网卡ip指向openwrt
在之前我们将openwrt作为DHCP主路由(网关)使用,下级所有设备必须指向openwrt 不然不通外网
- 来到PVE—-网络 将网关设为openwrt的ip地址
- 修改pve的DNS服务器为openwrt的IP地址
在PVE下安装openwrt
-
从网上下载你喜欢的openwrt固件,或者自己编译,或者用大佬这个在线编译 https://supes.top
-
openwrt X86 镜像有2种 uefi 引导和 传统的legacy引导,锐角云物理机是UEFI启动,如果物理安装必须UEFI,如果用legacy刷入物理机 立马变砖。而在PVE下就不需要考虑这种问题,随便选,通吃uefi与legacy.
-
创建虚拟机. 点击右上角 “创建虚拟机” 按钮 输入名称 例如OpenWRTX86. 点击勾选 下面的高级选项, 勾选开机自启动. 点击 下一步. 选择不使用任何介质, 稍后自己制作硬盘
- CPU菜单 可以选择2核, 也可以根据情况添加更多的核. 锐角云是4核8G内存. 如果需要在openwrt里面安装docker 可以增加CPU核数或内容, 但不建议, 如果要使用docker建议在创建另外的linux虚拟机. 类别选host. 点击勾选 下面的高级选项, 开启 aes. 点击下一步 内存设置为1024 除非要在openwrt里面跑docker, 否则1024(1G) 已经够用了. 点击下一步进入网络, 一切都默认后继续点击直到完成.
- 把之前下载的openwrt镜像 解压出来并改名为 openwrt.img (原文件名太长了,改名后方便以后打字输入). 点击 PVE 节点 -> local (PVE) 储存盘 -> ISO镜像 点击上传按钮 在弹出选择文件框 选择 openwrt.img文件上传. 上传成功后会弹出信息提示 记住上传的文件路径 例如 target file: /var/lib/vz/template/iso/openwrt.img
- 把镜像转成虚拟磁盘并导入到虚拟机. 选择“pve”节点 > shell > 输入以下命令并回车
|
|
这里注意 100 是相应的虚拟机的ID 需要修改成对应的ID. local 是PVE储存盘, 也有可能是local-lvm
- 导入成功后在 Openwrt 虚拟机的“硬件”选项卡就能看到一个“未使用的磁盘0”,选中它 双击弹出配置窗口,总线/设备类型选“sata”,最后点击添加。并在选项卡中选择引导双击“引导顺序”,第一引导项拖拽选‘sata0’ 勾选 已启用 点击 确定
- 启动虚拟机,修改LAN口ip地址为内网相应地址
|
|
-
按i 进入编辑模式,修改完成后按esc再:wq 回车 再reboot 重启
-
重启后就可以在电脑浏览器上用IP打开openwrt管理页面
配置硬路由(AX88u)
硬路由之前一直在普通模式使用,现在可以选择更改为AP模式,或者停留在普通模式,我建议在普通模式关闭DHCP 就这样使用,因为在AP模式下 硬路由不能开启全锥形NAT
- 进入硬路由的后台,找到内部网络与外部网络 将ip设置为同一个网段,并关闭DHCP
配置拨号与多播
本次多拨我们不用插件,那个插件我试过在单网卡软路由(单臂软路由) 下有冲突,所以手操最没有BUG
- 在openwrt面板中我们找到 网络—-接口—-编辑LAN口 取消桥接,设备口选择我们的eth0
-
如果你是刷的esir的高大全版 这里删除你用不到的乱七八糟接口,只留LAN口与WAN口
-
来到PVE 选择openwrt虚拟机—-硬件—-添加网络设备我这里拨4次,那么就添加4个,加上之前一个等于5个,这就是虚拟化的优势,可以无限虚拟网口,当然最终都通过唯一的物理网口传输,那就要考验nat的能力了,那是后话了
- 然后回到openwrt 网络—接口—添加新接口 你在pve建立4个就添加4个wan口,协议为pppoe,原本的eth0给LAN口在用,那么下面建立的WAN口就是wan=eth1 wan1=eth2 wan2=eth3 …………
建立好之后,保存并应用,它会自己拨号你不用管,现在宽带拨上去还没叠加,需要做负载均衡来叠加带宽
博主的宽带是300M电信,可以播到600M,这个值在日常使用你感觉不到,日常看视频刷网页也就100-200M就够了,那么多拨也就在下载时候能体现出来峰值,可以用迅雷下载测试或speedtest
负载均衡
来到网络—-负载均衡 依照规则 建立你那几个wan口
修改完成后保存并应用,然后到状态—-负载均衡 可以看到当前负载情况,和掉线重连情况
然后来到网络—-防火墙 我们可以看到 有个全锥形NAT功能,这个如果网络卡要关掉,IP动态伪装要开,如果你的那边还有MSS钳制,也需要开启来(MSS钳制是用来自动调节适配运营商MTU) bbr那个你试着看,家宽的上传就那么点,再BBR也够呛,反正我没开,如果开了全锥形,软件流量分载,这些网速变慢就全关掉
然后测速看看 叠加情况
感谢:
-
https://github.com/jinwyp/one_click_script/tree/master/acuteangle#pveemmc
-
https://www.right.com.cn/forum/thread-4017145-1-1.html?mobile=2