VNET peering场景下存储账户nslookup返公IP却可正常操作的疑问
问题解答
核心原因分析
VNET2的VM虽然解析到存储账户的公网IP,但仍能正常完成Blob上传、容器创建等操作,核心在于Azure存储账户的网络访问规则与VNET peering的路由逻辑共同作用:
- 当存储账户禁用公网访问时,默认会允许其所在VNET(VNET1)及已建立对等连接的VNET(VNET2)的内部流量访问。即使请求目标是存储账户的公网IP,Azure网络层会自动将该流量通过VNET peering路由至VNET1内部的存储账户私有端点,不会真正走公网传输。
- 存储账户的防火墙验证机制会检查请求来源的IP范围,VNET2作为VNET1的对等网络,其VM的IP会被识别为可信内部来源,因此请求会被正常处理,不会被拒绝。
补充说明
- 你观察到
nslookup返回公网IP,是因为VNET2未链接到存储账户对应的Private DNS Zone,导致DNS解析走公网DNS记录,但实际流量路径被Azure内部网络规则覆盖。 - 若要让VNET2的VM也解析到存储账户的私有IP,只需将VNET2链接到存储账户对应的Private DNS Zone即可。
内容的提问来源于stack exchange,提问作者Ravi Khambhati
相关产品推荐
相关产品推荐

