vsamlee 发表于 2022-4-2 19:08

最简单可行的pve LXC下搭建openwrt软路由,完全可以做主路由

本帖最后由 vsamlee 于 2023-7-12 17:04 编辑

4月5日摸索后所得


1、感觉pve的lxc对openwrt的支持会越来越完善,在lxc中运行openwrt后,该容器的概要备注栏会出现如下提示:
openwrt.common.conf是PVE自带的openwrt配置文件示例,内含一些基本设置 /dev/ppp pppoe拨号等功能需要用到 钩子脚本,用于添加 /dev/ppp等设备 将主机的网卡enp4s0分配给容器使用,根据自己的实际情况更改
同时观看了其自带的CT模板,基本上基于linux流行的开源软件都囊括了,openwrt我觉得应该很快会在官方的“CT模板”中出现,或者说会越来越完善。
2、就发帖提出群晖的lxc模板制作我觉得会很难出现,因为其结构变动太大了,且docker中也没有发现有群晖。

重点参考:
ProxmoxVE 7.0 LXC下搭建openwrt软路由_kangzeru的博客-CSDN博客_lxc安装openwrt
特点:
      1、安全,因为无需网卡直通,所以把pve弄塌的几率很小。
      2、按理应该不限制pve和openwrt的版本。      
      3、工具简单,只需要winscp即可,命令也很少

前言
1、硬件环境
      HP GEN8
      CPU更换为E3-1265L V2
      内存16G
      新添加X540-T2网卡
      
2、软件环境
      pve版本号:7.1-12
      openwrt用的l大截止2022年3月30日源码,
      OpenWrt R22.3.13
      内核:5.15.32
      因为主板上的两个网口分组一直不成功,所以没有开通直通功能

3、实现效果
      A、拨号正常,能获取IPV4、IPV6地址
      B、IPV4、IPV6动态域名正常
      C、AdGuard Home使用正常
      其他没测,我也不需要。但从成品效果来说,应该和实体机安装、虚拟机安装代入效果一样。

因为我的绝大多数功能都是使用黑裙实现的,所以我用的固件是用L大源码自己编译的,我只编译进去了“TTYD终端、AdGuard Home、socat、上网时间控制、动态DNS、网络唤醒(应该用不着)、KMS服务器、UPNP、IPV6“

一、模板取得

要点、必须是***-rootfs.img、***-rootfs.img.gz或者***-rootfs.tar.gz的文件
      ***-rootfs.img、***-rootfs.img.gz需要解包后打包
      ***-rootfs.tar.gz可以直接使用

1、***-rootfs.tar.gz取的
      A、可以到官网或者别人直接索取
      官网地址:https://downloads.openwrt.org/re ... 86-64-rootfs.tar.gz

      B、自己编译
      编译时选中Target Images --->*.tar.gz

2、用下载的***-rootfs.img、***-rootfs.img.gz文件解包、打包
      A、将***-rootfs.img、***-rootfs.img.gz文件用ssh登陆并上传到PVE根目录/root目录下

      B、ssh里解压(***-rootfs.img无需此步骤)
      gzip -d ***-rootfs.img.gz
      
      C、安装解包软件
      apt install squashfs-tools

      D、对得到的img进行解包
      unsquashfs ***-rootfs.img

      E、进入目录,重新打包为pve的CT模板
      cd squashfs-root
      tar zcf ../***-rootfs.tar.gz ./*

      F、上传或复制到PVE的CT模板目录,/var/lib/vz/template/cache。


二、新建LXC容器
1、通过SSH或者是网页端打开PVE终端,执行以下命令创建新容器
**** Hidden Message *****


三、修改容器设置

1、修改容器配置文件


**** Hidden Message *****

四、pve防火墙设置

**** Hidden Message *****

五、启动容器(踩了最多的坑)

**** Hidden Message *****
同时强烈呼吁大神研究做一个群晖的lxc模板出来。pve安装黑裙cpu必须选“KVM64”,效能损失比较大啊。我的群晖因为要异地文件同步、异地播放视频、迅雷下载等,使用频率很高,以前不觉得,现在感觉就是根刺。




20230619 修改方法(以下是我根据unraid上运行成功修改的配置文件,也解决了软启动的问题,没有在pve上进行实测),只修改第三的内容,应该不需要创建钩子脚本那么麻烦了

三、修改容器配置

1、把默认的网络配置删除 类如:net0: name=eth0,bridge=vmbr0,hwaddr=7E:83:14:34:F0:A6,type=veth
2、修改以下内容后添加到后面

# Distribution configuration
lxc.include: /usr/share/lxc/config/openwrt.common.conf

lxc.mount.auto: proc:mixed sys:ro cgroup:mixed
lxc.mount.entry: /dev/net/tun dev/net/tun none rw,bind,create=file 0 0
lxc.mount.entry: /dev/ppp dev/ppp none rw,bind,optional,create=file 0 0

lxc.cgroup.devices.allow: a
lxc.cgroup2.devices.allow: a

# Network configuration(我有四个口,两个虚拟口,两个直通口)
lxc.net.0.flags: up      #别动
lxc.net.0.type: veth      #虚拟口“veth”,直通口“phys”
lxc.net.0.link: br0      #该处为虚拟口的名称,直通的填写主机显示网口的名称(这是我的主机管理网口,一定不要直通,但是帅小伙都会搞直通,然后帅帅的问)。
lxc.net.0.name: eth0                #虚拟机中显示网口的名称。
lxc.net.0.hwaddr: aa:aa:aa:aa:aa:a1      #虚拟mac地址,不填写会自动生成。

lxc.net.1.flags: up
lxc.net.1.type: veth
lxc.net.1.link: br1
lxc.net.1.name: eth1
lxc.net.1.hwaddr: aa:aa:aa:aa:aa:a2
#以上为两个虚拟网口的实例,以下为两个直通网口实例,直通网口不能设置mac
lxc.net.2.flags: up
lxc.net.2.type: phys
lxc.net.2.link: eth2
lxc.net.2.name: eth2

lxc.net.3.flags: up
lxc.net.3.type: phys
lxc.net.3.link: eth3
lxc.net.3.name: eth3


因为没有pve环境,请成功了的反馈一下,谢谢!
network如何配置看我新帖
全网首发,unraid LXC安装openWRT,弱性能主机福音-OPENWRT专版-恩山无线论坛 - Powered by Discuz! (right.com.cn)









yang1992 发表于 2022-4-2 19:51

我用的软路由cpu1260L,前段时间也是安装LXC版op,PVE是6.4.4的,不知道怎么回事会出现各种奇怪的问题,比如宽带下载速度40M/S,过个2到3天就变20M/S了,更奇怪的是帕斯沃的负载均衡启动不了,自动拨号到时没发现问题,有时候明明软路由联网都正常的,我用向日葵远程连接电脑就是连接不了,测试别家的都可以,最后还是放弃了LXC,安装OP时候选HOST算了懒得搞了CPU占用高点也无所谓了:L:Q

vsamlee 发表于 2022-4-2 20:04

yang1992 发表于 2022-4-2 19:51
我用的软路由cpu1260L,前段时间也是安装LXC版op,PVE是6.4.4的,不知道怎么回事会出现各种奇怪的问题,比如 ...

我刚做好没有测试,刚才测试了一下,群晖迅雷下载最高可以到56M/S,我是300m带宽

yfydz 发表于 2022-4-2 20:40

思考一下,自己折腾了一阵子没搞明白

yang1992 发表于 2022-4-2 20:42

vsamlee 发表于 2022-4-2 20:04
我刚做好没有测试,刚才测试了一下,群晖迅雷下载最高可以到56M/S,我是300m带宽

你可以过个几天或者个把星期再试下也有可能是我这LXC有问题,还有你试下你的OP里面帕斯沃能不能开启负载均衡?开启成功后可以进入节点测速界面   我判断下是不是我用的OP有问题:L

呵呵123 发表于 2022-4-2 20:42

正需要,思考一下,多谢

飘蓄 发表于 2022-4-2 21:04

E、进入目录,重新打包为pve的CT模板
      cd squashfs-root
      tar zcf ../***-rootfs.tar.gz ./*

ai798998203 发表于 2022-4-2 21:27


思考一下

yuan960821 发表于 2022-4-3 00:44

正需要,思考一下,多谢

aook369 发表于 2022-4-3 09:41

感谢分享

nunien 发表于 2022-4-3 09:58

感谢分享

wenjingwei 发表于 2022-4-3 10:11

感谢分享,思考思考

ugvlc000 发表于 2022-4-3 10:34

或复制到PVE的CT模板目录,

Burylove 发表于 2022-4-3 10:36

感谢分享, 思考一下

nd4spd 发表于 2022-4-3 10:52

感谢分享,思考思考
页: [1] 2 3 4 5 6 7 8 9 10
查看完整版本: 最简单可行的pve LXC下搭建openwrt软路由,完全可以做主路由