1.話題由來 對於經常工作於多個作業系統的人來說,Windows作為宿主系統,搭配Vmware Workstation已經是標準工作站了。我個人也是來回往返於Windows和Linux之間,使用的筆記本的配置為:Windows7作為宿主,VMWare Workstation 9安裝虛擬機器CentOS以及OpenBSD等。虛擬機器的網路連接設定為橋接方式,以使虛擬機器更像是區域網路裡的真正主機。但是這種橋接方式必須讓物理網卡真正接入區域網路才能工作(聽說新版本VWmware可以不用?我自己實驗是不可以的)。這樣當離開網路環境時,虛擬機器之間以及宿主機和虛擬機器之間就無法網路通訊了。 解決方式有兩種,一是“軟方法”,也就是通過軟體虛擬一個交換器環境,我沒有找到合適的軟體來完成;二是通過RJ45的短路環,讓物理網卡自發自收。本文介紹的就是第二種方法,簡單有效,不用改變軟體環境。2.RJ45短路環原理RJ45接頭針腳序號定義:2.1 百兆乙太網路RJ45介面針腳訊號定義
號碼 |
訊號定義 |
1 |
TX+ |
2 |
TX- |
3 |
RX+ |
4 |
未用 |
5 |
未用 |
6 |
RX- |
7 |
未用 |
8 |
未用 |
2.2 千兆乙太網路RJ45介面針腳訊號定義
號碼 |
訊號定義 |
1 |
BI_D1+ |
2 |
BI_D1- |
3 |
BI_D2+ |
4 |
BI_D3+ |
5 |
BI_D3- |
6 |
BI_D2- |
7 |
BI_D4+ |
8 |
BI_D4- |
2.3 自收自發的串連方式 把發送針腳和對應的接收針腳直接短路就可以實現自首自發了。對於100MbRJ-45,把1-3, 2-6分別短路串連即可;對於千兆網RJ45,1-3,2-6,4-7,5-8對接即可。當然千兆的方式也適用於百兆,只是多浪費兩根線。做成的水晶頭如下:
3.千兆網卡上存在的問題與解決方案 按照上述方式做成的環路水晶頭,經測試發現在百兆網卡上工作正常,如果是Windows系統,會顯示網路已串連。在千兆網卡上則不工作,依然顯示網路線纜斷開。 經過網上尋找(這裡再贊一下google,在百度很難找到技術問題答案),終於找到原因。千兆網卡都有一個Near End Cross Talk(NEXT)功能,開啟這個功能將導致短路環無法使用。問題是很多網卡驅動都沒提供關閉這個功能的方式,我在BIOS裡也沒發現可以關閉這個功能的選項,誰能知道還請告之。 雖然不能關閉這個NEXT,但是可以採取另一種方式解決問題,那就是手動調整網卡工作在100MB全雙工系統模式。在Windows下操作為,右鍵網卡屬性。這是一個關於NEXT的小文: