【问题标题】:Associate static IP to a Azure SQL server/database将静态 IP 关联到 Azure SQL 服务器/数据库
【发布时间】:2016-05-10 18:08:41
【问题描述】:

我需要关联一个公共静态 IP 地址指向 Azure SQL 服务器,该服务器只有 DNS 名称,但没有 IP 地址。我已经尝试过 Azure 负载均衡器、流量管理器和 DNS,并且在任何服务中都有一个选项可以关联指向数据库名称的静态 IP,例如数据库名称是:testnetmarksrv.database.windows.net 有什么选择……?

【问题讨论】:

  • 不确定我是否理解这个问题,但 SQL 数据库不为您提供静态 IP 地址。你会得到一个名字 (yourdb.database.windows.net)。为什么需要使用静态 IP 地址?
  • 公司的防火墙合规性只允许静态IP规则,使用某些命令我们可以获取SQL实例运行的IP地址但是如果物理服务器重新启动IP更改,所以我需要将公共静态 IP 关联到 AZ SQL DB,我已经尝试过 Azure 负载均衡器、流量管理器和 DNS。
  • 是否可以切换到托管实例?此 SQL 方法为您提供了一个可以为其分配公共静态 IP 的 VM。不过这可能会更贵。

标签: azure azure-sql-database load-balancing


【解决方案1】:

此架构提供了答案 Azure SQL Database gateway IP addresses 。 包含每个区域的公共 IP 地址的表是您需要用于防火墙配置的表,其中网关的公共 IP 地址作为防火墙上的目标地址,并且还允许在端口 1433 上出站流量,因为这是唯一的端口网关将监听。 我进行了一些测试以确保 mydatabase.windows.net 解析为表中显示的 IP 地址,并且它似乎对我有用。我不知道这是否是微软为其 IP 地址列出公共 IP 地址的官方记录,因为我在该列表中看不到一些较新的数据中心。您需要做的另一件事是将 Azure SQL Datase 连接设置为代理模式。 following powershell 将设置它。

获取 SQL Server ID

$sqlserverid=(Get-AzSqlServer -ServerName sql-server-name -ResourceGroupName sql-server-group).ResourceId

设置 URI

$id="$sqlserverid/connectionPolicies/Default"

获取当前连接策略

(Get-AzResource -ResourceId $id).Properties.connectionType

更新连接策略

Set-AzResource -ResourceId $id -Properties @{"connectionType" = "Proxy"} -f

我不确定您为什么需要限制出站 SQL 流量,但我会敦促您也考虑限制与 Azure SQL 数据库的入站连接。 这应该在 Azure SQL 数据库所在的 Azure SQL Server 上完成。下面是一些有助于配置 Azure SQL Server 防火墙规则的资源,并提供了许多方法来设置防火墙规则,包括通过 protal、通过 SQL 和通过命令行。 Azure SQL Database and SQL Data Warehouse IP firewall rules

希望这会有所帮助!

【讨论】:

    【解决方案2】:

    没有。无法为 Azure SQL 数据库分配静态 IP 地址。此外,您所指的 (testnetmarksrv.database.windows.net) 指定您的 Azure SQL 数据库 服务器,而不是单个数据库。这是一个逻辑服务器,您最多可以在其中放置 149 个数据库(主数据库为 150 个)。

    您必须解决您对静态 IP 地址分配的要求才能使用 DNS 名称 (testnetmarksrv.database.windows.net)。

    【讨论】:

    • 公司的防火墙合规性只允许静态IP规则,使用某些命令我们可以获取SQL实例运行的IP地址但是如果物理服务器重新启动IP更改,所以我需要将公共静态 IP 关联到 AZ SQL DB,我已经尝试过 Azure 负载均衡器、流量管理器和 DNS。
    • 您是在谈论 Azure VM 上的 SQL Server 还是 Azure SQL 数据库?
    【解决方案3】:

    您需要将服务器连接策略设置为Proxy,如Azure SQL Connectivity Architecture 中所述。这允许数据库网关代理客户端和数据库服务器之间的所有流量。网关都有静态 IP 地址,在上面的文档中列出。

    目前,如果连接来自 Azure 外部,大多数区域默认使用 Proxy 连接策略,但这会在 2019 年 1 月 2 日发生变化,因此如果您需要静态 IP 地址,请务必明确设置该策略。

    【讨论】:

      猜你喜欢
      • 2015-09-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-09-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-11-14
      相关资源
      最近更新 更多