- [アーティクル]
-
-
Azure Marketplace の一部の Linux 仮想マシン イメージでは、動的ホスト構成プロトコル バージョン 6 (DHCPv6) が既定で構成されていません。 IPv6 をサポートするには、使用している Linux OS のディストリビューションで DHCPv6 を構成する必要があります。 Linux ディストリビューションによって使用するパッケージが異なるため、さまざまな方法で DHCPv6 は構成されます。
Note
Azure Marketplace の最近の SUSE Linux と CoreOS のイメージは DHCPv6 に対応するように事前構成されています。 これらのイメージを使用する場合、追加の変更は不要です。
このドキュメントでは、DHCPv6 を有効にしてお使いの Linux 仮想マシンが IPv6 アドレスを取得できるようにする方法について説明します。
警告
ネットワーク構成ファイルが適切に編集されていないと、VM へのネットワーク アクセスが失われるおそれがあります。 構成の変更は、運用環境以外のシステムでテストすることをお勧めします。 この記事の手順は、Azure Marketplace 内の最新バージョンの Linux イメージでテストされています。 詳細な手順については、お使いのバージョンの Linux のドキュメントを参照してください。
RHEL と Oracle Linux バージョン 7.4 以上の場合は、以下の手順に従ってください。
/etc/sysconfig/network ファイルを編集し、次のパラメーターを追加します。
NETWORKING_IPV6=yes
/etc/sysconfig/network-scripts/ifcfg-eth0 ファイルを編集し、次の 2 つのパラメーターを追加します。
IPV6INIT=yes
DHCPV6C=yes
IPv6 アドレスを次のように更新します。
sudo ifdown eth0 && sudo ifup eth0
Azure の最近の SUSE Linux Enterprise Server (SLES) と openSUSE のイメージは、DHCPv6 に対応するように事前構成されています。 これらのイメージを使用する場合、他の変更は不要です。 古い SUSE イメージまたはカスタム SUSE イメージに基づく VM がある場合は、次のいずれかの手順を使用して DHCPv6 を構成します。
OpenSuSE 13 および SLES 11
必要に応じて、 dhcp-client
パッケージをインストールします。
sudo zypper install dhcp-client
/etc/sysconfig/network/ifcfg-eth0 ファイルを編集し、次のパラメーターを追加します。
DHCLIENT6_MODE='managed'
IPv6 アドレスを次のように更新します。
sudo ifdown eth0 && sudo ifup eth0
OpenSUSE Leap および SLES 12
openSUSE Leap と SLES 12 の場合は、次の手順に従います。
/etc/sysconfig/network/ifcfg-eth0 ファイルを編集し、#BOOTPROTO='dhcp4'
パラメーターを次の値に置き換えます。
BOOTPROTO='dhcp'
/etc/sysconfig/network/ifcfg-eth0 ファイルに、次のパラメーターを追加します。
DHCLIENT6_MODE='managed'
IPv6 アドレスを次のように更新します。
sudo ifdown eth0 && sudo ifup eth0
Ubuntu バージョン 17.10 以降の場合は、次の手順に従います。
/etc/dhcp/dhclient.conf
ファイルを編集し、次の行を追加します。
timeout 10;
再起動後も構成を保持する新しいファイルを cloud.cfg.d フォルダーに作成します。 このファイルの情報は、既定の NETPLAN 構成 (/etc/netplan/*.yaml にある YAML 構成ファイル) をオーバーライドします。
/etc/cloud/cloud.config.d/91-azure-network.cfg ファイルを作成します。 次のサンプルに示すように、必要なインターフェイスの下に dhcp6: true
が反映されていることを確認します。
network:
version: 2
ethernets:
eth0:
dhcp4: true
dhcp6: true
match:
driver: hv_netvsc
set-name: eth0
ファイルを保存し、再起動します。
ifconfig
を使って、仮想マシンが受信した IPv6 アドレスを確認します。
ifconfig
がインストールされていない場合は、次のコマンドを実行します。
sudo apt update
sudo apt install net-tools
Azure のサポート対象のすべての Debian イメージは、DHCPv6 に対応するように事前構成されています。 これらのイメージを使用する場合、他の変更は不要です。 以前またはカスタムの Debian イメージに基づく VM がある場合は、次の手順に従います。
/etc/dhcp/dhclient6.conf ファイルを編集し、次の行を追加します。
timeout 10;
/etc/network/interfaces ファイルを編集し、次の構成を追加します。
iface eth0 inet6 auto
up sleep 5
up dhclient -1 -6 -cf /etc/dhcp/dhclient6.conf -lf /var/lib/dhcp/dhclient6.eth0.leases -v eth0 || true
IPv6 アドレスを次のように更新します。
sudo ifdown eth0 && sudo ifup eth0
Azure の最近の CoreOS のイメージは、DHCPv6 に対応するように事前構成されています。 これらのイメージを使用する場合、他の変更は不要です。 以前またはカスタムの CoreOS イメージに基づく VM がある場合は、次の手順に従います。
/etc/systemd/network/10_dhcp.network ファイルを次のように編集します。
[Match]
eth0
[Network]
DHCP=ipv6
IPv6 アドレスを次のように更新します。
sudo systemctl restart systemd-networkd