你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

Azure Virtual Network Manager 中的 IP 地址管理 (IPAM) 是什么?

重要说明

目前,Azure 虚拟网络管理器中的 IP 地址管理(IPAM)功能已在 Azure 虚拟网络管理器可用的所有区域中正式发布,但以下区域除外:智利中部、Jio 印度西部、马来西亚西部、卡塔尔中部、南非西部和印度西部。

有关 Azure Virtual Network Manager 可用性的最新信息,请参阅 Azure Virtual Network Manager 区域

在本文中,你将了解 Azure Virtual Network Manager 中的 IP 地址管理 (IPAM) 功能,以及它如何帮助你管理虚拟网络中的 IP 地址。 使用 Azure Virtual Network Manager 的 IP 地址管理时,你可以创建用于 IP 地址规划的池,自动将非重叠无类域间路由 (CIDR) 地址分配给 Azure 资源,并防止本地和多云环境中的地址空间冲突。

什么是 IP 地址管理 (IPAM)?

在 Azure 虚拟网络管理器中,IP 地址管理(IPAM)可帮助你使用 IP 地址池集中管理虚拟网络中的 IP 地址。

以下是 Azure Virtual Network Manager 中 IPAM 的一些主要功能:

  • 为 IP 地址规划创建池。

  • 自动将非重叠 CIDR 分配给 Azure 资源。

  • 为特定需求创建保留 IP。

  • 防止 Azure 地址空间与本地和云环境重叠。

  • 监视池中的 IP 和 CIDR 使用情况和分配。

  • 支持 IPv4 和 IPv6 地址池。

Azure Virtual Network Manager 中的 IPAM 的工作原理是什么?

Azure Virtual Network Manager 中的 IPAM 功能通过以下关键组件工作:

  1. 管理 IP 地址池

  2. 将 IP 地址分配到 Azure 资源

  3. 委派 IPAM 权限

  4. 简化资源创建

管理 IP 地址池

IPAM 允许网络管理员通过创建带有地址空间和相应大小的池来规划和整理 IP 地址使用情况。

这些池充当 CIDR 组的容器,为特定网络目的实现逻辑分组。 可以通过将较大的池划分为更小、更易于管理的池来创建池的结构化层次结构。 此层次结构提供对网络的 IP 地址空间更精细的控制和整理。

IPAM 中有两种类型的池:

  • 根池:在实例中创建的第一个池。 此池表示整个 IP 地址范围。

  • 子池:根池或其他子池的子集。 可以在根池或其他子池中创建多个子池。 最多可以有七层池。

将 IP 地址分配到 Azure 资源

可以将 Azure 资源(例如虚拟网络)分配给具有 CIDR 的特定池。 此分配可帮助你确定当前正在使用哪个 CIDR。

您还可以将固定CIDR分配到池中。 此分配可用于占用 Azure 中当前未使用的 CIDR 或 IPAM 服务尚不支持的 Azure 资源的一部分。 移除或删除关联的资源时,分配的 CIDR 将释放回池。 此过程可确保 IP 空间的有效利用率和管理。

委派 IPAM 的权限

使用 IPAM,可以将权限委托给其他用户,以利用 IP 地址池。 此方法可确保在实现池分配的民主化的同时控制访问和管理。

这些权限允许用户查看他们有权访问的池,这有助于他们根据需要选择正确的池。

委派权限还让其他人能够查看与池关联的资源的使用情况统计信息和列表。 在网络管理器中,可以访问完整的使用情况统计信息,包括:

  • 池中的 IP 总数。

  • 已分配池空间的百分比。

此外,池及其关联资源的详细信息提供了 IP 使用情况的完整概述。 此信息有助于更好地进行资源管理和规划。

简化资源创建

创建支持 CIDR 的资源(如虚拟网络)时,系统会自动从所选池分配 CIDR。 此过程简化了资源创建过程。

系统确保自动分配的CIDR 不会在池中重叠。 此功能维护网络完整性并防止冲突。

跨多个区域管理 IP 地址空间(预览版)

重要说明

使用 Azure 虚拟网络管理器跨多个区域管理 IP 地址空间目前为预览版,可在所有 Azure 公共区域中使用。 在预览版中,此功能的功能、可用性和其他方面可能会更改以响应反馈。

在预览期间,您可以将以下部分中列出的预览区域的虚拟网络关联到不同区域的一个池。 预览区域包括:

  • 西欧
  • 美国东部
  • 英国南部
  • 北欧
  • 美国中部

此预览版在没有服务级别协议的情况下提供,不建议用于生产工作负荷。 某些功能可能不受支持,或者可能具有受限功能。 有关详细信息,请参阅 Microsoft Azure 预览版补充使用条款

现在可以将单个 IPAM 池与多个区域中的虚拟网络相关联。 此功能简化了治理,并确保全局一致的 CIDR 分配。 Azure PowerShell 和 Azure CLI 在上述说明中列出的预览区域中支持此功能。

在区域 A 中创建虚拟网络,并与区域 B 中的 IPAM 池相关联

在以下示例中,在 区域 A 中创建一个虚拟网络,并将其与位于 区域 B 中的 IPAM 池相关联。


$ipamAllocation = '[{ 
  "numberOfIpAddresses": 100, 
  "id": "/subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft.Network/networkManagers/<network-manager-name>/ipamPools/<ipam-pool-name-region-b>" 
}]' 


az network vnet create `
    --name "<virtual-network-name>" `
    --resource-group "<resource-group-name>" `
    --ipam-allocations $ipamAllocation `
    --location "Region A"

将区域 A 中的虚拟网络与位于区域 B 中的 IPAM 池相关联

在以下示例中,将 区域 A 中的现有虚拟网络与位于 区域 B 中的 IPAM 池相关联:


$ipamAllocation = '[{ 
  "numberOfIpAddresses": 100, 
  "id": "/subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft.Network/networkManagers/<network-manager-name>/ipamPools/<ipam-pool-name-region-b>" 

}]' 

az network vnet update ` 
  --name "<virtual-network-name>" ` 
  --resource-group "<resource-group-name>" ` 
  --ipam-allocations $ipamAllocation ` 
  --location "Region A"

Azure Virtual Network Manager 中 IPAM 的权限要求

使用 IPAM 时,仅“IPAM 池用户”角色就足以委派。 如果出现权限问题,则还需要授予网络管理器读取访问权限,以确保在网络管理器范围内对 IP 地址池和虚拟网络具有完整可发现性。

如果没有此角色,只有“IPAM 池用户”角色的用户将看不到可用的池和虚拟网络。

深入了解 Azure 基于角色的访问控制 (Azure RBAC)

后续步骤