使用 IPv6 进行连接

SQL Server 和 SQL Server Native Client 完全支持 Internet 协议版本 4 (IPv4) 和 Internet 协议版本 6 (IPv6)。将 Windows 配置为使用 IPv6 SQL Server 时,各组件会自动识别 IPv6 的存在。不必采用特殊的 SQL Server 配置。

支持包括但不限于下列各项:

  • SQL Server 数据库引擎和其他服务器组件可以同时侦听 IPv4 和 IPv6 地址。如果同时存在 IPv4 和 IPv6,则可以使用 SQL Server 配置管理器来配置数据库引擎,以便只侦听 IPv4 地址或只侦听 IPv6 地址。

  • 根据 IPv4 地址对运行于支持 IPv4 和 IPv6 的计算机上的 SQL Server Browser 服务进行查询时,该服务会对 IPv4 地址及其列表中的第一个 IPv4 TCP 端口做出响应。根据 IPv6 地址进行查询时,该服务会对 IPv6 地址及其列表中的第一个 IPv6 TCP 端口做出响应。为了避免出现不一致,建议将 IPv4 和 IPv6 侦听器配置为侦听相同的端口。

  • SQL Server Management Studio 和 SQL Server 配置管理器等工具都接受 IPv4 和 IPv6 格式的 IP 地址。大多数情况下,如果使用服务器主机名或完全限定域名 (FQDN) 指定 <computer_name>\<instance_name>,则无须修改连接字符串。如果服务器安装有 IPv4 和 IPv6,则其主机名或 FQDN 将会解析到多个 IP 地址,其中至少包括一个 IPv4 地址和多个 IPv6 地址。SQL Server Native Client 会按照从 TCP/IP 接收这些 IP 地址时的顺序尝试使用它们来建立连接,并使用第一个成功建立的连接。由于 SQL Server Native Client 无法预测顺序,因此,应将顺序视为随机顺序。如果同时存在 IPv4 地址和 IPv6 地址,则首先尝试使用 IPv4 地址。这一逻辑对于 ODBC、OLE DB 或 ADO.NET 的用户是透明的。

    注意注意

    如果数据库引擎未侦听 IPv4,则尝试进行 IPv4 连接之后,必须等待超时期限过后再尝试使用 IPv6 地址。为了避免出现这种情况,请直接连接到 IPv6 IP 地址或使用 IPv6 地址配置客户端的别名。

请参阅

概念