如何从ESXi虚拟机访问同服务器的HPE iLO?
如何从ESXi虚拟机访问同服务器的HPE iLO?
这问题我之前帮朋友排查过,本质是ESXi默认不会把虚拟机/主机的流量转发到iLO的管理平面——哪怕它们在同一IP网段,因为iLO是服务器独立的硬件管理模块,共享LAN口只是复用了物理网线,逻辑上还是两个独立的网络栈。给你两个靠谱的解决办法,按需选:
方法一:临时快速方案——手动添加ARP/路由条目(重启ESXi后会失效)
这个适合临时应急用,不用装额外工具:
- 先获取iLO的MAC地址:用能正常访问iLO的物理PC,执行
arp -a(Windows)或arp -n(Linux)找到192.168.100.100对应的MAC;也可以直接登录iLO的Web界面,在「网络设置」板块查看。 - 登录ESXi主机的控制台(或者先开启ESXi的SSH服务,通过SSH连接),执行以下命令添加静态ARP条目:
把esxcli network ip arp add -a 192.168.100.100 -d aa:bb:cc:dd:ee:ff -i vmk0aa:bb:cc:dd:ee:ff替换成你实际的iLO MAC地址,vmk0是ESXi的管理端口(对应你设置的192.168.100.101)。 - 回到Windows虚拟机测试,此时应该能ping通iLO的IP,也能访问其Web界面了。如果还是不行,再给ESXi加一条主机路由:
esxcli network ip route ipv4 add -n 192.168.100.100/32 -i vmk0
方法二:永久解决方案——安装HPE ESXi工具并启用iLO VM网络直通
这个方案重启ESXi后依然有效,需要用到HPE的定制化工具支持:
- 确认你的ESXi版本:如果是VMware官方原生ESXi,需要下载「HPE ESXi Offline Bundle」并安装到ESXi主机上(可以通过vCenter或ESXi的CLI完成安装);如果已经是HPE定制版ESXi,这一步可以跳过。
- 安装完成后,在ESXi的控制台/SSH中执行命令启用iLO的VM网络直通:
esxcli ilocfg network set --enable-vm-network true - 重启ESXi主机,之后你的虚拟机就能永久直接访问iLO,不需要再手动添加路由或ARP条目。
额外注意事项
- 检查ESXi防火墙规则:默认ESXi允许内部ICMP和TCP 443(iLO Web端口)的流量,如果你之前修改过防火墙规则,记得开放对应端口。
- 确认iLO共享端口绑定正确:在iLO Web界面的「网络设置」里,检查「共享网络端口」是否绑定到了ESXi正在使用的物理网卡(比如vmnic0)。
备注:内容来源于stack exchange,提问作者Pedram




