Tips記事
» 2001年09月26日 00時00分 UPDATE

ネットワークカード(NIC)が認識されない

[木田佳克,ITmedia]

 「ネットワークカード(LANアダプタ)が認識されない」Tipsでは,設定ツールを利用した方法を紹介している。しかし,この方法では認識されないことも多く,どのようにすればよいか迷ってしまうことがあるだろう。ここでは,さらに踏み込んでネットワークカードの認識方法について解説しよう。

 まず最初に,カードに搭載されているコントローラチップ名を調べる必要がある。当然,チップがLinuxでサポートされていなければならないため,ノンサポートの場合に粘ってみても成果は望めない。調べるためには,「JFdocsのLinuxハードウェア互換性HOWTO:ネットワークアダプタ」を参考にするとよいだろう。

 自分の持っているネットワークカード(チップ)が見つかったら,次の手順でドライバーモジュールの組み込み設定をしよう。

ISAカードの場合

# vi /etc/modules.conf
............
alias eth0 ne
options ne io=0x300 irq=5

 上記の例は,ISAカードでNE2000互換のドライバを指定している設定だ。「ne」と書かれている個所がドライバ名になる。NE2000以外のチップは,次の表を参考にして記述しよう。また,「io=」,「irq=」に記述するアドレスも環境によってことなる場合がある。ネットワークカードにBIOSユーティリティが用意されていれば,I/OアドレスやIRQを調べるのは容易だ。また,ネットワークカード自体の設定で,PnP(Plug&Play)をオフにしておくこともポイントとなる。設定ツールが用意されていない場合には,同マシン上でWindowsが動作すれば,コントロールパネル上で確認する手段もある。

チップ名
ドライバ名
3COM 3c509 3c509
3COM 3c59x 3c59x
3COM 3c90x 3c59x
3COM 3c905 3c59x
3COM 3c501 3c501
3COM 3c503 3c503
3COM 3c505 3c505
3COM 3c507 3c507
3COM 3c523 3c523
3COM 3c527 3c527
ARCNet arcnet
Allied Telesis AT1700 at1700
AMD LANCE lance
AMD PCnet32 pcnet32
SMC Ultra smc-ultra
SMC 9xxx smc9194
NI5010 ni5010
NI5210 ni52
NI6510 ni65
RealTek 8129/8139 rtl8139
Cabletron E21xx e2100
DEPCA depca
EtherWorks3(DE203, DE204, DE205) ewrk3
Intel EtherExpress 16 eexpress
Intel EtherExpressPro eepro
Intel EtherExpressPro/100 eepro100
FMV-181/182/183/184 fmv18x
HP PCLAN+ (27247B and 27252A) hp-plus
HP PCLAN (27245 and 27x series) hp
ICL EtherTeam 16i/32 eth16i
NE2000 and Clones ne
NE2 (ne2000 MCA Version) ne2
Ansel Communications EISA 3200 ac3200
DM9102 PCI Fast Ethenet Adapter dmfe
Generic DEChip & DIGITAL EtherWORKS PCI/EISA de4x5
Mylex EISA LNE390A/B lne390
Novell/Eagle/Microdyne NE3200 EISA ne3200
NE2000 PCI and clones ne2k-pci
Tl ThunderLAN tlan
SiS 900/7016 PCI Fast Ethernet Adapter sis900
VIA Rhine via-rhine
SMC EtherPower II epic100
Apricot Xen-II apricot
CS89x cs89x

 PCIカードの場合には,前述したmodules.confで「options」行を指定する必要はない。I/Oアドレス,IRQは自動取得されるためだ。編集を終えたら,続いて次のように指定しよう。

# depmod -a
# modprobe [ドライバ名]
# lilo
# sync;sync;shutdown -r now

 再起動後には,次のようにして確認しよう。dmesgコマンドでイーサネットが認識されているかが分かる。続いてライブラリ更新を行い,ifconfigで「eth0」(またはeth1など)が表示されればOKだ。

# dmesg | grep eth
# lsmod
# ifconfig
eth0   Link encap:EthernetHWaddr 00:04:xx:xx:xx:xx
     inet addr:192.168.0.200Bcast:192.168.0.255Mask:255.255.255.0
     UP BROADCAST RUNNING MULTICASTMTU:1500Metric:1
     RX packets:6441736 errors:0 dropped:0 overruns:0 frame:0
     TX packets:6050781 errors:0 dropped:0 overruns:0 carrier:0
     collisions:0 txqueuelen:100

lo    Link encap:Local Loopback
     inet addr:127.0.0.1Mask:255.0.0.0
     UP LOOPBACK RUNNINGMTU:3924Metric:1
     RX packets:1711965 errors:0 dropped:0 overruns:0 frame:0
     TX packets:1711965 errors:0 dropped:0 overruns:0 carrier:0
     collisions:0 txqueuelen:0

Copyright © ITmedia, Inc. All Rights Reserved.

注目のテーマ