fulです。
今、SUSE9.3でNICを3枚使用してプロキシサーバを構築しているのですが、
NICの認識順が再起動ごとに変化する現象で悩んでいます。
現在使用している環境は以下の通りです。
NIC1: Realtek Semiconductor Co., Ltd. RTL-8169 Gigabit Ethernet
NIC2: Realtek Semiconductor Co., Ltd. RTL-8169 Gigabit Ethernet
NIC3: Altima (nee Broadcom) AC9100 Gigabit Ethernet
この状態で起動するたびに以下の2通りに認識します。
1. NIC1 -> eth0
NIC2 -> eth1
NIC3 -> eth2
2. NIC1 -> eth1
NIC2 -> eth2
NIC3 -> eth0
いろいろ調べた結果、読み込むモジュールの順番が変わるためらしいという
ところまでは分かったのですが、それが起動するたびに一定でないらしい
のです。
モジュールはそれぞれ 8169too, tg3 です。
そこでお聞きしたいのですが、モジュールの読み込み順を固定する事は
可能なのでしょうか。可能ならばその方法を教えて頂ければ幸いです。
--
ful
fulです。 Hiroki様、K.Suzuki様、返信ありがとうございます。 今日以下の方法を試してみます。 結果は後ほど報告致します。 On Tue, 25 Apr 2006 10:08:00 +0900 Hiroki Yoshioka様 wrote:
/etc/sysconfig/kernelのMODULES_LOADED_ON_BOOTに モジュール名を読み込ませたい順序で書いておいたらどうでしょう?
On Tue, 25 Apr 2006 21:48:48 +0900 K.Suzuki様 wrote:
まず ifconfig 等などで NIC の MAC アドレスをどこかにメモしておいて、 root になり /etc/udev/rules.d/30-net_persistent_names.rules ファイルを エディタ等で開いて、eth*(eth0 や eth1等) と NIC を関連付けするように 編集( MAC アドレスを設定)して保存する。
そして YaST から [システム] - [/etc/sysconfig エディター] として、 左側のツリーで [Network] - [Hardware] - [Config] - [FORCE_PERSISTENT_NAMES] を 選択し、FORCE_PERSISTENT_NAMES を "yes" にして YaST を終了する。
--
ful
fulです。 テストの結果を報告します。
On Tue, 25 Apr 2006 10:08:00 +0900 Hiroki Yoshioka様 wrote:
/etc/sysconfig/kernelのMODULES_LOADED_ON_BOOTに モジュール名を読み込ませたい順序で書いておいたらどうでしょう?
まず、MODULES_LOADED_ON_BOOTで、以下のような設定を試しましたが 固定することはできませんでした。 1. MODULES_LOADED_ON_BOOT="tg3 r8169" 2. MODULES_LOADED_ON_BOOT="r8169 tg3" # LANケーブルが接続されている状態・接続されていない状態でも試しましたが # 結果は同じでした。
On Tue, 25 Apr 2006 21:48:48 +0900 K.Suzuki様 wrote:
まず ifconfig 等などで NIC の MAC アドレスをどこかにメモしておいて、 root になり /etc/udev/rules.d/30-net_persistent_names.rules ファイルを エディタ等で開いて、eth*(eth0 や eth1等) と NIC を関連付けするように 編集( MAC アドレスを設定)して保存する。
そして YaST から [システム] - [/etc/sysconfig エディター] として、 左側のツリーで [Network] - [Hardware] - [Config] - [FORCE_PERSISTENT_NAMES] を 選択し、FORCE_PERSISTENT_NAMES を "yes" にして YaST を終了する。
次に、こちらの方法ですが、9.3のYaSTには上記の[FORCE_PERSISTENT_NAMES]と
いう項目がなく、他にそれらしい項目もありませんでした。
そのため上記の方法は試す事ができませんでした。
他になにか方法はありませんでしょうか?
よろしくお願い致します。
--
ful
K.Suzukiです。
On Wed, 26 Apr 2006 10:42:36 +0900
ful
fulです。
テストの結果を報告します。
On Tue, 25 Apr 2006 21:48:48 +0900 K.Suzuki様 wrote:
まず ifconfig 等などで NIC の MAC アドレスをどこかにメモしておいて、 root になり /etc/udev/rules.d/30-net_persistent_names.rules ファイルを エディタ等で開いて、eth*(eth0 や eth1等) と NIC を関連付けするように 編集( MAC アドレスを設定)して保存する。
そして YaST から [システム] - [/etc/sysconfig エディター] として、 左側のツリーで [Network] - [Hardware] - [Config] - [FORCE_PERSISTENT_NAMES] を 選択し、FORCE_PERSISTENT_NAMES を "yes" にして YaST を終了する。
次に、こちらの方法ですが、9.3のYaSTには上記の[FORCE_PERSISTENT_NAMES]と いう項目がなく、他にそれらしい項目もありませんでした。 そのため上記の方法は試す事ができませんでした。
9.3 にはその項目がありませんでしたか。
他になにか方法はありませんでしょうか?
10.0 にするとかはどうでしょうか? :)
すがわらです.
ご存知かも知れませんが SuSE 9.3 でも eth0 等のシステムで使用される名前
以外を使うのであれば, ifcfg-* 中で "PERSISTENT_NAME=<pname>" で指定す
ることにより NIC に固定的に名前を付けることができるようです. SuSE 9.3
附属のヘルプで PERSISTENT_NAME を検索するか, suse-linux-e メーリングリ
ンストのアーカイブで下記から始まるスレッドを見てください.
http://lists.suse.com/archive/suse-linux-e/2005-Mar/2260.html
From: ful
fulです。 sugaht様 貴重なご意見ありがとうございます。 返信が遅くなってしまい申し訳ありませんでした。 On Wed, 26 Apr 2006 22:37:14 +0900 (JST) sugaht様 wrote:
ご存知かも知れませんが SuSE 9.3 でも eth0 等のシステムで使用される名前 以外を使うのであれば, ifcfg-* 中で "PERSISTENT_NAME=<pname>" で指定す ることにより NIC に固定的に名前を付けることができるようです. SuSE 9.3 附属のヘルプで PERSISTENT_NAME を検索するか, suse-linux-e メーリングリ ンストのアーカイブで下記から始まるスレッドを見てください.
http://lists.suse.com/archive/suse-linux-e/2005-Mar/2260.html
上記の方法でインターフェイス名とNICを固定することができました。
具体的には各NICの設定ファイルに以下のような行を追加することでそれぞれ
en0, en1, en2 というインターフェイス名で固定できました。
ifcfg-eth-id-XX:XX:XX:XX:XX:00
PERSISTENT_NAME='en0'
ifcfg-eth-id-XX:XX:XX:XX:XX:01
PERSISTENT_NAME='en1'
ifcfg-eth-id-XX:XX:XX:XX:XX:02
PERSISTENT_NAME='en2'
それにしても、eth0等以外の名前を使うというのは全く思いつきませんでした。
上記のスレッドの他、"PERSISTENT_NAME" で検索するとみんな同じところで
はまってるんですね・・
とても勉強になりました。ありがとうございます。
--
ful
fulです。 以下の方法で当初の目的は達成できたのですが、ここで eth0 のような名前を 使うのはやはり無理なのでしょうか? # エイリアスかなにかでごまかせないかなと思いまして・・
On Wed, 26 Apr 2006 22:37:14 +0900 (JST) sugaht様 wrote:
ご存知かも知れませんが SuSE 9.3 でも eth0 等のシステムで使用される名前 以外を使うのであれば, ifcfg-* 中で "PERSISTENT_NAME=<pname>" で指定す ることにより NIC に固定的に名前を付けることができるようです. SuSE 9.3 附属のヘルプで PERSISTENT_NAME を検索するか, suse-linux-e メーリングリ ンストのアーカイブで下記から始まるスレッドを見てください.
http://lists.suse.com/archive/suse-linux-e/2005-Mar/2260.html
上記の方法でインターフェイス名とNICを固定することができました。
具体的には各NICの設定ファイルに以下のような行を追加することでそれぞれ en0, en1, en2 というインターフェイス名で固定できました。
ifcfg-eth-id-XX:XX:XX:XX:XX:00 PERSISTENT_NAME='en0'
ifcfg-eth-id-XX:XX:XX:XX:XX:01 PERSISTENT_NAME='en1'
ifcfg-eth-id-XX:XX:XX:XX:XX:02 PERSISTENT_NAME='en2'
--
ful
今日は、fulさん、皆さん
On 4/28/06, ful
以下の方法で当初の目的は達成できたのですが、ここで eth0 のような名前を 使うのはやはり無理なのでしょうか?
# エイリアスかなにかでごまかせないかなと思いまして・・
On Wed, 26 Apr 2006 22:37:14 +0900 (JST) sugaht様 wrote:
ご存知かも知れませんが SuSE 9.3 でも eth0 等のシステムで使用される名前 以外を使うのであれば, ifcfg-* 中で "PERSISTENT_NAME=<pname>" で指定す ることにより NIC に固定的に名前を付けることができるようです.
ipコマンドでネットワークインターフェースの名前を変えることはできますが・・・ ネットワークインターフェースをダウンさせてる時しか実行できません。 ifcfg(5)に書いてあるPOST_UP_SCRIPTを利用して ifdown en0 ip link set en0 name eth0 ifup eth0 とかやるんですかね? Hiroki
K.Suzukiです。
On Fri, 28 Apr 2006 09:02:45 +0900
ful
fulです。
以下の方法で当初の目的は達成できたのですが、ここで eth0 のような名前を 使うのはやはり無理なのでしょうか?
# エイリアスかなにかでごまかせないかなと思いまして・・
PERSISTENT_NAME の 代替手段を探してみました。 以下のサイト(ドイツ語)に同じ質問があるみたいで、 http://de.susewiki.org/index.php?title=FAQs#Hilfe.2C_meine_Netzwerkschnittst... /etc/sysconfig/hotplug 内にある "HOTPLUG_PCI_QUEUE_NIC_EVENTS" を 以下に設定すれば良いのではないかと言っています。 HOTPLUG_PCI_QUEUE_NIC_EVENTS=wait PERSISTENT_NAME を元に戻して、試してみてはどうでしょうか?
fulです。 Hiroki Yoshioka様、K.Suzuki様、貴重なご意見ありがとうございます。 おかげさまで元の名前を使用したままNICの認識順を固定することができ、 とても助かりました。 # 実はプログラムでのインターフェイス名を全て変えるつもりでしたので・・ On Fri, 28 Apr 2006 15:03:09 +0900 Hiroki Yoshioka様 wrote:
ipコマンドでネットワークインターフェースの名前を変えることはできますが・・・
ネットワークインターフェースをダウンさせてる時しか実行できません。 ifcfg(5)に書いてあるPOST_UP_SCRIPTを利用して
ifdown en0 ip link set en0 name eth0 ifup eth0
とかやるんですかね?
システム起動後に上記の方法を実行することで eth0 等への変更ができました。 現在、POST_UP_SCRIPTに記述する方法について調べているところです。 以下のようにしてみたのですがこれではうまく変更されない様です。 --- ifcfg-eth-id-XX:XX:XX:XX:XX:XX --- ・ ・ STARTMODE='off' <= 'auto'にしていると無限ループするようです PERSISTENT_NAME='en0' POST_UP_SCRIPT='en0_to_eth0' --- --- /etc/sysconfig/network/scripts/en0_to_eth0 --- #!/bin/sh ifdown en0 ip link set en0 name eth0 ifup eth0 --- On Fri, 28 Apr 2006 15:51:06 +0900 K.Suzuki様 wrote:
PERSISTENT_NAME の 代替手段を探してみました。 以下のサイト(ドイツ語)に同じ質問があるみたいで、 http://de.susewiki.org/index.php?title=FAQs#Hilfe.2C_meine_Netzwerkschnittst...
/etc/sysconfig/hotplug 内にある "HOTPLUG_PCI_QUEUE_NIC_EVENTS" を 以下に設定すれば良いのではないかと言っています。
HOTPLUG_PCI_QUEUE_NIC_EVENTS=wait
PERSISTENT_NAME を元に戻して、試してみてはどうでしょうか?
こちらの方法も今のところはっきりしたことはいえませんが固定できるの
ではないかと思います。
というのも、起動時のモジュール読み込み時の表示タイミングが 'yes' のとき
と 'wait' のときで若干異なる気がしましたので。
表現があいまいなのは、認識順の種類が2通りあるのですが、その比率が 1:9 位
のため本当に固定されたのかどうかがちょっと判定しづらいためです。
こちらももう少し調べたいと思います。
--
ful
K.Suzukiです。
On Tue, 25 Apr 2006 08:59:36 +0900
ful
fulです。
今、SUSE9.3でNICを3枚使用してプロキシサーバを構築しているのですが、 NICの認識順が再起動ごとに変化する現象で悩んでいます。
現在使用している環境は以下の通りです。
NIC1: Realtek Semiconductor Co., Ltd. RTL-8169 Gigabit Ethernet NIC2: Realtek Semiconductor Co., Ltd. RTL-8169 Gigabit Ethernet NIC3: Altima (nee Broadcom) AC9100 Gigabit Ethernet
この状態で起動するたびに以下の2通りに認識します。
1. NIC1 -> eth0 NIC2 -> eth1 NIC3 -> eth2
2. NIC1 -> eth1 NIC2 -> eth2 NIC3 -> eth0
いろいろ調べた結果、読み込むモジュールの順番が変わるためらしいという ところまでは分かったのですが、それが起動するたびに一定でないらしい のです。 モジュールはそれぞれ 8169too, tg3 です。
そこでお聞きしたいのですが、モジュールの読み込み順を固定する事は 可能なのでしょうか。可能ならばその方法を教えて頂ければ幸いです。
自分は SUSE 9.3 の環境ではないのですが、SUSE 10 ではコンフィグできるようです。 なので、もしかしたら 9.3 でもできるかもしれませんので書いておきます。 まず ifconfig 等などで NIC の MAC アドレスをどこかにメモしておいて、 root になり /etc/udev/rules.d/30-net_persistent_names.rules ファイルを エディタ等で開いて、eth*(eth0 や eth1等) と NIC を関連付けするように 編集( MAC アドレスを設定)して保存する。 そして YaST から [システム] - [/etc/sysconfig エディター] として、 左側のツリーで [Network] - [Hardware] - [Config] - [FORCE_PERSISTENT_NAMES] を 選択し、FORCE_PERSISTENT_NAMES を "yes" にして YaST を終了する。
participants (5)
-
ful
-
Hiroki Yoshioka
-
Hiroki Yoshioka
-
K.Suzuki
-
sugaht@zephyr.dti.ne.jp