RHEL7でシステムを停止後にNICを交換する手順を記載します。NIC交換前後でインタフェース名の入れ替わりが発生している場合、OSの設定ファイルを変更する必要があります。
複数のNICを交換したい場合は、一度に交換せずに1枚ずつ交換してください。交換したNICごとに、交換手順を実施してください。
NICのインタフェース名を収集します。
/sys/class/netディレクトリから、インタフェース名を収集します。
# cd /sys/class/net # ls eth0 eth1 lo
NICとMACアドレスの対応を確認します。
手順1.で収集したすべてのインタフェース名に対応するMACアドレスを確認します。
# cat eth0/address <MACアドレス>
NICとバスアドレスの対応を確認します。
手順1.で収集したすべてのインタフェース名に対応するNICのバスアドレスを確認します。
# ls -l eth0/device lrwxrwxrwx 1 root root 0 Apr 9 09:17 eth0/device -> ../../../0000:01:06.0
コマンド出力結果で表示されるシンボリックリンク先ファイルの最下位層のファイル名(実体はディレクトリ)が、バスアドレスです。
バスアドレスは、次の情報で構成されているデバイスを識別するためのアドレス情報です。
[<セグメント番号>:]<バス番号>:<スロット番号>.<ファンクション番号>
セグメント番号は、機種によっては表示されないため、バス番号の一部として取り扱います。
手順1.~手順3.で収集した情報から、NICのハードウェア情報管理表を作成します。
インタフェース名 | MACアドレス | バスアドレス |
---|---|---|
eth0 | <MACアドレス> | <バス番号>:<スロット番号>.<ファンクション番号> |
… | … | … |
システムをシャットダウンします。
# shutdown -h now
NICを交換します。
参考
以降の手順では、インタフェース設定ファイルを編集してインタフェース名の入れ替わりに対処します。
交換前のNICのインタフェース設定ファイルに"HWADDR"を記述していない場合は不要です。
システムを起動し、手順4.で作成したNICのハードウェア情報管理表のMACアドレスを更新してください。
レスキューモードでシステムを起動します。
OSの設定ファイルを更新します。
8-1. /sys/class/netディレクトリから、インタフェース名を収集します。
# cd /sys/class/net # ls eth2 eth3 lo
収集したインタフェース名が、手順4.で作成したNICのハードウェア情報管理表にない場合、交換したNICに新しい名前が付けられています。以降の手順に進んでください。
8-2. NIC交換前のシステムに存在しなかったインタフェース名に対応するMACアドレスとバスアドレスを確認します。
# cat eth2/address <MACアドレス>
# ls -l eth2/device lrwxrwxrwx 1 root root 0 Apr 9 09:17 eth2/device -> ../../../0000:01:06.0
8-3. 確認したバスアドレスを、手順4.で作成したNICのハードウェア情報管理表のバスアドレス列と比較すると、対応するインタフェースの行がわかります。このインタフェースに対応する設定ファイルの"HWADDR"に、確認したMACアドレスを設定してください。
注意
複数のポートを持つNICの場合、すべてのポートに対応するインタフェース設定ファイルの編集が必要です。
手順8.を繰り返してください。
システムをリブートします。
# shutdown -r now
NICのハードウェア情報管理表を更新します。
手順4.で作成したNICのハードウェア情報管理表のMACアドレスを更新します。