Linux システムを使用している場合、特定のネットワーク カード ドライバーまたは関連プログラムをインストールした後にネットワーク カードのドリフトが発生する可能性があります。
可能な表現は次のとおりです:
特定のネットワーク カード ドライバーをインストールした後、ネットワーク カードの順序が逆になる場合があります。たとえば、ネットワーク ケーブルで接続されているネットワーク ポートは以前は eth0 でしたが、ドライバーをインストールした後は eth1 または他の名前に変更される可能性があります。インストールされています。
(2) ネットワーク カードの名前が変更されます。この状況は eth0 から eth1 への変更ではなく、非常に奇妙な変更です。たとえば、eth0 が見つからず、__tmp3183921382193__## という名前の追加のネットワーク カードが存在します。
#この状況は本当に迷惑です。開発作業のための情報を取得するために ifconfig | grep eth コマンドを使用する必要がある人もいるかもしれないため、ネットワーク カード名が紛らわしい場合、プログラムに間違いなくエラーが発生します。(3) 光ポートネットワークカードと電気ポートネットワークカードの順序が間違っているか、重なっています。
つまり、私たちの目標は、特定のネットワーク カードの名前を必要な物理デバイスとして指定できるようにすることです。その方法は次のとおりです:
などの ethtool コマンドを使用して、ネットワーク ケーブルが接続されているかどうかを確認します。 リーリー
eth0 のステータスがネットワーク ケーブルに接続されていることがわかりました。 Linked が検出された場合: no は、ネットワーク ケーブルが接続されていないことを意味します。このようにして、どのデバイスの名前を区別してマークします。
###例えば:### リーリー
各ネットワーク カードの MAC アドレスを取得しました。ステップ 3: MAC とネットワーク カード名をバインドします。
###例えば:### リーリー
このファイルはネットワークカードを初期化するための設定ファイルです。たとえば、ネットワーク カードの MAC アドレス MAC1 のデバイス名を ethn として指定する場合は、ファイルを変更します。
/etc/sysconfig/network-scripts/ifcfg-ethnMACアドレスのバインドと名前の設定情報を内部に追加します
DEVICE=エスン
HWADDR=MAC1 (例: 00:30:48:7f:b5:ca)
他の構成情報は影響を受けません。すべてのネットワーク カードをバインドした後、システムを再起動すると問題なくなるはずです。
もう 1 つ注意すべき点は、対応する関係を駆動するファイルです:
/etc/modprobe.conf
このファイルを変更するには、特定のデバイスが次のようなそれに対応するドライバーを使用していることを確認してください。 リーリー
eth0 と eth1 は Forcedeth ドライバーを使用し、eth2 と eth3 は e1000 ドライバーを使用することを説明します。
#########特別なケース#########サーバーがネットワーク カードを交換すると、MAC アドレスが変更されます。この時点で、Linux システムを起動すると、元の eth0 と eth1 は現在のネットワーク カードの構成ファイルではなくなり、プロンプトが表示されますそのデバイス eth0 は存在していないようです。
###解決:###/etc/udev/rules.d/70-persistent-net.rules を削除してマシンを再起動するだけです。このファイルには、ethX 間の対応関係を含む、システムの下部にあるネットワーク カードの識別情報が保存されているためです。削除して再起動し、オペレーティング システムに既存のネットワーク カードを再認識させると、通常の状態に戻ります。
さらに、元の eth0 および eth1 構成ファイルに HWADDR フィールドがある場合は、それらも削除する必要があります。
以上がLinuxネットワークカード識別シーケンスのバインド方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。