vine-users ML アーカイブ



[vine-users:054987] Re: LAN を認識してくれません

  • From: Yoshikazu Suenaga <SUENAGA_yoshikazu@xxxxxxxxxxxx>
  • Subject: [vine-users:054987] Re: LAN を認識してくれません
  • Date: Fri, 01 Nov 2002 13:29:33 +0900
末永です。

>  alias eth0 xxxxx
> のような記載はありません。
> このためLANが初期に立ち上がらないと思うのです。

このあたりは、以前 [vine-users:054775] に書いたのですが・・・。
まあそれはさておき、まさにその通りで/etc/modules.confに

alias eth0 8139too

を追記すればいいですね。
それよりも、気になったのが、

> このxxxxx(システムが認識しているLANデバイス名?)
> を知る方法はありませんか?

これです。確かにわかっていれば問題ないのですが、
わからない時にどうやって調べるのかって意外と問題ですよね。
これはあくまで私のやり方なのですが、こんな感じで調べます。

> /proc/pciには、
>  Ethernet controller: Realtek Semiconductor Co., Ltd.
>   RTL-8139 (rev 16).

まずここですね。この部分が全ての情報源です。このNICの
コントローラがなんなのかを調べることが重要です。
以上の/proc/pciとかlspciとかで調べられますね。PCIなら
簡単に情報が得られるのですが、ISAデバイス(いまどき使ってない?)
なんかだと、面倒な時には基盤をみて判断したりします。
でも、買ったNICの情報をWebで調べればコントローラがなんなのかは
すぐにわかりますね。ここではRealtek Semiconductor Co の
RTL-8139 が利用されていることがわかります。

次はこのRTL-8139のコントローラのドライバがなんなのか?
なのですが、これはカーネルドキュメントを見ればすぐにわかります。
まず以下を参照します。

/usr/src/linux/Documentation/networking/00-INDEX

このファイルは各ドライバのドキュメントのインデックスになっているので
このなかから RTL-8139 の項目を検索すれば以下が見つかるはずです。

8139too.txt
 - info on the 8139too driver for RTL-8139 based network cards.

この段階で、RTL-8139 のドライバが8139tooだということがわかるのですが
確認のため、同ディレクトリの8139too.txtを見てみると、

        "8139too" Fast Ethernet driver for Linux
 RTL-8139, -8129, and -8130 10/100 Fast Ethernet adapters

いきなりタイトルからご丁寧に書いてありますね。
これではっきりと、RTL-8139のドライバが8139tooであることが
確認できたわけです。次にご存知の通り

# modprobe 8139too

でドライバモジュールをロードすれば認識完了のはずです。
この段階では任意でモジュールをロードしただけなので、
再起動してしまうとシステムのどこにもeth0のドライバが
8139too だということが設定されていないため、eth0が
認識されていない状態で起動されてしまいます。
そこで、起動するときにeth0のドライバは 8139too だということを
Linuxに教えてやるために/etc/modules.confに

alias eth0 8139too

こんな記述をしてやるわけです。

長くなってしまいましたが、私のやり方はこんな感じです。
皆さんはどうしているのでしょうか?
少々泥臭いやりかたので、もっとスマートな方法があればいいのですが。



株式会社エイチアイ ICP事業部
Yoshikazu Suenaga
末永 貴一
mailto:SUENAGA_Yoshikazu@xxxxxxxxxxxx
http://icp.hicorp.co.jp