Azure虚拟网络:功能、配置与最佳实践
Azure虚拟网络:功能、配置与最佳实践
Azure虚拟网络是微软Azure云平台中的核心网络服务,它允许用户在云端创建隔离的虚拟网络环境,实现资源之间的安全通信。无论是需要连接本地数据中心,还是在Azure中部署分布式应用,Azure虚拟网络都能提供灵活且强大的网络解决方案。本文将详细介绍Azure虚拟网络的功能、配置方法和最佳实践。
什么是Azure虚拟网络?
Azure虚拟网络可让Azure资源(例如虚拟机、Web应用和数据库)相互通信、与Internet上的用户通信,以及与本地客户端计算机通信。可将Azure网络视为一组资源,它们与其他Azure资源进行链接。
Azure虚拟网络提供以下重要的网络功能:
- 隔离和分段
- Internet通信
- Azure资源之间的通信
- 与本地资源通信
- 路由网络流量
- 筛选网络流量
- 连接虚拟网络
隔离和细分
通过Azure,可创建多个隔离的虚拟网络。设置虚拟网络时,请使用公共或专用IP地址范围定义一个专用Internet协议(IP)地址空间。然后可将该IP地址空间划分为子网,并将部分已定义的地址空间分配给每个命名的子网。
对于名称解析,可以使用Azure的内置名称解析服务,也可以将虚拟网络配置为使用内部或外部的域名系统(DNS)服务器。
Internet通信
Azure中的VM可默认连接到Internet。可以通过定义公共IP地址或公共负载均衡器来启用从Internet传入的连接。 若要管理VM,可通过Azure CLI、远程桌面协议(RDP)或安全外壳(SSH)实现连接。
Azure资源之间的通信
需要让Azure资源能够安全地进行相互通信。为此,可使用下列任一方式:
虚拟网络
虚拟网络不仅可以连接VM,也可以连接其他Azure资源,例如应用服务环境、Azure Kubernetes Service和Azure虚拟机规模集。服务终结点
可以使用服务终结点连接到其他Azure资源类型,例如Azure SQL数据库和存储帐户。此方法可以将多个Azure资源连接到虚拟网络,因此可以提高安全性并在资源之间提供最佳路由。
与本地资源通信
可以通过Azure虚拟网络将本地环境中的和Azure订阅中的资源链接到一起,实际上就是创建一个横跨本地环境和云环境的网络。可以通过三种机制实现此连接:
点到站点虚拟专用网
此方法与虚拟专用网(VPN)连接一样(即将组织外部的计算机连接回企业网络),只是方向相反而已。在这种情况下,客户端计算机会启动到Azure的加密VPN连接,将该计算机连接到Azure虚拟网络。站点到站点虚拟专用网
站点到站点VPN将本地VPN设备或网关链接到虚拟网络中的Azure VPN网关。实际上,Azure中的设备看起来可能就像在本地网络中一样。连接经过加密,是通过Internet进行的。Azure ExpressRoute
对于需要更大带宽甚至更高级别安全性的环境,Azure ExpressRoute是最好的方法。Azure ExpressRoute提供到Azure的专用连接,该连接不经过Internet。
路由网络流量
默认情况下,Azure会在任何连接的虚拟网络的子网、本地网络以及Internet之间路由流量。但是,可以控制路由并覆盖这些设置,如下所示:
路由表
可通过路由表来定义流量定向规则。可以创建自定义路由表,用于控制数据包在子网之间的路由方式。边界网关协议
边界网关协议(BGP)适用于Azure VPN网关或ExpressRoute,用于将本地BGP路由传播到Azure虚拟网络。
筛选网络流量
Azure虚拟网络允许使用以下方法筛选子网之间的流量:
网络安全组
网络安全组(NSG)是一种Azure资源,可包含多个入站和出站安全规则。可以根据源和目标IP地址、端口和协议等因素来定义这些允许或阻止流量的规则。网络虚拟设备
网络虚拟设备是一种可以与强化网络设备相比较的专用VM。网络虚拟设备执行特定的网络功能,例如运行防火墙或执行WAN优化。
连接虚拟网络
可以通过虚拟网络对等互连将虚拟网络链接到一起。每个虚拟网络中的资源可以通过对等互连相互通信。这些虚拟网络可以位于不同的区域,因此可以通过Azure创建全球互连的网络。
Azure虚拟网络设置
可以通过Azure门户、Azure PowerShell(位于本地计算机上)或Azure Cloud Shell创建并配置Azure虚拟网络。
创建虚拟网络
创建Azure虚拟网络时,请配置多项基本设置。还可以配置高级设置,例如多个子网、分布式拒绝服务(DDoS)防护以及服务终结点。
你需要为基本虚拟网络配置以下设置:
网络名称
网络名称必须在订阅中唯一,但无需全局唯一。确保该名称是一个描述性的名称、易于记忆且易于与其他虚拟机网络区分。地址空间
设置虚拟网络时,请按无类别域际路由(CIDR)格式定义内部地址空间。此地址空间必须在订阅中唯一,且在连接的所有其他网络中唯一。假设你为第一个虚拟网络选择10.0.0.0/24的地址空间。此地址空间中定义的地址介于10.0.0.1 - 10.0.0.254范围之间。然后,创建第二个虚拟网络,并选择地址空间10.0.0.0/8。此地址空间中定义的地址介于10.0.0.1 - 10.255.255.254范围之间。某些地址出现重叠,不能用于两个虚拟网络。
但是,你可使用10.0.0.0/16(地址范围为10.0.0.1 - 10.0.255.254),也可使用10.1.0.0/16(地址范围为10.1.0.1 - 10.1.255.254)。你可将这些地址空间分配到虚拟网络,因为此处不存在地址重叠。
订阅
仅在有多个可供选择的订阅的情况下适用。资源组
与其他任何Azure资源一样,虚拟网络需存在于资源组中。可选择现有的Azure资源组,也可创建新的资源组。位置
选择要在其中创建虚拟网络的位置。子网
在每个虚拟网络地址范围中,可以创建一个或多个用于将虚拟网络的地址空间分区的子网。随后的子网之间的路由将取决于默认流量路由,或者取决于定义的自定义路由。也可定义一个子网,令其涵盖所有虚拟网络的地址范围。备注
子网名称必须以字母或数字开头,以字母、数字或下划线结尾,且仅可包含字母、数字、下划线、句点或连字符。分布式拒绝服务(DDoS)防护
可以选择基本或标准DDoS防护。标准DDoS防护是一项高级服务。要详细了解DDoS防护,请参阅Azure DDoS防护。服务终结点
请在此处启用服务终结点,然后从列表中选择要启用哪些Azure服务终结点。可以选择包括Azure Cosmos DB、Azure服务总线、Azure Key Vault等。
配置这些设置后,选择“创建”。
定义其他设置
创建虚拟网络后,可定义其他设置。这些设置包括:
网络安全组
网络安全组包含安全规则,使用这些规则可以筛选可流入和流出虚拟网络子网与网络接口的流量类型。请单独创建网络安全组,然后将其与虚拟网络相关联。路由表
Azure自动为Azure虚拟网络中的每个子网创建一个路由表,并向该表添加系统默认路由。但是,可以通过添加自定义路由表来修改虚拟网络之间的流量。
你也可以修改服务终结点。
配置虚拟网络
创建虚拟网络后,可在Azure门户的“虚拟网络”窗格中更改其他任何设置。也可以使用PowerShell命令或Cloud Shell中的命令进行更改。
此外,你还可以在其他子窗格中查看并更改设置。这些设置包括:
- 地址空间:可以向初始定义添加更多地址空间。
- 连接的设备:使用虚拟网络连接计算机。
- 子网:添加其他子网。
- 对等互连:以对等互连方式链接虚拟网络。
还可以监视虚拟网络并排查其错误,或者创建用于生成当前虚拟网络的自动化脚本。
虚拟网络是用于连接Azure中实体的强大且高度可配置的机制。可将Azure资源互相连接,或者连接到本地资源。你可以隔离、筛选和路由网络流量,Azure允许你根据需要提高安全性。
本文原文来自微软官方文档