使用 Azure PowerShell 的流量管理器子网替代

使用流量管理器子网替代可以更改配置文件的路由方法。 添加替代后,会使用预定义的 IP 地址范围到终结点的映射,基于最终用户的 IP 地址来定向流量。

子网替代的工作原理

将子网替代添加到流量管理器配置文件后,流量管理器会先检查最终用户的 IP 地址是否存在子网替代。 如果找到了替代,则用户的 DNS 查询将被定向到相应的终结点。 如果找不到映射,则流量管理器将回退到配置文件的原始路由方法。

可将 IP 地址范围指定为 CIDR 范围(例如 1.2.3.0/24)或地址范围(例如 1.2.3.4-5.6.7.8)。 与每个终结点关联的 IP 范围对于该终结点必须是唯一的。 不同终结点之间的 IP 地址范围出现任何重叠会导致流量管理器拒绝配置文件。

有两种类型的路由配置文件支持子网替代:

  • 地理 - 如果流量管理器找到了 DNS 查询的 IP 地址的子网替代,它会将该查询路由到终结点,而不管该终结点的运行状况如何。
  • 性能 - 如果流量管理器找到了 DNS 查询的 IP 地址的子网替代,它只会将流量路由到正常的终结点。 如果子网替代终结点不正常,流量管理器会回退到性能路由试探法。

注意

Azure 流量管理器支持子网配置文件的子网替代中的 IPv6 地址。 此功能基于 DNS 查询的源 IP 地址(包括 IPv4 和 IPv6 地址)对流量路由进行更精细的控制。

先决条件

如果选择在本地安装并使用 PowerShell,则本文需要 Azure PowerShell 模块 5.4.1 或更高版本。 运行 Get-Module -ListAvailable Az 查找已安装的版本。 如果需要进行升级,请参阅 Install Azure PowerShell module(安装 Azure PowerShell 模块)。 如果在本地运行 PowerShell,则还需运行 Connect-AzAccount -Environment AzureChinaCloud 以创建与 Azure 的连接。

创建流量管理器子网替代

若要创建流量管理器子网替代,可以使用 Azure PowerShell 将替代子网添加到流量管理器终结点。

向终结点添加 IP 地址范围

  1. 检索流量管理器终结点:

    若要启用子网替代,请使用 Get-AzTrafficManagerEndpoint 检索要将替代添加到的终结点,并将其存储在变量中。

    请将 Name、ProfileName 和 ResourceGroupName 替换为要更改的终结点的值。 在此示例中,我们使用终结点名称 myAppServicePlan 和配置文件名称 myTrafficManagerProfile

    
    $TrafficManagerEndpoint = Get-AzTrafficManagerEndpoint -Name "myAppServicePlan" -ProfileName "myTrafficManagerProfile" -ResourceGroupName "MyResourceGroup" -Type AzureEndpoints
    
    
  2. 将 IP 地址范围添加到终结点:

    若要将 IP 地址范围添加到终结点,请使用 Add-AzTrafficManagerIpAddressRange 添加范围。

    
    ### Add a range of IPs ###
    Add-AzTrafficManagerIPAddressRange -TrafficManagerEndpoint $TrafficManagerEndpoint -First "1.2.3.4" -Last "5.6.7.8"
    
    ### Add a subnet ###
    Add-AzTrafficManagerIPAddressRange -TrafficManagerEndpoint $TrafficManagerEndpoint -First "9.10.11.0" -Scope 24
    
    ### Add a range of IPs with a subnet ###
    Add-AzTrafficManagerIPAddressRange -TrafficManagerEndpoint $TrafficManagerEndpoint -First "12.13.14.0" -Last "12.13.14.31" -Scope 27
    
    

更新终结点

添加范围后,使用 Set-AzTrafficManagerEndpoint 更新终结点。


Set-AzTrafficManagerEndpoint -TrafficManagerEndpoint $TrafficManagerEndpoint

从终结点中删除 IP 地址范围

  1. 检索流量管理器终结点:

    若要启用子网替代,请使用 Get-AzTrafficManagerEndpoint 检索要将替代添加到的终结点,并将其存储在变量中。

    请将 Name、ProfileName 和 ResourceGroupName 替换为要更改的终结点的值。

    
    $TrafficManagerEndpoint = Get-AzTrafficManagerEndpoint -Name "myAppServicePlan" -ProfileName "myTrafficManagerProfile" -ResourceGroupName "MyResourceGroup" -Type AzureEndpoints
    
    
  2. 从终结点中删除 IP 地址范围:

    
    ### Remove a range of IPs ###
    Remove-AzTrafficManagerIpAddressRange -TrafficManagerEndpoint $TrafficManagerEndpoint -First "1.2.3.4" 
    
    ### Remove a subnet ###
    Remove-AzTrafficManagerIpAddressRange -TrafficManagerEndpoint $TrafficManagerEndpoint -First "9.10.11.0" 
    
    ### Remove a range of IPs with a subnet ###
    Remove-AzTrafficManagerIpAddressRange -TrafficManagerEndpoint $TrafficManagerEndpoint -First "12.13.14.0" 
    
    

更新终结点

删除范围后,使用 Set-AzTrafficManagerEndpoint 更新终结点。

Set-AzTrafficManagerEndpoint -TrafficManagerEndpoint $TrafficManagerEndpoint

后续步骤

详细了解流量管理器流量路由方法

了解子网流量路由方法