這幾天在Xshell連接虛擬機這個問題上頭疼了好長時間,原因是我在虛擬機內的eth0網卡沒有分配IP地址,從而導致無法連接XShell,今天解決了這個問題,做一下記錄。
首先我使用的是微軟的Hyper-V虛擬機,話說VMware用戶應該不會遇到這種坑坑把.....
當我們創建hyper-v虛擬機並裝入cent os系統后,我們首先配置一下虛擬交換機管理器:
進入虛擬交換機管理器后:
我們需要建立一個外部的虛擬交換機以便虛擬機可以訪問物理網絡,並且可以與宿主機交互。
我創建了一個WAN的外部虛擬交換機:
創建成功后,我們把已經創建好的虛擬機的網絡適配器設置為WAN:
此時打開虛擬機系統,輸入ifconfig查看一下ip地址:
我們可以看到eth0的inet地址,用這個地址在XShell中創建連接便可以使XShell與虛擬機系統連接成功
創建之后確定,並且連接,連接成功:
現在我們就可以在XShell中開始操作了!
但我在第一次獲取虛擬機ip時,eth0網卡並沒有IP顯示,看了很多博客文檔后,嘗試了一些方法:
1.
我們先進入network-scripts目錄下,並查看目錄內容:
第一個便是我們的eth0網卡,我們進入網卡設置:
如果ONBOOT為NO,輸入命令進入修改,輸入i開啟編輯模式,改為yes,
修改完后etc退出,並輸入:wq,之后reboot重啟。
至此再打開虛擬機系統應該就會出現eth0的ip。
在筆者操作期間,XShell突然斷開連接,回到虛擬機中輸入ifconfig發現ip地址變了,由於第一次創建的的虛擬交換機是WLAN所使用的Intel網卡,筆者決定再創建一個外部的基於以太網的虛擬交換機,並使用該網卡。
與上面創建虛擬交換機的步驟一樣,只不過選擇了以太網所使用的網卡:
這樣XShell沒有再出現過斷開連接的問題,但這也存在一個問題,由於筆者使用的為筆記本,當斷開以太網連接時就無法使用了。
綜上:我的解決辦法還是存在一些問題,希望有大神可以幫解決一下......
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
在我找解決方案時,認識到了橋連接和NAT連接方式,我們使用WLAN建立外部虛擬交換機時會自動為我們搭建網橋,進行橋接:
這樣我們在以太網斷開時也可以使XShell連接虛擬機,但存在我上面提到的問題XShell有時候會莫名斷開連接,所以解決方案並不完善。
此外我在MSDN中看到關於NAT設置的文檔,但NAT連接貌似又不能訪問物理網絡,有興趣可以看一下MSDN文檔,鏈接給出:https://docs.microsoft.com/zh-cn/virtualization/hyper-v-on-windows/user-guide/setup-nat-network
總之折騰了兩天,這個坑還是沒有完全解決,但也能湊乎着用。。。。。