ESXi安装openwrt

在 ESXi 虚拟化环境下安装 OpenWrt 是一个常见的需求,特别是用于搭建虚拟路由器、网络测试等。下面给你详细步骤指导,帮你在 VMware ESXi 上成功安装并运行 OpenWrt 虚拟机。


一、准备工作

  1. ESXi 环境已搭建好,并且可以通过 vSphere Client 或 Web Client 管理。

  2. 下载好 OpenWrt 镜像 。推荐使用 OpenWrt 的 x86 版本,常用格式有 .img.iso


二、创建虚拟机

  1. 登录 ESXi Web 管理界面。

  2. 点击"创建/注册虚拟机"。

  3. 选择"创建新虚拟机"。

  4. 填写虚拟机名称,比如 OpenWrt_VM

  5. 选择兼容性(一般默认即可)。

  6. 选择操作系统为:

    • Linux -> Other Linux 5.x or later kernel 64-bit(或相似选项)
  7. 设置 CPU、内存资源(OpenWrt 资源需求低,1核 CPU + 128MB RAM 即可)。

  8. 创建虚拟硬盘,大小可设为 1GB 左右(视实际需求)。

  9. 在"CD/DVD 驱动器"选择使用 ISO 镜像文件,将下载的 OpenWrt ISO 上传并挂载。


三、配置网络

  1. 根据需求配置网络适配器类型:

    • 推荐使用 VMXNET3 网络适配器,性能更好。
    • 设置虚拟交换机,确保至少一个网卡连接到你需要的网络。

四、安装 OpenWrt

  1. 启动虚拟机,进入 OpenWrt 的安装界面(如果是 ISO 启动)。

  2. 根据 OpenWrt 安装提示进行操作。通常 x86 OpenWrt 有交互安装或直接运行方式。

  3. 如果使用 .img 格式的镜像,你可以选择直接用作虚拟硬盘镜像:

    • 先将 .img 转成 .vmdk 或使用"rawdisk"方式挂载。
    • 参考下面的转换步骤。

五、使用 .img 镜像作为硬盘

如果你下载的是 .img 格式:

  1. .img 文件上传到 ESXi 存储。
  2. 使用命令行将 .img 转为 .vmdk,或者使用工具如 qemu-img
css 复制代码
qemu-img convert -f raw -O vmdk openwrt-x86-64.img openwrt.vmdk
php
63 Bytes
© 菜鸟-创作你的创作
  1. 上传生成的 openwrt.vmdk 到 ESXi 存储。
  2. 创建虚拟机时,选择"使用现有虚拟磁盘",挂载该 vmdk
  3. 关闭 ISO 启动,直接从硬盘启动。

六、常用配置调整

  • 关闭不必要的设备,如声卡、USB 控制器等,减少资源浪费。
  • 调整显卡类型,可以设置为"无"或"虚拟SVGA"。
  • 设置启动顺序,优先启动硬盘。
  • 网络接口数量,根据需要添加多个虚拟网卡,实现多WAN、多LAN功能。

七、连接与管理

  • OpenWrt 默认通过 SSH 和 Web 界面管理。
  • 默认 IP 可能是 192.168.1.1,确保虚拟机网络与管理终端处于同一网段。
  • 登录后配置网络、防火墙、DHCP、VPN等。

八、示例参考命令(ESXi Shell)

bash 复制代码
# 上传文件(通过 SCP 或 vSphere Client 上传)
scp openwrt.vmdk root@esxi-host:/vmfs/volumes/datastore1/
# 创建虚拟机
vim-cmd vmsvc/createdummyvm OpenWrt_VM /vmfs/volumes/datastore1/OpenWrt_VM
# 挂载虚拟磁盘和ISO(需要进一步配置)
php
199 Bytes
© 菜鸟-创作你的创作

总结

步骤 说明
下载镜像 OpenWrt x86/x64 ISO 或 IMG
创建虚拟机 Linux 64位模板,配置CPU/内存
挂载镜像 ISO用于安装,VMDK用于直接启动
配置网络 VMXNET3,连接虚拟交换机
启动安装 按提示完成安装或直接运行
管理和维护 SSH/Web,调整配置

明白,我给你整理一份 ESXi 上 OpenWrt 虚拟机的 .vmx 模板配置文件示例,以及简单的自动化安装和网络设置示例,帮你快速部署并运行 OpenWrt。


一、OpenWrt 虚拟机 .vmx 配置模板示例

这个配置文件适合基于 OpenWrt x86/x64 .vmdk 磁盘镜像直接启动:

ini 复制代码
.encoding = "UTF-8"
config.version = "8"
virtualHW.version = "14"
vmci0.present = "TRUE"
hpet0.present = "TRUE"
memsize = "256"               # 内存大小(MB),可调整
numvcpus = "1"                # CPU 核数,最低1核
# 硬盘设置(使用已有vmdk)
scsi0.present = "TRUE"
scsi0.virtualDev = "lsilogic"
scsi0:0.present = "TRUE"
scsi0:0.fileName = "openwrt.vmdk"   # 磁盘文件名
# 网络适配器(VMXNET3)
ethernet0.present = "TRUE"
ethernet0.virtualDev = "vmxnet3"
ethernet0.networkName = "VM Network"  # 虚拟交换机名,根据你的ESXi环境替换
ethernet0.addressType = "generated"
# 关闭不必要设备
sound.present = "FALSE"
usb.present = "FALSE"
video.vramSize = "8"
svga.present = "FALSE"
# 启动顺序
bios.bootOrder = "scsi0"
# 其他
guestOS = "otherlinux-64"
php
680 Bytes
© 菜鸟-创作你的创作

二、自动化上传与部署流程(示例)

  1. 上传镜像

通过 SCP 上传 openwrt.vmdk 到 ESXi 存储目录:

typescript 复制代码
scp openwrt.vmdk root@esxi-host:/vmfs/volumes/datastore1/OpenWrt/
php
65 Bytes
© 菜鸟-创作你的创作
  1. 创建虚拟机目录并上传 .vmx
bash 复制代码
ssh root@esxi-host
mkdir /vmfs/volumes/datastore1/OpenWrt/OpenWrt_VM
# 上传 openwrt.vmx 到该目录
php
90 Bytes
© 菜鸟-创作你的创作
  1. 注册虚拟机
bash 复制代码
vim-cmd solo/registervm /vmfs/volumes/datastore1/OpenWrt/OpenWrt_VM/openwrt.vmx
php
79 Bytes
© 菜鸟-创作你的创作
  1. 启动虚拟机
bash 复制代码
vim-cmd vmsvc/power.on <vmid>
php
29 Bytes
© 菜鸟-创作你的创作

<vmid> 通过

bash 复制代码
vim-cmd vmsvc/getallvms
php
23 Bytes
© 菜鸟-创作你的创作

查看。


三、网络设置建议

  • ESXi 创建的虚拟交换机(vSwitch)中,确保 VM Network 或自定义网络存在。
  • 如果需要多网口,修改 .vmx 添加第二个网卡:
ini 复制代码
ethernet1.present = "TRUE"
ethernet1.virtualDev = "vmxnet3"
ethernet1.networkName = "Internal Network"
ethernet1.addressType = "generated"
php
138 Bytes
© 菜鸟-创作你的创作
  • OpenWrt 内部使用 uci 命令配置网络接口:
ini 复制代码
uci set network.lan.ifname='eth0'
uci set network.lan.proto='static'
uci set network.lan.ipaddr='192.168.1.1'
uci commit network
/etc/init.d/network restart
php
156 Bytes
© 菜鸟-创作你的创作

四、启动后登录

  • 默认用户名通常是 root,无密码或根据版本不同设置。
  • 通过 ESXi 控制台或 SSH 访问(若网络配置允许)。

www.52runoob.com/archives/54...

相关推荐
BeerBear几秒前
你对Code Review的看法是什么?
后端·面试·代码规范
尼丝3 分钟前
Token是如何保证安全不被篡改
前端·后端
要努力赚钱14 分钟前
抱着 GPU 取暖:大模型训练那些高阶玩法
后端
树獭叔叔21 分钟前
Node.js 事件循环:单线程模型下的并发魔法
后端·node.js
程序员小假34 分钟前
我们来说一说 悲观锁、乐观锁、分布式锁的使用场景和使用技巧
后端
_祝你今天愉快36 分钟前
Java Lock
android·java·后端
jzy37111 小时前
minio集群安装(3节点模拟4节点)
后端
林太白1 小时前
Rust新增优化
后端·rust
熊猫片沃子1 小时前
mybatis 与mybatisplus 比较总结
java·后端·mybatis
brzhang2 小时前
昨天我和同事聊聊架构这事儿,特别是怎么才能睡个好觉,有点点收获
前端·后端·架构