このトピックでは、Windows インスタンス上の弹性ネットワークインターフェースのネットワーク設定の失敗を解決する方法について説明します。これらの失敗は、ディスクと弹性ネットワークインターフェースを交互にホットスワップした後に発生する可能性があります。
症状
Windows インスタンス上の弹性ネットワークインターフェースのネットワーク設定が無効になることがあります。現象には、ネットワーク接続の切断または失敗、無効な IP アドレス、サブネットマスクやデフォルトゲートウェイなどの無効なサブネット設定、異常なトラフィックルーティング、無効な VLAN 設定などがあります。
これらの失敗は、通常、次のシナリオで発生します:
-
Elastic Compute Service (ECS) インスタンスの作成時に複数のディスクをアタッチします。インスタンスの作成後、ディスクと弹性ネットワークインターフェースを交互にホットスワップし、インスタンスを再起動します。
-
ECS インスタンスの作成時にセカンダリ弹性ネットワークインターフェースをアタッチします。インスタンスの作成後、ディスクと弹性ネットワークインターフェースを交互にホットスワップし、インスタンスを再起動します。
たとえば、3 つのディスクがアタッチされた Windows インスタンスを作成します。インスタンスの作成後、ディスクをデタッチし、新しい弹性ネットワークインターフェースをインスタンスにアタッチして、セカンダリプライベート IP アドレスを設定します。設定は次のとおりです:
[ネットワーク接続] ウィンドウ ([コントロールパネル] > [ネットワークとインターネット] > [ネットワーク接続]) には、接続状態にある 2 つの Red Hat VirtIO Ethernet Adapter、[Ethernet] と [Ethernet 2] が表示されます。
C:\Users\Administrator>ipconfig
Windows IP Configuration
Ethernet adapter Ethernet:
Connection-specific DNS Suffix . :
Link-local IPv6 Address . . . . . : fe80::a915:a252:4124:aae6%3
IPv4 Address. . . . . . . . . . . : 192.168.1.166
Subnet Mask . . . . . . . . . . . : 255.255.255.0
IPv4 Address. . . . . . . . . . . : 192.168.1.167
Subnet Mask . . . . . . . . . . . : 255.255.255.0
Default Gateway . . . . . . . . . : 192.168.1.253
Ethernet adapter Ethernet 2:
Connection-specific DNS Suffix . :
Link-local IPv6 Address . . . . . : fe80::f3b3:c68:e912:216c%10
IPv4 Address. . . . . . . . . . . : 192.168.1.148
Subnet Mask . . . . . . . . . . . : 255.255.255.0
Default Gateway . . . . . . . . . : 192.168.1.253
ECS インスタンスを再起動すると、アタッチされた弹性ネットワークインターフェースのネットワーク設定が無効になります。たとえば、Ethernet 3 は不明なネットワークになります。
C:\Users\Administrator>ipconfig
Windows IP Configuration
Ethernet adapter Ethernet:
Connection-specific DNS Suffix . :
Link-local IPv6 Address . . . . . : fe80::e9d9:70a7:70ea:cda4%3
IPv4 Address. . . . . . . . . . . : 192.168.1.166
Subnet Mask . . . . . . . . . . . : 255.255.255.0
IPv4 Address. . . . . . . . . . . : 192.168.1.167
Subnet Mask . . . . . . . . . . . : 255.255.255.0
Default Gateway . . . . . . . . . : 192.168.1.253
Ethernet adapter Ethernet 3:
Connection-specific DNS Suffix . :
Link-local IPv6 Address . . . . . : fe80::f12c:fc6:9a63:e40f%11
Autoconfiguration IPv4 Address. . . : 169.254.214.80
Subnet Mask . . . . . . . . . . . : 255.255.0.0
Default Gateway . . . . . . . . . :
原因
Windows はスキャン順序に基づいて弹性ネットワークインターフェースに名前を付けます。ディスクと弹性ネットワークインターフェースを交互にホットスワップすると、デバイスの検出順序が変わり、デバイス番号が変更されます。その結果、Windows は正しい弹性ネットワークインターフェースにネットワーク設定を適用できなくなり、設定が無効になります。
ソリューション
ご利用の弹性ネットワークインターフェースがセカンダリプライベート IP アドレスまたは IPv6 アドレスを必要とするかどうかに基づいて、ソリューションを選択してください。
プライマリ IP のみ
ご利用の弹性ネットワークインターフェースがセカンダリプライベート IP アドレスまたは IPv6 アドレスを必要としない場合は、ネットワークアダプターが IP アドレスを自動的に取得するように設定します。これを行うには、次の手順を実行します:
-
ECS インスタンスに接続します。
詳細については、「ワークベンチを使用して Windows インスタンスにログインする」をご参照ください。
-
[ネットワークと共有センター] を開きます。
-
[アダプターの設定の変更] をクリックします。
-
[イーサネット] など、現在のネットワーク接続の名前をダブルクリックします。[イーサネットの状態] ダイアログボックスで、[プロパティ] をクリックします。
-
[イーサネットのプロパティ] ダイアログボックスで、[インターネットプロトコル バージョン 4 (TCP/IPv4)] をダブルクリックします。
-
[インターネット プロトコル バージョン 4 (TCP/IPv4) のプロパティ] ダイアログボックスで、[IP アドレスを自動的に取得する] と [DNS サーバーのアドレスを自動的に取得する] を選択し、[OK] をクリックします。
セカンダリ IP と IPv6
ご利用の弹性ネットワークインターフェースがセカンダリプライベート IP アドレスまたは IPv6 アドレスを必要とする場合は、インスタンスの起動後に IP アドレスを再設定する必要があります。これを行うには、次の手順を実行します:
-
セカンダリプライベート IPv4 アドレスを設定します。
詳細については、「セカンダリプライベート IPv4 アドレスの設定」をご参照ください。
-
IPv6 アドレスを設定します。
詳細については、「IPv6 通信」をご参照ください。
これにより、弹性ネットワークインターフェースのネットワーク設定が復元されます。
Windows の [コントロールパネル] > [ネットワークとインターネット] > [ネットワーク接続] ウィンドウで、両方の Red Hat VirtIO Ethernet Adapter が接続状態になります。