標籤:使用者 source 網路服務 1.0 客戶 規劃 查詢 shell 技術
VNet是Azure雲中邏輯隔離的虛擬網路。它包含兩個含義:
- Azure的使用者可以在VNet中建立自己的各種資源,感覺想自己的資料中心中一樣;
- 在一個VNet中建立的資源和其它VNet建立的資源相互隔離,是Azure雲中網路多租戶的具體實現形式。
Azure的VNet可以提供如的三大類服務:
- VNet內部提供的網路服務,包括子網的劃分、網路安全和路由等功能
- 前端接入,提供公網IP地址、DNS位址解析、Source/Destination NAT、負載平衡等等各種服務
- 後端串連,提供IPSec Site-Site/Point-Site VPN,以及專線接入等服務。
Azure的各種網路服務大多是圍繞Azure的VNet的,所以VNet是Azure Networking的基礎。下面將介紹如何建立Azure VNet。
- 通過Portal頁面部署Azure VNet
進入AzureChina的管理Portal: https://portal.azure.cn
在"More Services"中點擊虛擬網路:
進入虛擬網路後,可以看到已經建立的VNet資訊,包括VNet名稱、資源群組、Region和訂閱資訊:
此時點擊添加,添加新的VNet,在添加時需要填寫如下資訊:
- VNet名稱
- VNet的地址空間,就是VNet整體的地址網段
- 每個VNet可以最大配置4096個IP地址的地址空間,目前通過開Case可以最大支援到8192個,Network的Limitation可以參考以下連結:https://docs.microsoft.com/en-us/azure/azure-subscription-service-limits#networking-limits。由於Azure的各種訪問的能力在不停的變化,建議有可能到達各種Azure資源限制的時候,到這個連結上查詢相關的數值;
- 位址區段的選擇建議符合RFC1918中定義的Private Address Space的三段地址,具體請參考http://www.faqs.org/rfcs/rfc1918.html。就是我們常說的10、172、192的三段地址;
- Azure VNet的地址空間允許使用者採用非Private Address Space的位址區段,但建議是使用者自己擁有的位址區段,是自己在ARIN、RIPE、APNIC、LACNIC和AFRINIC等組織申請並付費的位址區段,否則會發生部分網路訪問不了的情況;
- 即使使用者使用自己申請的IP位址區段,Azure並不負責這些位址區段的BGP宣告,使用者需要採用一些特殊的方式通過自己的BGP網路宣告給各個電訊廠商。
- Azure VNet的地址空間可以是不連續的,即可以添加多個地址空間。建議以較小的位址區段添加地址空間,這樣可以避免地址浪費和地址衝突等各種問題;
- ★Azure VNet的地址空間的劃分是非常重要的一項工作,建議企業的Network部門的同事參加。一旦地址劃分出現重複等問題,有可能面臨整個VNet內的資源要全部關停,甚至剷除重新部署的情況。所以說在雲上業務建設之初,花一些精力把地址空間規劃好,是非常重要的工作之一!
- 子網名稱,類似物理網路中的Vlan的取名,可以取一些有提示功能的名稱,比如Web、APP、DB或Frontend、Backend等等;
- 子網範圍,要求在地址空間之內,建議根據需求,劃分能夠滿足需求的較小的位址區段,在今後的地址劃分上比較靈活。比如預計這個網段中的VM或其他資源的數量不會超過100台,建議採用/25掩碼的網段;
- 其他資訊,包括資源群組、訂閱和Region資訊
建立完成後,可以看到VNet的相關資訊:
其他的幾點需要注意的:
- 在子網中,還有一個網關子網,GatewaySubnet:
其名稱是不能更改的,用於VPN Gateway和Express Route Gateway使用。建議採用/27掩碼的網段,具體細節在IPSec VPN和Express Route的章節中介紹。
可以在"已串連的裝置"中查看已經在VNet中部署的資源:
- DNS
在Azure的VNet中有自己的DNS服務。Azure上的DNS服務和一般DNS不同的是,Azure的DNS服務是通過SDN的形式實現的。其DNS伺服器的地址在Azure的全球範圍內都是168.63.129.16。當Azure的SDN發現有用戶端在請求168.63.129.16的DNS服務時,SDN的Network Controller會發送DNS的response給要求者。
當然可以添加自己的DNS伺服器,比如在VNet中部署一台DNS伺服器,在VNet DNS配置中添加這個IP地址即可,但要重啟VNet中的資源,新的DNS伺服器的配置才會生效。
2. 通過Powershell部署Azure VNet
通過PowerShell部署Azure VNet和Portal建立的思路是相同的,具體步驟如下:
#建立新的Resource GroupNew-AzureRmResourceGroup -Name hwvnetps -Location chinanorth #建立新的Subnet的配置$vlan1 = New-AzureRmVirtualNetworkSubnetConfig -Name vlan1 ` -AddressPrefix 172.18.0.0/25$gwsubnet = New-AzureRmVirtualNetworkSubnetConfig ` -Name GatewaySubnet ` -AddressPrefix 172.18.1.224/27#建立VNet$hwvnetps = New-AzureRmVirtualNetwork -Name hwvnetps ` -ResourceGroupName hwvnetps -Location chinanorth ` -AddressPrefix 172.18.0.0/24,172.18.1.0/24 ` -Subnet $vlan1,$gwsubnet #添加Subnet的配置$vlan2 = Add-AzureRmVirtualNetworkSubnetConfig ` -VirtualNetwork $hwvnetps -Name vlan2 ` -AddressPrefix 172.18.0.128/25#更新VNetSet-AzureRmVirtualNetwork -VirtualNetwork $hwvnetps
3. 通過Azure CLI部署Azure VNet
通過命令列實現的方式也類似,具體命令如下:
#建立Resource Groupaz group create --name hwvnetc \ --location chinanorth #建立VNetaz network vnet create -g hwvnetc \ -n hwvnetc \ --address-prefixes 172.19.0.0/24 172.19.1.0/24 \ --subnet-name vlan1 \ --subnet-prefix 172.19.0.0/25 #添加Subnetaz network vnet subnet create -g hwvnetc \ --vnet-name hwvnetc \ --name GatewaySubnet \ --address-prefix 172.19.1.224/27
Azure VNet介紹