在linux上玩过kvm的朋友基本都晓得,在宿主机上运行了虚拟主机以后,我们无法直接看到某一个虚拟主机IP地址。比如:
- [root@21yunwei /]$virsh list --all
- Id 名称 状态
- ----------------------------------------------------
- 3 geoip running
- 4 tomcat running
- 5 jenkins running
- 18 gitlab running
- 19 win7 running
如果我们想知道gitlab这个虚拟机的IP地址,那么是无法直接看到的。这里就需要一个小方法做排查,很简单的,就两步骤:
1,编辑虚拟主机配置文件。
- [root@21yunwei /]$virsh edit gitlab
进去以后直接查找mac 可以定位到如下地址信息,记录下mac后退出:
- <mac address='52:54:00:FA:61:75'/>
2,通过arp -a判定虚拟机器IP地址。
- [root@21yunwei /]$arp -a | grep -i 52:54:00:FA:61:75
- ? (192.168.1.101) at 52:54:00:fa:61:75 [ether] on br1
注意这里一定要加上-i 忽略大小写。不然因为大小写问题有可能查不到。
说明:这里只根据通信缓存记录的mac 、IP地址手段做排查。也有可能找不到。最好的办法是自己写一个脚本跟网段内的所有服务器都ping一次,记录下mac、ip地址以后再查找就没问题。