我有一個在 VMware ESXi 主機上運行的來賓虛擬機器的 IP 位址。我不知道該 VMware 主機的 IP 位址。
如何找到該 VMware 主機的 IP 位址?
- 我有vSphere 用戶端我的系統上安裝的軟體。
- 我可以 ping 訪客電腦的 IP,它會回覆。謝謝。
答案1
如果你確實只有訪客的IP位址,那麼通常無法取得主機的IP位址。不過,可能有一些配置可以工作。
從您(PC)的角度來看,虛擬機器只是另一台可透過網路存取的電腦。即使在訪客的本地網路(廣播網域)中,僅透過查看虛擬機器的 IP 位址和流量到達那裡的方式,也無法將虛擬機器與實體連接到交換器的真實 PC 區分開來。
答案2
如果您有 vSphere 用戶端,則可以開啟訪客電腦的控制台,標題列將顯示您連接到哪個主機:
您可以在上面的範例中看到 XA_StreamDev 位於主機上(其名稱淡出)。如果您 ping 該主機名,您將能夠取得其 IP 位址。
若要開啟完整控制台,請右鍵單擊您的虛擬機器並選擇「開啟控制台」。
此外,如果您前往 VCenter > 主機和叢集 >,您將能夠看到主機清單 - 您應該能夠 ping 通。
答案3
理論上,您可能會發現 ESXi 主機無法訪問,因為其 IP 位址超出了您的範圍。
但是,如果您知道可以存取的 IP 位址範圍,下列工具(「ESXi 主機尋找器」)可以協助您找到哪一台是可能的 ESXi 主機:
https://yinqingwang.wordpress.com/2016/01/18/esxi-host-finder/
答案4
cat /etc/vmware/esx.conf | grep "/adv/Misc/HostIPAddr" | awk -F ' = ' '{gsub("\"", "");print $2}'
IP 在 /adv/Misc/HostIPAddr 下的檔案 cat '/etc/vmware/esx.conf' 中配置
cat 命令捕獲整個配置文件,輸出通過管道傳輸到 grep
grep 命令過濾掉除包含我們想要的鍵的行之外的所有輸入,整行通過管道傳輸到 awk
awk 透過「=」字元分割行並取得第二列上的 IP,「gsub」awk 子命令刪除雙引號。