在阿里雲上,同一個帳戶建立的所有虛擬機器(雲伺服器)之間的內網是直接連通的。而Azure則完全不一樣,一開始使用時有點不知所措,後來摸索出來了——在Azure中只有處於同一個虛擬網路(Virtual Network)的同一個子網(subnet)中的虛擬機器才能直接通過內網通訊,通過這篇博文分享一下。
開始使用Azure時,如果你直奔主題直接建立虛擬機器(Virtual Machine),雖然虛擬機器有內網IP(INTERNAL IP ADDRESS),但它們之間是隔離的,無法直接進行內網通訊。
要想實現虛擬機器之間暢通無阻的內網通訊,請看下面的操作步驟。
1、你必須要先建立一個虛擬網路(Virtual Network):
如上圖,指定虛擬網路的名稱,選擇(機房)區域(REGION),並指定AFFINITY GROUP NAME(地緣組,同一個地緣組的虛擬機器所在的物理機物理距離更近)【詳見Windows Azure Affinity Groups(地緣組)的重要性】。
然後設定虛擬網路的內網IP地址範圍,並設定一個子網(假設這裡子網名稱叫FrontEnd),只有在同一個子網中的虛擬機器才能直接通過內網通訊。
建立好虛擬網路之後,你就會在“NETWORKS”中看到如下圖的資訊。
2、接下來,在建立虛擬機器時一定要選擇FROM GALLERY:
然後在下一步的下一步中就會看到VIRTUAL NEWORK SUBNETS中列出了我們之間建立的虛擬網路的子網。
然後繼續,完成虛擬機器的建立,建立成功之後,你會發現內網IP(INTERNAL IP ADDRESS)就在我們設定的虛擬網路子網IP的範圍之內。
再以同樣的方式建立另一臺虛擬機器:
然後在NETWORKS中就會看到這兩臺機器:
3、最後用遠端桌面登入虛擬機器測試一下內網是否可以直接通訊。
先設定一下虛擬機器的Windows防火牆允許ICMP以進行Ping測試:
然後進行ping測試:
搞定!
試用感言
Azure的可定製性的確很高,但入門門檻也很高,一開始使用時很容易暈頭轉向。建議Azure針對一些常用的場景提供傻瓜式的操作嚮導。
補充:實現內網連線的一個好處是可以通過檔案共享方便地在不同虛擬機器之間傳輸檔案。