你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
Azure 应用程序网关 支持来自客户端的双堆栈(IPv4 和 IPv6)前端连接。 若要使用 IPv6 前端连接,需要创建新的应用程序网关。 目前无法将现有 IPv4 仅应用程序网关升级到双堆栈(IPv4 和 IPv6)应用程序网关。 此外,目前不支持后端 IPv6 地址。
在本文中,你将使用 Azure 门户创建 IPv6 Azure 应用程序网关并对其进行测试以确保其正常工作。 将侦听器分配到端口、创建规则并将资源添加到后端池。 为简单起见,简单设置与两个公共前端 IP 地址(IPv4 和 IPv6)一起使用,这是在应用程序网关上托管单个站点的基本侦听器、基本请求路由规则和后端池中的两个虚拟机(VM)。
若要支持 IPv6 连接,必须创建双堆栈 VNet。 此双堆栈 VNet 具有 IPv4 和 IPv6 的子网。 Azure VNet 已 提供双堆栈功能。
有关应用程序网关组件的详细信息,请参阅 应用程序网关组件。
概述
Azure 门户用于创建 IPv6 Azure 应用程序网关。 执行测试以验证它是否正常工作。
学习如何:
还可以使用 Azure PowerShell 完成本快速入门。
区域和可用性
IPv6 应用程序网关可用于支持应用程序网关 v2 SKU 的所有公有云区域。 它还在由世纪互联和 Azure 政府运营的 Azure Microsoft中提供
局限性
- 只有 v2 SKU 支持具有 IPv4 和 IPv6 地址的前端
- 目前不支持 IPv6 后端
- 目前不支持 IPv6 专用链接
- 目前不支持仅限 IPv6 的应用程序网关。 应用程序网关必须是双堆栈(IPv6 和 IPv4)
- 应用程序网关入口控制器 (AGIC) 不支持 IPv6 配置
- 无法将现有的 IPv4 应用程序网关升级到双堆栈应用程序网关
- 目前不支持具有 IPv6 匹配条件的 WAF 自定义规则
先决条件
需要具有活动订阅的 Azure 帐户。 如果还没有帐户,可以 免费创建帐户。
使用 Azure 帐户登录到 Azure 门户 。
创建应用程序网关
使用“ 创建应用程序网关 ”页上的选项卡创建应用程序网关。
- 在 Azure 门户菜单或 主页 上,选择“ 创建资源”。
- 在“类别”下,选择“网络”,然后在“常用 Azure 服务”列表中选择应用程序网关。
“基本”选项卡
在 “基本信息 ”选项卡上,输入应用程序网关设置的以下值:
订阅:选择订阅。 例如, _mysubscription。
资源组:选择资源组。 如果不存在,请选择“ 新建 ”以创建它。 例如 ,myresourcegroupAG。
应用程序网关名称:输入应用程序网关的名称。 例如 ,myappgw。
IP 地址类型:选择双堆栈(IPv4 和 IPv6)。
配置虚拟网络:若要使 Azure 在创建的资源之间进行通信,需要双堆栈虚拟网络。 可以创建新的双堆栈虚拟网络,也可以选择现有的双堆栈网络。 在此示例中,将创建一个新的双堆栈虚拟网络,同时创建应用程序网关。
应用程序网关实例是在单独的子网中创建的。 此示例中创建一个双堆栈子网和一个仅限 IPv4 的子网:将 IPv4 和 IPv6 子网(预配为一个双堆栈子网)分配给应用程序网关。 IPv4 子网适用于后端服务器。
注释
应用程序网关子网目前不支持虚拟网络服务终结点策略。 在 “配置虚拟网络”下,通过选择“ 新建”创建新的虚拟网络。 在“ 创建虚拟网络 ”窗格中,输入以下值来创建虚拟网络和两个子网:
- 名称:输入虚拟网络的名称。 例如 ,myVNet。
- 子网名称 (应用程序网关子网): 子网 网格显示名为 默认值的子网。 将此子网的名称更改为 myAGSubnet。
- 地址范围 - VNet 和子网的默认 IPv4 地址范围分别为 10.0.0.0/16 和 10.0.0.0/24。 VNet 和子网的默认 IPv6 地址范围分别为 ace:cab::/48 和 ace:cab::deca::/64。 如果看到不同的默认值,则可能具有与这些范围重叠的现有子网。
注释
应用程序网关子网只能包含应用程序网关。 不允许使用其他资源。
选择 “确定” 关闭“ 创建虚拟网络 ”窗口,并保存新的虚拟网络和子网设置。
选择 “下一步:前端”。
“前端”选项卡
在 “前端 ”选项卡上,验证 前端 IP 地址类型 是否设置为 “公共”。
重要
对于 专用应用程序网关,可以配置专用 IPv6 前端 IP,但还必须配置专用 IPv4 地址。 换句话说,仅专用应用程序网关需要专用 IPv4 和专用 IPv6 地址。
为公共 IP 地址选择“添加新”,输入公共 IP 地址的名称,然后选择“确定”。 例如 ,myAGPublicIPAddress。
注释
IPv6 应用程序网关最多支持 4 个前端 IP 地址:两个 IPv4 地址(公共和专用)和两个 IPv6 地址(公共和专用)
选择 “下一步:后端”。
“后端”选项卡
后端池用于将请求路由到为请求提供服务的后端服务器。 后端池可以由 NIC、虚拟机规模集、公共 IP 地址、内部 IP 地址、完全限定的域名(FQDN)和多租户后端(例如 Azure 应用服务)组成。 在此示例中,将使用应用程序网关创建一个空后端池,然后将后端目标添加到后端池。
在“ 后端 ”选项卡上,选择“ 添加后端池”。
在 “添加后端池 ”窗格中,输入以下值来创建空后端池:
- 名称:输入后端池的名称。 例如 ,myBackendPool。
- 添加没有目标的后端池:选择 “是 ”以创建没有目标的后端池。 创建应用程序网关后会添加后端目标。
选择 “添加” 以保存后端池配置并返回到 “后端 ”选项卡。
在“ 后端 ”选项卡上,选择“ 下一步:配置”。
“配置”选项卡
在 “配置 ”选项卡上,前端池和后端池与路由规则连接。
在 “路由规则”下,选择 “添加路由规则”。
在 “添加路由规则 ”窗格中,输入以下值:
- 规则名称:输入规则的名称。 例如 ,myRoutingRule。
- 优先级:输入介于 1 和 20000 之间的值,其中 1 表示最高优先级,20000 表示最低。 例如,输入优先级 为 100。
路由规则需要侦听器。 在 “侦听器 ”选项卡上,输入以下值:
侦听器名称:输入侦听器的名称。 例如 ,myListener。
前端 IP:选择 公共 IPv6。
接受 侦听器 选项卡上其他设置的默认值,然后选择 “后端目标 ”选项卡。
在 “后端目标 ”选项卡上,选择 后端目标的后端池。 例如 ,myBackendPool。
对于 后端设置,请选择“ 添加新”。 后端设置确定路由规则的行为。 在 “添加后端设置 ”窗格中,输入后端设置名称。 例如 ,myBackendSetting。
接受其他设置的默认值,然后选择“ 添加”。
在 “添加路由规则 ”窗格中,选择“ 添加 ”以保存路由规则并返回到 “配置 ”选项卡。
选择“ 下一步:标记”,选择“ 下一步:查看 + 创建”,然后选择“ 创建”。 部署应用程序网关需要几分钟时间。
将 DNS 名称分配给前端 IPv6 地址
DNS 名称可简化 IPv6 应用程序网关的测试。 可以使用自己的域和注册机构分配公共 DNS 名称,也可以在 azure.com 中创建名称。 若要在 azure.com 中分配名称,
在 Azure 门户主页中,搜索 公共 IP 地址。
选择 MyAGPublicIPv6Address。
在 “设置”下,选择“ 配置”。
在 DNS 名称标签(可选)下,输入名称。 例如 ,myipv6appgw。
选择“保存”。
将 FQDN 复制到文本编辑器以供以后访问。 在以下示例中,FQDN myipv6appgw.westcentralus.cloudapp.azure.com。
添加后端子网
后端目标需要后端 IPv4 子网。 后端子网仅限 IPv4。
在门户主页上,搜索虚拟网络并选择 MyVNet 虚拟网络。
在 地址空间旁边,选择 10.0.0.0/16。
在 “设置”下,选择 “子网”。
选择 “+ 子网 ”以添加新子网。
在 “名称”下,输入 MyBackendSubnet。
默认地址空间为 10.0.1.0/24。 选择 “保存 ”以接受此设置和所有其他默认设置。
添加后端目标
接下来,将添加后端目标以测试应用程序网关:
注释
此处仅部署一个虚拟机作为后端目标,因为我们只是测试连接。 如果还希望测试负载均衡,可以添加多个虚拟机。
创建虚拟机
应用程序网关可以将流量路由到后端池中使用的任何类型的虚拟机。 此示例使用了 Windows Server 2019 Datacenter 虚拟机。
- 在 Azure 门户菜单或 主页 上,选择“ 创建资源”。
- 在“常用”列表中选择 Windows Server 2019 Datacenter。 此时会显示“ 创建虚拟机 ”页。
- 在 “基本信息 ”选项卡上输入以下值:
- 资源组:选择 myResourceGroupAG。
- 虚拟机名称:输入 myVM。
- 区域:选择创建应用程序网关的同一区域。
- 用户名:输入管理员用户名的名称。
- 密码:输入密码。
- 公共入站端口: 无。
- 接受其他默认值,然后选择“ 下一步:磁盘”。
- 接受“ 磁盘 ”选项卡默认值,然后选择“ 下一步:网络”。
- 在 虚拟网络旁边,验证是否已选择 myVNet 。
- 在 子网旁边,验证 是否已选择 myBackendSubnet 。
- 在 公共 IP 旁边,选择 “无”。
- 选择 “下一步:管理”、“ 下一步:监视”,然后选择 “启动诊断 ”旁边的“ 禁用”。
- 选择“查看 + 创建”。
- 在“ 审阅 + 创建 ”选项卡上,查看设置,更正任何验证错误,然后选择“ 创建”。
- 等待虚拟机创建完成,然后继续作。
安装用于测试的 IIS
在此示例中,会在虚拟机上安装 IIS,以验证 Azure 是否已成功创建应用程序网关。
打开 Azure PowerShell。
从 Azure 门户的顶部导航栏中选择 Cloud Shell ,然后从下拉列表中选择 PowerShell 。
运行以下命令,在虚拟机上安装 IIS。 如有必要,请更改 Location 参数:
Set-AzVMExtension ` -ResourceGroupName myResourceGroupAG ` -ExtensionName IIS ` -VMName myVM ` -Publisher Microsoft.Compute ` -ExtensionType CustomScriptExtension ` -TypeHandlerVersion 1.4 ` -SettingString '{"commandToExecute":"powershell Add-WindowsFeature Web-Server; powershell Add-Content -Path \"C:\\inetpub\\wwwroot\\Default.htm\" -Value $($env:computername)"}' ` -Location WestCentralUS请参阅以下示例:
将后端服务器添加到后端池
在 Azure 门户菜单上,选择 “应用程序网关 ”或搜索并选择“*应用程序网关”。 然后选择 myAppGateway。
在 “设置”下,选择 “后端池 ”,然后选择 myBackendPool。
在 “后端目标”下, “目标类型”从下拉列表中选择 虚拟机 。
在 “目标”下,从下拉列表中选择 myVM 网络接口。
选择“保存”。
等待部署完成,然后继续执行下一步。 部署需要几分钟时间。
测试应用程序网关
创建应用程序网关不需要 IIS。 此处已安装它以验证你是否能够成功连接到应用程序网关的 IPv6 接口。
以前,我们已将 DNS 名称 myipv6appgw.westcentralus.cloudapp.azure.com 分配给应用程序网关的公共 IPv6 地址。 测试此连接:
将 DNS 名称粘贴到浏览器的地址栏中以连接到它。
检查响应。 myVM 的有效响应验证应用程序网关是否已成功创建,并且能够成功连接到后端。
重要
如果与 DNS 名称或 IPv6 地址的连接失败,可能是因为无法从设备浏览 IPv6 地址。 若要检查此问题是否为问题,请测试应用程序网关的 IPv4 地址。 如果 IPv4 地址成功连接,则可能没有分配给设备的公共 IPv6 地址。 如果是这种情况,可以尝试使用 双堆栈 VM 测试连接。
清理资源
如果不再需要使用应用程序网关创建的资源,请删除资源组。 删除资源组时,还会删除应用程序网关和所有相关资源。
若要删除资源组,请执行以下作:
- 在 Azure 门户菜单上,选择 “资源组 ”或搜索并选择 “资源组”。
- 在 “资源组 ”页上,在列表中搜索 myResourceGroupAG ,然后选择它。
- 在 “资源组”页上,选择“ 删除资源组”。
- 在“键入资源组名称”下输入 myResourceGroupAG,然后选择“删除”