创建、更改或删除 Azure 公共 IP 地址
重要
基本 SKU 公共 IP 将于 2025 年 9 月 30 日停用。 有关详细信息,请查看官方公告。 如果当前使用的是基本 SKU 公共 IP,请确保在停用日期之前升级到标准 SKU 公共 IP。 有关升级的指导,请访问将基本公共 IP 地址升级为标准 SKU - 指导。
了解公共 IP 地址,以及如何创建、更改和删除此类地址。 公共 IP 地址是一个具有可配置设置的资源。
将公共 IP 地址分配给 Azure 资源时,需要启用以下操作:
从 Internet 到资源的入站通信,如 Azure 虚拟机 (VM)、Azure 应用程序网关、Azure 负载均衡器、Azure VPN 网关等。
使用可预测的 IP 地址与 Internet 建立出站连接。
注意
Azure 会为未分配公共 IP 地址的 VM 或位于内部基本 Azure 负载均衡器的后端池中的 VM 提供默认出站访问 IP。 默认出站访问 IP 机制会提供不可配置的出站 IP 地址。
发生以下事件之一时,将禁用默认出站访问 IP:
- 将公共 IP 地址分配给 VM。
- 虚拟机被放置在标准负载平衡器的后端池中,有无出站规则均可。
- 向虚拟机的子网分配了 Azure 虚拟网络 NAT 网关 资源。
在灵活业务流程模式下通过使用虚拟机规模集创建的 VM 没有默认的出站访问权限。
有关 Azure 中的出站连接的详细信息,请参阅 Azure 中的默认出站访问,使用源网络地址转换(SNAT)进行出站连接。
创建公共 IP 地址
有关如何使用 Azure 门户、PowerShell、CLI 或资源管理器模板来创建公共 IP 地址的说明,请参阅以下页面:
注意
门户提供了在资源部署期间同时创建 IPv4 和 IPv6 地址的选项。 PowerShell 和 Azure CLI 命令创建一个资源,即 IPv4 或 IPv6。 如果需要 IPv4 和 IPv6 地址,请执行 PowerShell 或 CLI 命令两次。 为公共 IP 地址资源指定不同的名称和 IP 版本。
如需详细了解创建过程中公共 IP 地址的特定属性,请参阅下表:
设置 | 必需? | 详细信息 |
---|---|---|
IP 版本 | 是 | 选择 IPv4 或 IPv6 或“两者”。 选择“两者”将创建两个公共 IP 地址,一个 IPv4 和一个 IPv6。 有关更多信息,请参阅适用于 Azure 虚拟网络的 IPv6 概述。 |
SKU | 是 | 引入 SKU 之前创建的所有公共 IP 地址均为基本 SKU 公共 IP 地址。 创建公共 IP 地址后,无法更改此 SKU。 独立虚拟机、可用性集内的虚拟机或虚拟机规模集可使用基本 SKU 或标准 SKU。 不允许在可用性集或规模集或独立 VM 内的虚拟机之间混用 SKU。 基本:基本公共 IP 不支持可用性区域。 如果要在支持可用性区域的区域内创建公共 IP 地址,“可用性区域”设置默认设为“无”。 标准:标准公共 IP 地址可以关联到支持公共 IP 的 Azure 资源,例如虚拟机、负载均衡器和 Azure 防火墙。 如果要在支持可用性区域的区域内创建 IP 地址,“可用性区域”设置默认设为“区域冗余”。 有关可用性区域的详细信息,请参阅“可用性区域”设置。 将地址关联到标准负载均衡器时需使用标准 SKU。 有关标准负载均衡器的详细信息,请参阅 Azure 负载均衡器标准 SKU。 将标准 SKU 公共 IP 地址分配到虚拟机的网络接口时,必须使用网络安全组显式允许预期流量。 创建并关联网络安全组且显式允许所需流量之后,才可与资源通信。 |
名称 | 是 | 名称在所选资源组中必须唯一。 |
IP 地址分配 | 是 | 动态: 将某个公共 IP 地址关联到 Azure 资源并首次启动后,才会分配动态地址。 如果虚拟机等资源停止(解除分配)后又通过 Azure 重新启动,则动态地址可能会更改。 如果虚拟机从来宾 OS 中重启或停止,该地址将保持不变。 从资源中删除公共 IP 地址资源时,将释放动态地址。 静态:创建公共 IP 地址时,将分配静态地址。 在删除公共 IP 地址资源之前,不会释放静态地址。 如果选择 IPv6 作为 IP 版本,则对于基本 SKU,分配方法必须为“动态”。对于 IPv4 和 IPv6,标准 SKU 地址均为“静态”。 |
空闲超时(分钟) | 否 | 不依赖于客户端发送“保持连接”消息,将 TCP 或 HTTP 连接保持打开的分钟数。 如果选择 IPv6 作为“IP 版本”,则值设置为 4 分钟并且无法更改。 |
DNS 名称标签 | 否 | 必须在创建该名称的 Azure 位置(所有订阅和所有客户)中保持唯一。 Azure 会在其 DNS 中自动注册该名称和 IP 地址,使你能够连接到使用该名称的资源。 Azure 会将默认子网(例如 location.cloudapp.chinacloudapi.cn)追加到你提供的名称后面,以创建完全限定的 DNS 名称。 如果选择同时创建这两个地址版本,则会将相同的 DNS 名称分配给 IPv4 和 IPv6 地址。 Azure 的默认 DNS 包含 IPv4 A 和 IPv6 AAAA 名称记录。 DNS 查找过程中,默认 DNS 会响应这两条记录。 客户端选择要与哪个地址(IPv4 或 IPv6)通信。 可使用 Azure DNS 服务来配置带有自定义后缀(可解析为公共 IP 地址)的 DNS 名称。 有关详细信息,请参阅将 Azure DNS 与 Azure 公共 IP 地址配合使用。 |
名称(仅选择“两者”的 IP 版本时才可见) | 是,如果选择“两者”的 IP 版本 | 该名称必须不同于之前在此列表中的“名称”中输入的名称。 如果同时创建 IPv4 和 IPv6 地址,门户将创建两个单独的公共 IP 地址资源。 部署创建一个 IPv4 地址和一个 IPv6 地址。 |
IP 地址分配(仅选择“两者”的 IP 版本时才可见) | 是,如果选择“两者”的 IP 版本 | 与上面的 IP 地址分配有相同的限制。 |
订阅 | 是 | 必须与你要将公共 IP 关联到的资源存在于同一订阅中。 |
资源组 | 是 | 可以与你将公共 IP 关联到的资源存在于同一或不同的资源组中。 |
位置 | 是 | 必须存在于你将公共 IP 关联到的资源所属的同一位置(也称为区域)中。 |
可用性区域 | 否 | 选择受支持的位置和 IP 地址类型时才会显示此设置。 “基本”SKU 公共 IP 不支持可用性区域。 可以选择无区域(默认选项)、特定区域或区域冗余。 请根据特定的域故障要求做出选择。 有关支持的位置列表和可用性区域的详细信息,请参阅可用性区域概述。 |
查看、修改公共 IP 地址的设置或删除公共 IP 地址
查看/列出:查看公共 IP 的设置(包括 SKU、地址和任何关联项)。 关联项可以是负载均衡器前端、虚拟机和其他 Azure 资源。
修改:使用创建公共 IP 地址中的信息来修改设置。 设置,例如空闲超时、DNS 名称标签或分配方法。 有关将公共 IP SKU 从基本升级到标准的完整过程,请参阅升级 Azure 公共 IP 地址。
警告
若要将公共 IP 的分配方法从静态更改为动态,必须先从任何适用的 IP 配置中删除地址(请参阅“删除”部分)。 将分配方法从静态更改为动态时,将丢失分配给公共 IP 地址的 IP 资源。 尽管 Azure 公共 DNS 服务器会保留静态或动态地址与任何 DNS 名称标签(若已定义)之间的映射,但如果虚拟机在处于停止(解除分配)状态之后启动,动态 IP 地址可能更改。 为防止地址变化,请分配静态 IP 地址。
操作 | Azure 门户 | Azure PowerShell | Azure CLI |
---|---|---|---|
查看 | 在公共 IP 的“概述”部分中 | 使用 Get-AzPublicIpAddress 来检索公共 IP 地址对象并查看其设置 | 使用 az network public-ip show 来显示设置 |
列出 | 在“公共 IP 地址”类别下 | 使用 Get-AzPublicIpAddress 来检索一个或多个公共 IP 地址对象并查看其设置 | 使用 az network public-ip list 来列出公共 IP 地址 |
修改 | 对于取消关联的 IP,选择“配置”可执行以下操作: 修改空闲超时。 DNS 名称标签 将 IP 的分配方式从静态更改为动态。 将基本 IP 升级到标准 IP。 |
使用 Set-AzPublicIpAddress 来更新设置 | 使用 az network public-ip update 进行更新 |
- 删除:若要删除公共 IP,需要该公共 IP 对象不与任何 IP 配置或虚拟机 NIC 关联。 有关详细信息,请参阅下表。
资源 | Azure 门户 | Azure PowerShell | Azure CLI |
---|---|---|---|
虚拟机 | 选择“取消关联”,以将该 IP 地址与 NIC 配置取消关联,然后选择“删除”。 | 使用 Set-AzNetworkInterface 来将该 IP 地址与 NIC 配置取消关联;使用 Remove-AzPublicIpAddress 来删除 | az network nic ip-config update 并使用参数 --public-ip-address”从 NIC 配置中删除 IP 地址。 使用 az network public-ip delete 删除公共 IP。 |
负载均衡器前端 | 导航到未使用的公共 IP 地址并选择“关联”。 选取具有相关前端 IP 配置的负载均衡器来替换 IP。 可以使用与用于虚拟机的同一方法来删除旧 IP。 | 使用 Set-AzLoadBalancerFrontendIpConfig 将新的前端 IP 配置关联到公共负载均衡器。 使用 Remove-AzPublicIpAddress 删除公共 IP。 也可使用 Remove-AzLoadBalancerFrontendIpConfig 删除前端 IP 配置(如果有多个)。 | 使用 az network lb frontend-ip update 将新的前端 IP 配置关联到公共负载均衡器。 使用 Remove-AzPublicIpAddress 删除公共 IP。 也可使用 az network lb frontend-ip delete 删除前端 IP 配置(如果有多个)。 |
防火墙 | 空值 | 使用解除分配来解除分配防火墙并删除所有 IP 配置 | 使用 az network firewall ip-config delete 删除 IP。 先使用 PowerShell 解除分配。 |
虚拟机规模集
对于具有公共 IP 的虚拟机规模集,不存在与单个虚拟机实例关联的独立公共 IP 对象。 公共 IP 前缀对象可用于生成实例 IP。
若要列出虚拟机规模集上的公共 IP,可以使用 PowerShell (Get-AzPublicIpAddress -VirtualMachineScaleSetName) 或 CLI (az Virtual Machine Scale Set list-instance-public-ips)。
有关详细信息,请参阅 Azure 虚拟机规模集的网络。
分配公共 IP 地址
了解如何将公共 IP 地址分配给以下资源:
上市区域
Azure 公共 IP 在所有区域中都可用。 Azure 公共 IP 不会将客户数据移出部署的区域或存储到部署区域以外的区域。
权限
若要管理公共 IP 地址,必须将你的帐户分配给网络参与者角色。 还支持自定义角色。 必须为自定义角色分配下表中列出的适当操作:
操作 | 名称 |
---|---|
Microsoft.Network/publicIPAddresses/read | 读取公共 IP 地址 |
Microsoft.Network/publicIPAddresses/write | 创建或更新公共 IP 地址 |
Microsoft.Network/publicIPAddresses/delete | 删除公共 IP 地址 |
Microsoft.Network/publicIPAddresses/join/action | 将公共 IP 地址关联到资源 |
后续步骤
公共 IP 地址会产生少许费用。 若要查看定价,请参阅 IP 地址定价页。
- 使用 PowerShell 或 Azure CLI 示例脚本或使用 Azure 资源管理器模板创建公共 IP 地址
- 为公共 IP 地址创建和分配 Azure Policy 定义