使用 IPv6 連接
適用於︰SQL Server 2019 - 僅限 Windows
SQL Server 和 SQL Server Native Client 完整支援網際網路通訊協定第 4 版 (IPv4) 與網際網路通訊協定第 6 版 (IPv6)。 在設定具有 IPv6 SQL Server 的 Windows 時,元件會自動辨識 IPv6 是否存在。 不需要特別的 SQL Server 組態。
支援包括但不限於下列各項:
SQL Server 資料庫引擎和其他伺服器元件可同時接聽 IPv4 和 IPv6 位址。 若同時存在 IPv4 和 IPv6,您可以使用 SQL Server 組態管理員,將資料庫引擎設定為只接聽 IPv4 位址或 IPv6 位址。
若在支援 IPv4 和 IPv6 的機器上執行的 SQL Server Browser 服務是在 IPv4 位址上接受查詢,它會使用 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 位址的用戶端上設定別名。