Azure SQL:无法从本地 ping 私有终结点

问题描述 投票:0回答:1

我已经设置了 Azure SQL PaaS 服务器和专用终结点 (PE),以便我可以通过 VPN 进行私密连接。但是,我无法从本地客户端 ping 端点 IP。由于不支持

ping
命令(因为 PE 不支持 ICMP 流量 - 请参阅 FAQ),我也使用了 psping。我的设置如下,我想就我所缺少的内容提供一些建议。

架构:本地 VPN 通过 S2S VPN 连接到 Azure 中心和分支环境(1 个集线器订阅+Vnet,3 个分支子+VNet。所有分支 Vnet 与集线器 Vnet 对等)。

PE 部署到辐条之一,进入子网(没有委派,但我检查了 Microsoft.Sql 服务)。 PE 在 Hub Sub 中使用私有 DNS 区域,该区域启用了到 Hub 和 Spoke VNet 的 Vnet 链接。 A 名称记录的存在是为了 DNS 目的(但在本例中我只是尝试测试 IP 连接)。

我还在所有 Sub 上注册了 Microsoft.Networks 和 Microsoft.Sql 资源提供程序。

Azure SQL 已关闭公共访问,并且将(批准的)PE 列为私有连接方法。

在我的本地笔记本电脑上,我希望能够打开 cmd 并 psping PE 的 ip,但它总是超时。为什么我做不到? (仅供参考 - 对于 FQDN 解析,我们有一个本地 DNS 服务器,但由于这是外部管理的,我还没有要求他们为 Azure DNS 专用解析器创建条件转发器以进行 DNS 查找。我想测试首先进行 ip ping 。我们在 Spoke VNet 中有一些私有(注入 VNet)的 PostgreSQL 灵活服务器,我可以使用它们的 IP 成功 ping 通这些服务器。谢谢

sql azure networking vpn ping
1个回答
1
投票

我已成功从本地客户端计算机连接到/ping 我的私有 Azure SQL 服务器的 FQDN。我将在此答案中列出所有要求:

  • Azure SQL Server(分配给 Spoke 订阅之一,禁用公共访问,启用私有访问并设置为如下所述的私有端点)
  • Azure SQL 数据库(连接到服务器)
  • a 子网*(添加
    Microsoft.Sql
    服务端点在我的场景中没有任何效果,但我还是启用了它)
  • 一个私有端点(部署到我的 Spoke VNet 之一、上面的子网中,与下面的私有 DNS 区域集成,目标子资源设置为
    sqlServer
  • 私有 DNS 区域(包含 SQL 服务器名称和私有端点私有 IP 地址的 A 类型记录,与集线器订阅关联,具有到集线器 VNet 的虚拟网络链接,以及所有 3 个分支 VNet)
  • 对于 each 订阅,在资源提供程序边栏选项卡中,确保
    Microsoft.Network
    (用于专用终结点使用)和
    Microsoft.Sql
    (用于 Azure SQL 使用)已注册
  • 位于中心 VNet 中的基于 Azure 的 DNS 转发器(VM 或 DNS 专用解析器)
  • 条件转发器添加到本地自定义 DNS 服务器,将对
    database.windows.net
    的查询定向到 Azure DNS 转发器的入站端点 IP 地址

*子网可能需要为其分配 NSG 和路由表,具体取决于您的 Azure 设置。

对我来说,整个解决方案启用了与 Azure SQL 数据库的本地私有连接。然后我可以 psping fqdn:port (普通 ping 命令对 PE 不起作用)。我希望其他人觉得这很有用。相关 MS 文档链接此处(参见下方第二张图片)和此处

这些文章中的相关图片:

© www.soinside.com 2019 - 2024. All rights reserved.