Ubuntuサーバーでeth0とeth1を切り替える


8

簡単な問題があります。2 NICを備えたUbuntuサーバー8.04 LTSを実行しているコンピューターがあります。マザーボード上の1つはインターネットに接続し、PCIカードは内部ネットワークに接続します。インストール中に、マザーボード上のNICがeth1として、PCIカードがeth0として検出されました。逆にしてほしい。特に、PCI NICはホストサーバーによって使用されないため、ホストサーバー上で実行される一部の仮想マシンに対してのみ使用されます。

したがって、現在マシンが起動するとeth1(マザーボードNIC)がアクティブになり、eth0(PCI NIC)をそのままにしてdhcpでIPを取得します。これは、eth0とeth1を切り替える以外は、まさに私が欲しいものです。

ありがとう。

回答:


15

tzafrir.netで詳しく説明されていないように、Ubuntuを含むDebianベースのシステムでは、/etc/udev/rules.d/70-persistent-net.rulesファイルを確認する必要があります。次のような行が見つかります。

# PCI device 0x14e4:0x170c (b44)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:15:c5:6d:b1:9e", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"

1つはNAME = "eth0"で、もう1つは"NAME = eth1"であることがわかりますが、それぞれに対応するMACアドレスがあります。NAME値を交換してコンピュータを再起動するだけで、システムがそれらの名前を変更します。あなたものような彼ら何か別の名前を付けることができwanたりlan、それは限り、あなたのルートやその他の構成は同じ名前を使用して問題ではありません。

FedoraやCentOSを含むRedHatベースのシステムでは、これはHWADDR適切な/etc/sysconfig/network-scripts/ifcfg-ethXファイルにある行を変更することで実現されます。

カーネルはNICの順序を入れ替えることができるPCIカードのアドレス指定の順序を変更することが以前から知られているため、再起動時に同じNICを維持することがポイントです。


1
ありがとう。/ etc / network / interfacesを編集してeth1をeth0に変更する必要もありました。
lanrat 2009

変更したいのは、どのNICがeth0であるかだけの場合は、70-persistent-net.rulesファイルを変更するだけで済みます。そのファイルは、システムの起動時に存在しない場合、udevによって実際に作成されます。ここでinterfaces、適切なNICを使用してファイルを回避するように構成した場合は、ファイルも変更する必要があります。
Jeremy Bouse、2009

6

/etc/udev/rules.d/70-persistent-net.rulesで2つのデバイスの名前を簡単に変更できます

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.