【问题标题】:Redirect traffic from Azure Public LB to VMs without public IP address将流量从 Azure 公共 LB 重定向到没有公共 IP 地址的 VM
【发布时间】:2021-09-20 06:10:57
【问题描述】:

我有一个托管在 2 个 Azure VM 上的网站(Web 服务器:IIS,操作系统:Win 2016,端口:80) 这两个 VM 都是同一可用性集和子网的一部分。 这些 VM 被添加到 Azure 公共 LB 的后端池中。 Azure LB 的入站 NAT 规则配置为将端口:80 上接收的流量重定向到目标 VM。 VM 子网的 NSG 已经有默认规则“AllowAzureLoadBalancerInBound”

  1. 这是从外部访问托管在 Azure VM 上的网站而无需为 VM 添加公共 IP 的正确配置之一吗?
  2. 目标虚拟机配置的“无”设置是什么意思?

我可以使用虚拟机的专用 IP 从同一 VNet 中的不同虚拟机访问托管在两个虚拟机上的站点。但我无法使用 Azure LB 的公共 IP 地址访问这些站点。 错误:“无法访问该站点”

当前配置:

  • 2 个虚拟机(10.2.0.4 和 10.2.0.5)

  • 负载均衡器有一个公共 IP。

  • 使用 LB 的公共 IP 添加一个前端 IP 配置。此前端配置用于入站 NAT 规则。

  • 入站 NAT 规则: 前端ip地址:负载均衡器公网IP,服务:HTTP,协议:UDP,端口:80,目标虚拟机:无,端口映射:默认

  • 后端池:将两个虚拟机的专用 IP 添加到后端池

  • 使用端口:80 创建了健康探测

  • 负载均衡规则:无

有人可以帮我解决这个问题吗?

【问题讨论】:

  • 能分享一下LB配置和后端状态吗?
  • @AndriyBilous 用更多细节更新了问题。后端池中两个 VM 的“资源状态”均显示为“正在运行”。
  • 您需要创建负载均衡规则。见例子msserverpro.com/…

标签: azure azure-load-balancer


【解决方案1】:

我必须自己使用 LB 规则而不是 NAT 规则。当我尝试将流量从公共 Internet 重定向到具有唯一私有 IP 地址的 VM 时,LB 规则最初不起作用。因此我开始尝试使用 NAT 规则。这是错误的选择。谢谢@Andriy。在使用网络观察程序对连接进行故障排除后,确定了根本原因。消息是“安全规则 DenyAllInBound”。由于我们系统上安装了安全工具,来自我们机器的请求使用不同的 IP 而不是我们的 ISP 的 IP 到达 Azure VM。因此,我为此 IP 添加了入站规则以使其正常工作。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-04-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多