ESC

開始輸入,可搜尋發票、服務、域名、工單,以及 更多...

搜尋... Ctrl+K
網路與 IP

Linux / Windows 伺服器配置 IPv6 地址教程:Netplan、nmcli、Windows 設定與連通性測試

6 個步驟 6 分鐘閱讀 13 次閱讀 0
本文目錄

如果服務商為你的伺服器分配了 IPv6 地址,但系統沒有自動獲取,就需要手動配置。本文介紹如何在 Linux / Windows 伺服器配置 IPv6 地址,包括 Ubuntu Netplan、Debian /etc/network/interfaces、CentOS/Rocky/AlmaLinux 的 nmcli,以及 Windows Server 2016/2019/2022,最後用 ping6 和 curl -6 測試連通性。

並非所有產品預設附帶 IPv6。請先在客戶中心檢視是否已分配 IPv6 地址、字首長度和閘道器:登入客戶中心 → 我的產品與服務 → 選擇伺服器 → 管理;如找不到可提交工單申請或確認。下文以 2001:db8:1234::10/64、閘道器 2001:db8:1234::1 為示例。

步驟 1:確認 IPv6 未被停用

部分系統映象為了安全預設關閉了 IPv6,先檢查核心引數:

sysctl net.ipv6.conf.all.disable_ipv6
ip -6 addr show

若輸出為 1,說明已停用。可在 /etc/sysctl.conf 或 /etc/sysctl.d/ 中找到 disable_ipv6=1 的行改為 0,然後執行 sysctl --system。

步驟 2:Ubuntu 使用 Netplan 配置 IPv6 地址

編輯 /etc/netplan/ 下的配置檔案,在 addresses 中加入 IPv6 地址,並新增 IPv6 預設路由:

network:
  version: 2
  ethernets:
    eth0:
      addresses:
        - 198.51.100.5/24
        - "2001:db8:1234::10/64"
      routes:
        - to: default
          via: 198.51.100.1
        - to: "::/0"
          via: "2001:db8:1234::1"
      nameservers:
        addresses: [8.8.8.8, "2001:4860:4860::8888"]
netplan try
netplan apply

步驟 3:Debian 使用 /etc/network/interfaces 配置 IPv6

在主網絡卡配置後追加 inet6 段:

iface eth0 inet6 static
    address 2001:db8:1234::10/64
    gateway 2001:db8:1234::1
systemctl restart networking

步驟 4:CentOS / Rocky / AlmaLinux 使用 nmcli 配置 IPv6

nmcli connection modify eth0 ipv6.method manual \
  ipv6.addresses 2001:db8:1234::10/64 \
  ipv6.gateway 2001:db8:1234::1
nmcli connection up eth0

連線名可通過 nmcli connection show 檢視,與網絡卡名可能不同。

步驟 5:Windows Server 配置 IPv6 地址

圖形介面:ncpa.cpl → 右鍵網絡卡 → 屬性 → “Internet 協議版本 6 (TCP/IPv6)” → 選擇“使用以下 IPv6 地址”,填寫地址、字首長度 64 和預設閘道器。也可以在管理員 PowerShell 中執行:

New-NetIPAddress -InterfaceAlias "Ethernet" -AddressFamily IPv6 -IPAddress 2001:db8:1234::10 -PrefixLength 64 -DefaultGateway 2001:db8:1234::1
Set-DnsClientServerAddress -InterfaceAlias "Ethernet" -ServerAddresses ("8.8.8.8","2001:4860:4860::8888")

步驟 6:使用 ping6 與 curl -6 測試 IPv6 連通性

Linux:

ping -6 -c 4 2001:4860:4860::8888
curl -6 https://ifconfig.co

Windows:

ping -6 2001:4860:4860::8888
curl.exe -6 https://ifconfig.co

curl 返回你的 IPv6 地址即表示出站正常。再從另一台有 IPv6 的機器 ping 伺服器地址,確認入站可達。

IPv6 有獨立的防火牆規則:Linux 的 iptables 規則不會作用於 IPv6,需要單獨配置 ip6tables 或使用 nftables/firewalld/ufw 統一管理;Windows 防火牆規則一般同時覆蓋兩種協議。

常見問題

能 ping 通閘道器但無法訪問外網 IPv6?

檢查預設路由是否存在:ip -6 route show default。若缺失,請確認 Netplan/nmcli 中已正確填寫閘道器。

網站要通過 IPv6 訪問還需要做什麼?

為域名新增 AAAA 記錄指向伺服器 IPv6,並確認 Web 服務監聽 IPv6(Nginx 需配置 listen [::]:80;)。

重啟後 IPv6 地址變了或消失?

可能是系統啟用了隱私擴充套件或 SLAAC 自動地址。伺服器建議使用靜態配置,並檢查 cloud-init 是否覆蓋了網路配置。

如仍無法解決,可提交工單聯絡 IMIDC 7×24 技術支援。

這篇文章有幫助嗎?

相關教程