您可能需要在 VMware 虛擬機器內存取序列埠,用於組態設定、記錄通訊或除錯等目的。只要符合先決條件,在 VMware Workstation Pro 中新增新的序列埠(無論是實體或遠端)都很容易。
然而,之後要在虛擬環境中存取並使用它們又是另一回事。而這正是 Serial Port Redirector派上用場的地方。
在這篇文章中,我們將向您展示如何在 VMware 虛擬機器中新增序列埠,說明不同的連線類型,並示範如何在 VM 中存取它。
在 VMware Workstation 中設定序列埠
將序列埠(或 COM 埠)新增到虛擬機器(VM)可讓您在 VM 環境中與路由器或開發板等序列裝置互動。您可以透過多種方式連線虛擬序列埠,包括連線到實體埠、檔案、具名管道和網路。
虛擬機器最多可有 32 個 COM 埠。不過,在建立 VM 時,您實際上也可以選擇完全不包含任何 COM 埠。如果您選擇這種作法,來賓作業系統(在 VM 內執行的作業系統)將完全看不到任何可用的序列埠。
要求
新增虛擬序列埠之前,請先確認您的虛擬機器已關機。
請確認您已了解與您的埠組態相關的正確媒體類型與 vSPC 連線詳細資料。vSPC(虛擬序列埠集中器)是一項以網路為基礎的服務,可讓虛擬機器遠端存取序列埠。您也需要授與 Virtual machine.Config.Add or remove device(虛擬機器 > 組態 > 新增或移除裝置)權限才能繼續。
特定連線類型也有其獨特的先決條件。例如,若您想透過網路使用序列埠,則需要以下防火牆規則集:
- VM 序列埠連接到 vSPC。啟用「使用虛擬序列埠集中器」選項,以僅促進來自主機電腦的出站訊號。
2. 透過網路連線的 VM 序列埠。這基本上與第一個規則集相同,只是它不使用虛擬序列埠集中器(vSPC)
有了這個前提之後,以下是如何設定 VMware 虛擬序列埠。
新增 VMware 虛擬序列埠
- 在清單中,以滑鼠右鍵點擊您選擇的虛擬機器,並選取「編輯設定」切換到「硬體」分頁並點擊「新增」
2. 展開下拉式選單並選擇「序列埠」新的序列埠將會出現在您的裝置清單中。
3. 開啟「新增序列埠」下拉式選單,並選擇您偏好的連線類型(實體埠、檔案、具名管道或網路)然後,按一下「確定」以完成。
選擇正確的虛擬序列埠連線類型
根據您想要達成的資料處理類型,您需要為您的虛擬序列埠選擇特定的連線類型。以下是您可使用的四種不同連線方式的快速說明:
- 實體序列埠:這是最常見的設定,讓 VM 能與數據機等實體裝置互動。
- 主機電腦上的檔案:透過虛擬埠傳送的資料會寫入主機電腦上的檔案。這可讓您記錄 VM 中某些程序的相關資訊,對通訊記錄(logging)很有用。
- 主機端具名管道:這會在 VM 與主機上的應用程式或另一個 VM 之間建立用於資料交換的直接連線。可將其視為用序列線連接兩台獨立的機器,只是它們位於同一台電腦上。這是常用於遠端除錯的方法。
- 網路連接埠或 vSPC URI:這會使用虛擬序列埠集中器(vSPC)透過網路建立連線。換句話說,您可使用此模式在虛擬序列埠與遠端裝置之間進行通訊。
設定輸出至具名管道
選擇具名管道連線:
○ 在「新增序列埠」下拉式選單中,選擇 具名管道。
2. 指定管道名稱:
○ 在「管道名稱」欄位中,輸入管道的名稱(例如:\\.\pipe\namedpipe)
○ 如果您使用的是 Windows 主機,您可以保留預設的管道名稱。
○ 請確保伺服器端與用戶端使用相同的管道名稱。
3. 定義管道端點:
○ 從可用的下拉式選單中,選取管道的近端與遠端以完成設定。
網路連線的伺服器 vs 用戶端模式
如果您選擇網路連線類型,也可以選擇是否將您的序列埠設定為用戶端或伺服器連線。
伺服器連線模式
如果您選擇伺服器連線,您將取得對連接至序列埠之虛擬機器的控制權。這會讓您的 VM 像伺服器一樣運作,等待來自主機的傳入連線。這非常適合您只需要偶爾控制 VM 的情境,例如除錯或設定時。
用戶端連線模式
另一方面,如果您想將虛擬機器作為用戶端使用,請選擇用戶端連線。換句話說,VM 會在啟動時主動對指定程式發起連線。這在記錄(logging)應用程式中很常見,因為您會自動將資料傳送到另一個系統。
在沒有驗證參數的情況下建立序列埠網路連線
伺服器連線範例
若要使用 telnet://:11111 URI(統一資源識別碼)設定您的 VM 以透過序列埠伺服器連線,請執行下列命令。
telnet yourESXiServerIPAddress 11111
用戶端連線範例
同時,您也可以在 Linux 上於連接埠 11 執行 Telnet 伺服器(telnet://yourLinuxBox:11)透過用戶端連線來設定您的序列埠。請使用下列命令。
telnet://yourLinuxBox:11
使用 Serial to Ethernet Connector 將序列埠連接到 VMware
VMware 包含原生的序列埠直通功能,可讓虛擬機器與以序列埠連接的裝置通訊。雖然這些內建選項適用於基本情境,但當需要遠端存取、裝置相容性或穩定效能時,可能會受到限制。
Serial to Ethernet Connector 提供了在 VMware 環境中整合序列埠更具彈性的方式。它不依賴將裝置直接實體連接到主機,而是讓序列埠可透過網路重新導向。這使虛擬機器能夠遠端存取序列裝置,更容易支援分散式基礎架構與現代化的虛擬化部署。
1. 若要進行設定,請在共用序列埠的 PC 上下載並安裝 Serial to Ethernet Connector。
2. 在 Serial to Ethernet Connector 應用程式中,前往「伺服器連線」分頁並選取主機電腦的 COM 連接埠。接著,輸入要用於數位通訊監控的 TCP 連接埠。
3. 點擊「建立伺服器連線」按鈕。接下來,透過 VMware 將您的序列埠連接到您的虛擬機器(如先前所討論)
4. 前往您的來賓作業系統。開啟 Serial to Ethernet Connector 應用程式並切換到「用戶端連線」分頁。進入後,輸入相同的 TCP 連接埠詳細資訊,並指定主機電腦的 IP 位址。
5. 為您的虛擬機器命名序列介面,然後按一下「建立用戶端連線」
如何透過序列轉乙太網路連接器解決常見的 VMware 序列埠問題
許多工業系統與舊型裝置仍依賴序列通訊,因此在虛擬環境中,可靠的序列埠存取至關重要。然而,VMware 序列埠直通可能會帶來幾項挑戰。
遠端存取限制
在使用實體直通時,遠端存取序列連接的硬體相當困難,尤其是在雲端或資料中心環境中,直接存取硬體並不實際。Serial to Ethernet Connector 透過將序列埠虛擬化並使其可透過網路存取來解決此問題。
相容性限制
某些序列裝置需要特定的驅動程式或設定,可能無法在虛擬機器內正常運作。透過在網路層級重新導向序列通訊,Serial to Ethernet Connector 可降低對裝置特定 VM 設定的依賴。
效能與延遲問題
實體序列直通可能導致延遲與不穩定,尤其是在資料跨長距離傳輸或在多個系統之間傳輸時。以網路為基礎的序列重新導向有助於提供更一致的資料傳輸並減少中斷。
對舊型硬體的支援有限
虛擬平台通常對較舊的序列裝置提供的原生支援有限。Serial to Ethernet Connector 可延伸 VMware 的功能,讓舊型設備即使在缺乏原生整合或原生整合不可靠時,也能以虛擬序列埠的形式進行存取。
結論
虛擬序列埠在除錯或記錄用途時很方便。它們可以透過 VMware Workstation Pro 輕鬆新增,但在虛擬環境內存取它們仍然最容易透過 Serial to Ethernet Connector 來完成。
常見問題
如果您正在使用 ESXi 主機上的實體序列埠連線到 VM,則透過 USB 連接的序列埠不支援 VMware 序列埠直通。相反地,您應該選擇 USB 直通。請參閱「從 ESXi 主機到虛擬機器的 USB 設定」
VMware ESXi 允許您使用最多 32 個序列埠。主機板上的序列埠可以從 ESXi 主機輕鬆重新導向至虛擬機器。
