原创硬货,PVE中用CT & LXC 方式创建 immortalwrt或者openwrt 虚拟机,并且部署MihomoTproxy科学上网插件,的无错排坑指南

以下针对X86 64位硬件说明,其它ARM架构类似

immortalwrt 路由器CT模板地址

https://downloads.immortalwrt.org/releases/23.05.4/targets/x86/64/immortalwrt-23.05.4-x86-64-rootfs.tar.gz

0oidrnlv.1ft.png

模板下载下来后,上传到CT里面,然后在宿主机上执行CT虚拟机创建命令

pct create 104 local:vztmpl/immortalwrt-23.05.4-x86-64-rootfs.tar.gz --rootfs local:2 --ostype unmanaged --hostname immortalwrt2-lxc --arch amd64 --cores 2 --memory 512 --swap 0 -net0 bridge=vmbr0,name=eth0

里面的数字104表这个虚拟机的ID号,与已经有的不能重复

aek4dzfk.c25.png

现在已经创建好了,但是先别急,需要设置一下 功能,可以参考我这一篇文章,如果你不设置这个会导致 路由器出现 ping 域名不通,ping ip能通的情况.

解决PVE下使用LXC 或者叫 CT安装 Openwrt 或者 iStoreOS 或者 immortalwrt时出现路由本身无法ping通域名,但是ip却能ping通的问题

0yzv4455.wd0.png

接着为LXC机器打开TUN支持

编辑这个文件,在里面添加

vi /etc/pve/lxc/104.conf

lxc.cgroup2.devices.allow: c 10:200 rwm
lxc.mount.entry: /dev/net/tun dev/net/tun none bind,create=file

加好后像这样

arch: amd64
cores: 2
features: fuse=1,mount=nfs;cifs,nesting=1
hostname: immortalwrt-lxc
memory: 512
net0: name=eth0,bridge=vmbr0,hwaddr=BC:24:11:9E:CC:E2,type=veth
onboot: 1
ostype: unmanaged
rootfs: local:102/vm-102-disk-0.raw,size=2G
swap: 0
lxc.cgroup2.devices.allow: c 10:200 rwm
lxc.mount.entry: /dev/net/tun dev/net/tun none bind,create=file

接着打开虚拟机,运行 ifconfig 看看IP,需要改一下才能上网,我路由是插交换机上的,我这里需要把IP改成 192.168.2.22 ,我主路由IP是 192.168.2.10

elyyzc1z.ocr.png

修改IP 执行 对我来说只改IP就行,网关进WEB UI里面设置,

vi /etc/config/network

sndmfnn4.lvm.png

改好后,重启网络

service network restart

输入 http://192.168.2.22 现在通过 浏览器登录进来了

u3uy0duk.hdg.png

安装漂亮点的主题,进入 系统->软件包,先更新列表 ,然后在里面安装

输入argon

zzhnahmu.q2e.png

效果大概这样

vlc0qvar.jmu.png

接着去修改网关 和 DNS服务器

ksuzjhd4.ew2.png

aqsdy5yb.ala.png

ping 一下 ,现在能上网了

xev2xq0r.eqh.png

设置好后,但是你还是别急,安装MihomoTproxy之前你需要先安装curl,系统本身并不自带curl,不信你试试 5xwfs10i.2wu.png

好吧,当你输入opkg update 正准备安装时,你又会碰到

wget: SSL support not available, please install one of the libustream-.*[ssl|tls] packages

g0ithsrg.dyd.png

这时你又要懵逼了,SSL又出问题了,要哭了吗~,经过一顿搜索,终于找到一个可行方案.

在 immortalwrt-21 系列版本的时候是没有这个问题的,但是为了装MihomoTproxy是不能用21系列版本的

这里有一个21系列的镜像文件,如果你有需要可以自己去下载

https://downloads.immortalwrt.org/releases/21.02.7/targets/x86/64/immortalwrt-21.02.7-x86-64-rootfs.tar.gz

下面接着折腾吧,在这里找到了,找着说明 ,把那两东西注释掉

LXC安装的ImmortalWRT(immortalwrt-23.05.2-armsr-armv8-rootfs.tar.gz)注释掉/etc/ssl/openssl.cnf两行(78-79行),opkg update就不会报错了

[engines_sect]
# .include /var/etc/ssl/engines.cnf

# .include /etc/ssl/modules.cnf.d
然后如果安装wget-ssl,再把这个注释去掉也不会报错了

https://github.com/immortalwrt/immortalwrt/issues/1124
nzljhtor.pyv.png

现在输入 opkg update,终于能成功更新了

gtiyekrs.iuw.png

接着输入 opkg install curl ,成功安装

weagokh0.fw3.png

然后我们要去把 网络->DHCP/DNS->DNS重定向 关掉,必须关,要不然可能会和 MihomoTproxy科学上网插件有冲突

dy0okt4p.ijy.png

接着我们打开 MihomoTproxy科学上网插件官网

https://github.com/morytyann/OpenWrt-mihomo

把这里的代码复制到里面去执行(以官网代码为准,我这条在你看到的时候可能不是最新的)

curl -s -L https://mirror.ghproxy.com/https://github.com/morytyann/OpenWrt-mihomo/raw/refs/heads/main/install.sh | ash

4ed1pz2d.lrb.png

经过安装程序一顿疯狂的操作终于是装上了科学插件,探索未来,你就是下一届的诺贝尔得主

ieu11kfl.wi0.png

WEB界面一定要退出去,重新登录,然后你就能愉快的研究九九乘法表了

bh25mlji.3og.png

简单使用方法看这里

MihomoTproxy科学上网插件基本使用设置

留下评论

您的电子邮箱地址不会被公开。 必填项已用 * 标注

− 3 = 2