锐角云主机折腾openwrt单臂软路由实现多拨叠加负载

锐角云既然享有矿渣之王美称,说明配置方面肯定是很不错,我们来一起看看!

CPU赛扬 N3450
内存8G DDR3 1600
硬盘1闪迪DF4064 64GB EMMC
硬盘2128G SSD
网卡RTL8111G
无线网卡Intel 3165D2W

这配置只做物理软路由有点太浪费了,并且因为它只有一个网口,我手头上没有物理交换机,所以我选用安装PVE的方式虚拟KVM小鸡安装openwrt ,再利用PVE的虚拟交换机来做多网口拨号

网络架构

在安装网络环境之前,我们有必要对内网布局来个简单的梳理

我的宗旨是尽量不添加设备,利用手头的AX88U当作AP,省钱实用,在此感谢老白的拓扑图梳理

那么我的AX88U 默认是192.168.50.1,我们选择不动 根据这个段来组建内网

1
2
3
4
AX88U
ip地址:192.168.50.1
子网掩码:255.255.255.0
默认网关:192.168.50.2
1
2
3
4
5
openwrt
ip地址:192.168.50.2
子网掩码:255.255.255.0
默认网关:
DNS地址:192.168.50.2
1
2
3
4
5
Proxmox VE
ip地址:192.168.50.3
子网掩码:255.255.255.0
默认网关:192.168.50.2
DNS地址:192.168.50.2

安装Proxmox VE (安装到EMMC 硬盘上)

  1. 从官网下载最新版本镜像 https://proxmox.com/en/downloads/category/iso-images-pve

  2. 用写盘工具将iso镜像写入U盘

  3. 将锐角云连接显示器插入U盘启动,按F7进入启动项,选择U盘启动

  4. 进入安装初始界面后 先选 Advanced Options, 然后点击 Install Proxmox VE (Debug mode), 在第一次提示你可以输入命令的时候输入 Ctrl-D

  1. 继续安装过程, 在第二次提示你可以输入命令的时候输入命令 vi /usr/bin/proxinstall 编辑文件

  1. 输入 /unable to get device 回车后 定位到对应位置, 输入i进入编辑模式 , 找到如下代码: (这里对VIM编辑器不熟悉的建议去学一下VIM的基本操作. VIM默认有两种模式 打开文件后默认是普通模式 可以控制光标移动,搜索但不能编辑, 输入i 进入编辑模式 可以编辑文件但无法保存, 按ESC键返回到普通模式. 普通模式输入/是搜索, 输入:wq是保存退出)
1
2
3
4
5
6
7
   } elsif ($dev =~ m|^/dev/[^/]+/hd[a-z]$|) {
        return "${dev}$partnum";
    } elsif ($dev =~ m|^/dev/nvme\d+n\d+$|) {
        return "${dev}p$partnum";
    } else {
        die "unable to get device for partition $partnum on device $dev\n";
    }

修改为下面代码 (增加 elsif ($dev =~ m|^/dev/mmcblk\d+$|) 部分代码 )

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
   } elsif ($dev =~ m|^/dev/[^/]+/hd[a-z]$|) {
        return "${dev}$partnum";
    } elsif ($dev =~ m|^/dev/nvme\d+n\d+$|) {
        return "${dev}p$partnum";

    } elsif ($dev =~ m|^/dev/mmcblk\d+$|) {
        return "${dev}p$partnum";

    } else {
        die "unable to get device for partition $partnum on device $dev\n";
    }

具体操作如下: 在普通模式移动到/dev/nvme那行输入2yy 就是复制2行的意思, 然后移动光标到else行 键入p 就是粘贴, 然后输入i 进入编辑模式 编辑成/dev/mmcblk\d+$, 然后按ESC返回到普通模式, 输入:wq, 保存退出后. 然后输入 Ctrl-D ,继续安装过程. 此时应该进入了正常的安装程序,

  1. 硬盘选择的时候选择 /dev/mmcblk1 (没有 bootX 后缀). 点击下图 options (建议关闭 swap, swapsize设置为0, 延长EMMC寿命. maxvz 也推荐设置为0, 毕竟只有64G, 不需要分太多卷). 最后安装完成后输入 Ctrl-D ,重启系统. 完成后访问 http://IP:8006 进入后台

  1. 更新软件源, 删除逻辑卷 /pve/data 合并磁盘等操作 (安装完/dev/pve/root 只有14G)
1
wget --no-check-certificate -P /root https://raw.githubusercontent.com/jinwyp/one_click_script/master/dsm/pve.sh && chmod 700 /root/pve.sh && /root/pve.sh

设置PVE网卡ip指向openwrt

在之前我们将openwrt作为DHCP主路由(网关)使用,下级所有设备必须指向openwrt 不然不通外网

  1. 来到PVE—-网络 将网关设为openwrt的ip地址

  1. 修改pve的DNS服务器为openwrt的IP地址

在PVE下安装openwrt

  1. 从网上下载你喜欢的openwrt固件,或者自己编译,或者用大佬这个在线编译 https://supes.top

  2. openwrt X86 镜像有2种 uefi 引导和 传统的legacy引导,锐角云物理机是UEFI启动,如果物理安装必须UEFI,如果用legacy刷入物理机 立马变砖。而在PVE下就不需要考虑这种问题,随便选,通吃uefi与legacy.

  3. 创建虚拟机. 点击右上角 “创建虚拟机” 按钮 输入名称 例如OpenWRTX86. 点击勾选 下面的高级选项, 勾选开机自启动. 点击 下一步. 选择不使用任何介质, 稍后自己制作硬盘

  1. CPU菜单 可以选择2核, 也可以根据情况添加更多的核. 锐角云是4核8G内存. 如果需要在openwrt里面安装docker 可以增加CPU核数或内容, 但不建议, 如果要使用docker建议在创建另外的linux虚拟机. 类别选host. 点击勾选 下面的高级选项, 开启 aes. 点击下一步 内存设置为1024 除非要在openwrt里面跑docker, 否则1024(1G) 已经够用了. 点击下一步进入网络, 一切都默认后继续点击直到完成.

  1. 把之前下载的openwrt镜像 解压出来并改名为 openwrt.img (原文件名太长了,改名后方便以后打字输入). 点击 PVE 节点 -> local (PVE) 储存盘 -> ISO镜像 点击上传按钮 在弹出选择文件框 选择 openwrt.img文件上传. 上传成功后会弹出信息提示 记住上传的文件路径 例如 target file: /var/lib/vz/template/iso/openwrt.img

  1. 把镜像转成虚拟磁盘并导入到虚拟机. 选择“pve”节点 > shell > 输入以下命令并回车
1
qm importdisk 100 /var/lib/vz/template/iso/openwrt.img local

这里注意 100 是相应的虚拟机的ID 需要修改成对应的ID. local 是PVE储存盘, 也有可能是local-lvm

  1. 导入成功后在 Openwrt 虚拟机的“硬件”选项卡就能看到一个“未使用的磁盘0”,选中它 双击弹出配置窗口,总线/设备类型选“sata”,最后点击添加。并在选项卡中选择引导双击“引导顺序”,第一引导项拖拽选‘sata0’ 勾选 已启用 点击 确定

  1. 启动虚拟机,修改LAN口ip地址为内网相应地址
1
vi /etc/config/network

  1. 按i 进入编辑模式,修改完成后按esc再:wq 回车 再reboot 重启

  2. 重启后就可以在电脑浏览器上用IP打开openwrt管理页面

配置硬路由(AX88u)

硬路由之前一直在普通模式使用,现在可以选择更改为AP模式,或者停留在普通模式,我建议在普通模式关闭DHCP 就这样使用,因为在AP模式下 硬路由不能开启全锥形NAT

  1. 进入硬路由的后台,找到内部网络与外部网络 将ip设置为同一个网段,并关闭DHCP

配置拨号与多播

本次多拨我们不用插件,那个插件我试过在单网卡软路由(单臂软路由) 下有冲突,所以手操最没有BUG

  1. 在openwrt面板中我们找到 网络—-接口—-编辑LAN口 取消桥接,设备口选择我们的eth0

  1. 如果你是刷的esir的高大全版 这里删除你用不到的乱七八糟接口,只留LAN口与WAN口

  2. 来到PVE 选择openwrt虚拟机—-硬件—-添加网络设备我这里拨4次,那么就添加4个,加上之前一个等于5个,这就是虚拟化的优势,可以无限虚拟网口,当然最终都通过唯一的物理网口传输,那就要考验nat的能力了,那是后话了

  1. 然后回到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也够呛,反正我没开,如果开了全锥形,软件流量分载,这些网速变慢就全关掉

然后测速看看 叠加情况

感谢:

0%