ESC

Start typing to search across invoices, services, domains, tickets, and more...

Search... Ctrl+K
ネットワーク・IP

Linux/WindowsサーバーでIPv6アドレスを設定する方法:Netplan・nmcli・Windows

6 ステップ 6 分で読めます 4 回閲覧 0
目次

プロバイダーからIPv6アドレスが割り当てられていても、OSが自動取得しない場合は手動で設定する必要があります。本記事では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が無効化されていないか確認

一部のOSイメージでは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アドレス、routesに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を設定

メインNICの設定の後に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アドレスを設定

GUIの場合:ncpa.cpl → アダプターを右クリック → プロパティ → 「インターネット プロトコル バージョン 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のゲートウェイ設定を見直します。

WebサイトをIPv6で公開するには何が必要ですか?

ドメインにサーバーのIPv6を指すAAAAレコードを追加し、WebサーバーがIPv6で待ち受けるよう設定します(Nginxなら listen [::]:80;)。

再起動後にIPv6アドレスが変わる・消えます。

プライバシー拡張やSLAACによる自動アドレスの可能性があります。サーバーでは静的設定を使い、cloud-initによる上書きも確認してください。

解決しない場合はチケットを送信して、IMIDCの24時間365日テクニカルサポートへご連絡ください。

この回答はお役に立ちましたか?

関連チュートリアル