找回密码
 register

QQ登录

只需一步,快速开始

[*网络运维*] Proxmox VE (PVE 8) 下搭建OpenWrt系统

[复制链接]

[*网络运维*] Proxmox VE (PVE 8) 下搭建OpenWrt系统

[复制链接]
Waylee

主题

0

回帖

1万

积分

仙帝

积分
10124
Waylee 2024-9-10 11:29 | 显示全部楼层 |阅读模式

马上注册,查看网站隐藏内容!!

您需要 登录 才可以下载或查看,没有账号?register

×
通过PVE虚拟平台搭建OpenWRT系统

OpenWRT是一款及其好用的软路由系统,很多it大拿可以通过该系统玩出各种好玩的花样,由于OpenWRT详细的部署过程以及一些初始化配置过程相对较少,因此本博客会将OpenWRT再pve虚拟平台下的安装部署过程,已经后续的磁盘扩容,主题更换,中文配置等详细的配置过程记录下来,以便小白们通过这一篇博客即可以搭建一套入门级别的好用的OpenWRT。
这里使用PVE平台,是因为PEV是一个给予Debian的开源平台,对各硬件平台的支持度相对较高,而相对应的ESXI平台则是更倾向于商业化的,而且对硬件平台的要求也相对较高,一些小众的硬件平台(例如各种工控机、迷你小主机等)可能无法安装,同时对网卡的厂商要求也较高。综合考虑,还是用PVE平台更加实际和高效。
我们最终的目的是,通过pve搭建好OpenWRT后,可以得到如下的效果,甚至通过公网的ipv6地址访问(如果有域名的话,通过域名映射后还可以通过域名进行访问)OpenWRT的各项界面效果,如下图:
1.jpg



本博客默认你已经掌握了pve的安装和基本使用方法,可以到网上找到对应的相关教程。
废话不多说,让我们开始有趣的旅途吧。
在PVE上创建OpenWRT虚拟机
下载OpenWRT镜像文件
可以到OpenWRT官网上下载对应的连接,由于该网站处在国外,下载可能会比较慢,但是即便如此,官网上依旧提供了各种国内代理地址,如下:

2.jpg


可以选择相对较为稳定的腾讯的网址(由于网址的目录比较多,为避免找不到,我已经给大家找好了对应的路径,直接点击进入即可下载(该链接默认是x86平台64位系统,可以根据自身需要到上一层目录中下载自己硬件平台对应的版本,截止本博客发布时间,OpenWRT的最新版本是23.05.2): https://mirrors.cloud.tencent.co ... 5.2/targets/x86/64/
3.jpg

下载并将其进行解压得到img文件

4.jpg


上传镜像到PVE
将img文件上传到pve,PVE控制台首页,点击local(pve)标识要上传到PVE的哪块磁盘,点击ISO镜像,点击上传按钮,选择解压得到的img文件作为上传文件,点击“上传”

5.jpg

待上传结束后,在弹出窗口中可以看到对应的文件路径,复制这个路径,该路径后续会用到

6.jpg


创建虚拟机
登录PVE的前端控制台界面,右击pve节点,创建新的虚拟机,如下图:

7.jpg

输入节点名称,点击下一步

8.jpg

选择不使用任何介质

9.jpg

系统的默认“下一步”即可

10.jpg

磁盘直接删除掉,后面会重新手动创建磁盘

11.jpg

cpu尽可能选择2核以上(无须太高,2核足够)

12.jpg

内存保持默认的2g即可

13.jpg

网络也保持默认(后续可以根据需要进行修改)

14.jpg

点击完成按钮

15.jpg


可以看到虚拟机已经创建完成,但是目前OpenWRT系统还没有安装到创建的虚拟机,下一步我们将对该虚拟机进行OpenWRT的安装。
安装OpenWRT系统
由于OpenWRT的系统官方没有提供对应的iso镜像包,通过img镜像包需要使用命令行的方式进行安装,具体操作如下(准备好前面复制好的img镜像路径):
在PVE平台点击pve节点,点击shell,如下图:

16.jpg

在命令行控制台中输入如下命令:

qm importdisk <虚拟机id> <img镜像路径> <安装到pve的哪个磁盘位置>

例如:


qm importdisk 102 /var/lib/vz/template/iso/openwrt-23.05.2-x86-64-generic-ext4-combined.img pve_servers


17.jpg

我这里的102代表id号为102的虚拟机,/var/lib/vz/template/iso/openwrt-23.05.2-x86-64-generic-ext4-combined.img表示我的img镜像上传后的路径,pve_servers表示我要安装到pve的“pve_servers”磁盘空间中(默认是“local-lvm”,由于我的“local-lvm”磁盘空间已经安装了其他东西,为避免磁盘空间不足,我另外加了一块硬盘,并将其创建成“pve_servers”)。

回车,可以看到命令执行完成,若失败的话,请检查一下镜像文件路径和安装路径是否准确(不可以直接安装在“local”,可以安装在“local-lvm”)

18.jpg

重新点击创建的虚拟机,点击硬件,发现虚拟机多出了一块硬盘,这就是刚刚的命令执行后新增的,即OpenWRT已经被写入到了该磁盘下

19.jpg

点击该磁盘,再点击编辑按钮,将总线/设备修改为“SATA”,勾选SSD仿真和丢弃,点击添加

21.jpg

点击选项,双击引导顺序,修改磁盘作为第一引导顺序(勾选该磁盘并取消勾选其他两项,将磁盘拖动到第一个位置)

22.jpg

点击“控制台”,点击Start now

23.jpg

发现已经成功引导并进入系统界面

24.jpg


接下来只需要对OpenWRT进行相关配置即可

修改OpenWRT的ip地址,使得OpenWRT可以被前端访问
待OpenWRT系统启动完成(log不再刷时表明系统启动完成),在OpenWRT的控制台界面敲入回车,可以操作对应的linux命令

25.jpg

输入如下命令,修改网卡ip地址

vi /etc/config/network

26.jpg

将ip地址修改为何pve同一网段的其他地址(注意要避免与其他及其ip地址冲突),按ESC输入“:wq”,回车即可保存,然后输入“reboot”重启OpenWRT,待重启完成后,即可在浏览器前端访问OpenWRT

27.jpg

浏览器前端输入刚刚配置好的ip地址,我这里配置的是192.168.1.202,所以我直接范文这个地址即可

28.jpg

初始密码不知道的话,可以在后台控制器上,直接输入passwd修改初始密码(第一次安装,密码为空,直接登录即可)

29.jpg

前端浏览器输入后,进入OpenWRT首页

30.jpg


至此,OpenWRT已经安装完成,但是我们的任务还没有结束,OpenWRT默认安装完成后是不可访问外网的(通过后台控制器ping baidu.com发现ping不通),因此需要手动配置一下网关和dns。

配置OpenWRT的网关和dns,使系统可以访问外网
OpenWRT首页点击“network→interfaces”,点击第一个网卡的“edit”按钮

31.jpg

修改网关

32.jpg

点击“Advanced Settings”,修改DNS服务器相关配置,填入正确的DNS服务器(默认第一个为网关,第二个为公有DNS服务器(网上可以找到很多))。

33.jpg

点击Save按钮,再点击Save & Apply按钮生效。

34.jpg

到后台控制器中输入ping baidu.com验证外网可达性

35.jpg


发现外网已经可以ping通,至此网络配置结束

修改为国内镜像源
由于OpenWRT的官方镜像为国外网址,网速非常慢,经常会出现访问超时的现象,因此需要将OpenWRT的镜像源修改为国内,测试这么多个下来,发现清华大学的镜像源是最稳定可靠的,这里给大家提供已经参考,具体如下:


在后台控制器中修改镜像源地址,将原来的镜像源地址全部注释掉,填充以上清华大学的镜像源地址

vi /etc/opkg/distfeeds.conf

36.jpg

执行更新命令

opkg update

37.jpg

至此,镜像源更新完成。


修改语言为中文
在OpenWRT首页点击“system→Software”,点击update lists更新镜像源包目录

38.jpg

39.jpg

Download and install package中输入“luci-i18n-base-zh-cn”,点击OK

40.jpg

42.jpg

43.jpg

退出重新登录系统,发现语言已经变成了中文。

44.jpg


设置主题
OpenWRT原生的主题界面可能不是很美观,可以通过安装新主题的形式,实现对界面主题的更改,具体操作步骤如下:
用相同的方式先安装luci-compatluci-lib-ipkg

45.jpg 46.jpg

通过链接 https://github.com/jerrykuku/luc ... argon_2.3.1_all.ipk123网盘备份下载地址)从github上下载对应的主题安装包,得到如下文件:


在OpenWRT前端点击Upload package...按钮,选择刚刚下载好的文件

47.jpg
48.jpg

49.jpg

安装完成后,重新退出系统,即可看到登录页面已经更新成了新的主题

50.jpg


至此,主题的修改到此结束

磁盘扩容
前面的步骤我们知道,这种方式进行安装OpenWRT时,磁盘空间会非常小,只有几十上百兆,显然不足以支持我们后续的业务需要,因此,需要对OpenWRT的磁盘进行扩容,具体步骤如下:
和前面的方法一样,安装block-mount工具

51.jpg

52.jpg

安装完成后,需要重新启动OpenWRT,重启后,重新登录OpenWRT前端,即可在左边导航栏中看到挂载点选项,这个工具我们后面会用到

53.jpg

在pve上创建并关联新的磁盘给到OpenWRT

54.jpg

选择磁盘物理路径,默认是local-lvm,这里我选择和系统同在的pve_servers,大小输入10GB即可,后续不够可以再扩

55.jpg

系统后台安装cfdiskfdiske2fsprogs三个工具,命令行执行

opkg update
opkg install cfdisk fdisk e2fsprogs lsblk

56.jpg

接着就可以通过fdisk -l看到OpenWRT的所有磁盘

57.jpg

PVE上看,这块磁盘是黄色的

58.jpg

这里发现刚刚新增的磁盘并没有添加进来,没关系,直接系统关机,然后重新开机(不要直接在命令行用reboot)

59.jpg

这里发现,新磁盘颜色也已经正常

60.jpg

重新输入fdisk -l发现磁盘已经可以看到

61.jpg

直接给新磁盘创建新的分区

fdisk /dev/sdb

输入n后,一直回车,最后输入w保存配置

62.jpg

格式化新创建的分区
mkfs.ext4 /dev/sdb1

63.jpg

前端到挂载点处,点击生成配置按钮

64.jpg

可以在下面的列表中看到新创建的磁盘

65.jpg

点击编辑按钮,勾选“已启用”,选择挂载点为作为根文件系统使用,复制下面的配置信息,点击保存按钮。

66.jpg

67.jpg

点击保存并应用按钮

68.jpg

69.jpg

将以上修改后的内容,重新粘贴到后台控制台执行

mkdir -p /tmp/introot
mkdir -p /tmp/extroot
mount --bind / /tmp/introot
mount /dev/sdb1 /tmp/extroot
tar -C /tmp/introot -cvf - . | tar -C /tmp/extroot -xf -
umount /tmp/introot
umount /tmp/extroot


70.jpg

重启OpenWRT,进入前端首页“”,发现磁盘已经完成扩容

71.jpg

72.jpg

若以上步骤操作完成后,依旧没有生效,可从点击“生成配置”按钮处开始,重复执行1~2次即可,我测试过程中也出现了不生效的情况,重复执行1次后就生效了。


配置ipv6访问
我们知道,现在ipv4资源已经枯竭,如果想要让自己的系统组件可以给外部互联网访问,配置ipv6的方式是已经较为可行的方法(前提是你家的电信运营商已经给你开通了ipv6,并且需要手动关闭ipv6spi,否则会被运营商的路由器光猫拦截下来,最新的带宽默认都支持并开通了ipv6),具体步骤如下:
在OpenWRT前端新增一个接口
73.jpg

协议选择DNCPv6客户端,名称随便写,设备选择桥接口,点击创建接口

73.jpg

点击保存

74.jpg

点击保存并应用

75.jpg

可以看到已经拿到了ipv6

76.jpg

电脑连接其他网络(例如手机开通热点),浏览器这个ipv6地址,发现即便外网的条件下,也可以访问该系统了

77.jpg

这就证明,我们的ipv6是可达可访问的,下一步就是要设置静态ipv6地址,避免由于运营商修改ipv6地址导致我们后续无法访问该ip,点击新网卡的编辑按钮

78.jpg

修改协议类型为静态地址,点击切换协议

80.jpg

填入ipv6地址(ipv4不要填写),可以直接拿原来的ipv6地址作为静态ip地址,输入网关(默认为:fe80::1),点击保存按钮

81.jpg

在外面点击保存并应用使配置生效

82.jpg

点击“应用并保留设置”

83.jpg

发现原来的ipv6地址仍然可以通过手机热点进行访问,至此,所有配置结束。

补充一点,可以通过阿里云域名,将域名解析到这个ipv6地址,实现域名访问


楼主
Waylee 楼主

主题

0

回帖

1万

积分

仙帝

积分
10124
Waylee 2024-9-16 18:43 | 显示全部楼层
您需要登录后才可以回帖 登录 | register

本版积分规则

雪舞知识库 | 浙ICP备15015590号-1 | 萌ICP备20232229号|浙公网安备33048102000118号 |网站地图|天天打卡

GMT+8, 2024-12-5 03:01 , Processed in 0.082263 second(s), 7 queries , Redis On.

Powered by XueWu Licensed

Copyright © Tencent Cloud.

快速回复 返回顶部 返回列表