Azure虚拟网络(VNet)是Azure中私有网络的基本构件。VNet支持许多类型的Azure资源,比如Azure虚拟机(VM),来安全地与internet和内部网络进行通信。VNet类似于您在自己的数据中心中操作的传统网络,但它也带来了Azure基础设施的额外好处,如可伸缩性、可用性和隔离性。
VNet 的概念
- Address space:在创建VNet时,必须使用公共和私有(RFC 1918)地址指定自定义私有IP地址空间。Azure从您分配的地址空间中为虚拟网络中的资源分配一个私有IP地址。例如,如果您在地址空间为10.0.0.0/16的VNet中部署VM,那么将为VM分配一个类似于10.0.0.4的私有IP。
- 子网:子网使您能够将虚拟网络分割成一个或多个子网,并为每个子网分配部分虚拟网络的地址空间。然后可以在特定的子网中部署Azure资源。与传统网络一样,子网允许您将VNet地址空间分割成适合组织内部网络的段。这也提高了地址分配效率。您可以使用网络安全组保护子网中的资源。有关更多信息,请参见安全组。
- 区域:VNet的作用域为单个区域/位置;然而,使用虚拟网络对等技术可以将来自不同区域的多个虚拟网络连接在一起。
- 订阅:VNet的作用域是订阅。您可以在每个Azure订阅和Azure区域内实现多个虚拟网络。
最佳实践
当你在Azure中构建你的网络时,记住以下通用的设计原则是很重要的:
- 确保地址空间不重叠。确保您的VNet地址空间(CIDR块)不与您组织的其他网络范围重叠。
- 您的子网不应该覆盖VNet的整个地址空间。提前计划,为将来预留一些地址空间。
- 建议您使用更少的大型vnet,而不是多个小型vnet。这将防止管理开销。
- 使用网络安全组(NSGs)保护您的VNet。
与互联网沟通
默认情况下,VNet中的所有资源都可以与internet进行出站通信。您可以通过分配公共IP地址或公共负载均衡器与资源进行入站通信。您还可以使用公共IP或公共负载均衡器来管理出站连接。要了解关于Azure中的出站连接的更多信息,请参见出站连接、公共IP地址和负载均衡器。
请注意
仅使用内部标准负载平衡器时,在定义希望出站连接如何使用实例级公共IP或公共负载平衡器之前,出站连接是不可用的。
Azure资源之间的通信
Azure资源之间的安全通信方式有以下几种:
- 通过虚拟网络(virtual network):您可以将vm和其他几种类型的Azure资源部署到虚拟网络中,比如Azure应用程序服务环境、Azure Kubernetes服务(AKS)和Azure虚拟机规模集。要查看可以部署到虚拟网络中的Azure资源的完整列表,请参阅虚拟网络服务集成。
- 通过虚拟网络服务端点(virtual network service endpoint:):通过直接连接将虚拟网络私有地址空间和虚拟网络的身份扩展到Azure服务资源,如Azure存储帐户和Azure SQL数据库。服务端点允许您将关键的Azure服务资源仅保护到一个虚拟网络。要了解更多信息,请参见虚拟网络服务端点概述。
- 通过VNet对等连接(VNet Peering):通过使用虚拟网络对等连接,您可以将虚拟网络连接到其他网络,从而使两个虚拟网络中的资源能够相互通信。您连接的虚拟网络可以位于相同的Azure区域,也可以位于不同的Azure区域。有关更多信息,请参见虚拟网络对等。
与on-premises资源沟通
你可以使用下列选项的任何组合,将你的本地电脑和网络连接至虚拟网络:
- 点到点虚拟专用网(VPN)(Point-to-site virtual private network (VPN)):在虚拟网络和网络中的一台计算机之间建立。希望与虚拟网络建立连接的每台计算机都必须配置其连接。如果您刚刚开始使用Azure,或者对于开发人员来说,这种连接类型非常好,因为它只需要对您现有的网络进行很少或根本不需要进行更改。您的计算机和虚拟网络之间的通信是通过internet上的加密隧道发送的。要了解更多信息,请参见点到点VPN。
- 站点到站点VPN(Site-to-site VPN):在您的本地VPN设备和部署在虚拟网络中的Azure VPN网关之间建立。此连接类型允许您授权访问虚拟网络的任何本地资源。您的本地VPN设备和Azure VPN网关之间的通信是通过internet上的加密隧道发送的。要了解更多信息,请参见站点到站点VPN。
- Azure ExpressRoute:通过一个ExpressRoute合作伙伴,在您的网络和Azure之间建立。这个连接是私有的。网络上没有流量。要了解更多,请参见高速公路。
过滤网络流量
您可以过滤网络之间的网络流量使用以下任一或两个选项:
- 安全组(Security groups):网络安全组和应用程序安全组可以包含多个入站和出站安全规则,使您能够根据源和目标IP地址、端口和协议对进出资源的流量进行过滤。要了解更多信息,请参见网络安全组或应用程序安全组。
- 网络虚拟设备(Network virtual appliances):网络虚拟设备是执行网络功能(如防火墙、WAN优化或其他网络功能)的VM。要查看可在虚拟网络中部署的可用网络虚拟设备列表,请参阅Azure Marketplace。
过滤网络流量
默认情况下,Azure路由子网、连接的虚拟网络、内部网络和Internet之间的通信。你可以实现以下选项中的一个或两个来覆盖Azure创建的默认路由:
- 路由表(Route tables):您可以创建自定义路由表,其中路由控制每个子网的流量被路由到何处。了解更多关于路由表。
- 边界网关协议(BGP)路由(Border gateway protocol (BGP) routes):如果您使用Azure VPN网关或ExpressRoute连接您的虚拟网络到您的本地网络,您可以将您的本地BGP路由传播到您的虚拟网络。了解更多关于使用Azure VPN网关和express路由的BGP。
Azure VNet限制
您可以部署的Azure资源的数量有一定的限制。大多数Azure网络限制都在最大值处。但是,您可以增加VNet限制(https://docs.microsoft.com/en-us/azure/azure-supportability/networking-quota-requests)页面中指定的某些网络限制(https://docs.microsoft.com/en-us/azure/azure-subscription-service-limits#networking-limits)。