トラブル | ネットワークにつながらない!
- 2006.04.13
- Linux
LinuxマシンAの電源周りが壊れたので、余っていたPCのハーディスクを置き換えた。
ネットワークだけがうまくつながらないのであった。起動時に、なんちゃらかんちゃらeth0 insmod errors …。
その原因は…。
■ネットワーク周りを変更するときに確認するファイル
/etc/hosts
/etc/resolv.conf
/etc/sysconfig/network デフォルトゲートウェイ
/etc/sysconfig/network-scripts/ifcfg-eth0 カードに割り当てるIPアドレス
/etc/modules.conf 今回、これが原因でした!
■ネットワークカードを認識しているか調査するコマンド
# cat /proc/ioports
# cat /proc/interrupts
# cat /proc/modules (lsmodと同じ)
# lsmod
■ハード的なアクション
IRQなどの問題があるときは、イーサネットカードを引っこ抜く。起動して、起動メッセージでコンフィグレーションを削除するか、という問いに削除と答える。再度イーサネットを差して起動する。(別なPCIスロットも試す)
あきらめて、別のイーサネットカードを買ってくる。という手もあり。
■ifconfig -a でネットワークインターフェースの情報を得る
# ifconfig -a lo Link encap:Local Loopback inet addr:127.0.0.1 Mask:255.0.0.0 UP LOOPBACK RUNNING MTU:16436 Metric:1 RX packets:4038 errors:0 dropped:0 overruns:0 frame:0 TX packets:4038 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0
eth0 の情報が出てこないなんて、悲しすぎる!
■ifcfg-eth0 の情報が正しいか確認する
/etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0 BOOTPROTO=static BROADCAST=192.168.1.255 IPADDR=192.168.1.27 NETMASK=255.255.255.0 NETWORK=192.168.1.0 ONBOOT=yes
■イーサネットカードを交換したときはココをチェック!
いやー、イーサネットカードを置き換えたら、ここを自分で書き換える必要があるんですなー。
/etc/modules.conf
(変更前)
alias eth0 eepro100 ←以前のLinuxで使っていたイーサネットカード alias eth1 eepro100 ←以前のLinuxで使っていたイーサネットカード alias scsi_hostadapter aic7xxx alias parport_lowlevel parport_pc alias eth2 8139too ←今回、追加したカード。
(変更後)
alias eth0 8139too ←これで、/etc/sysconfig/network-scripts/ifcfg-eth0 を参照するようになる。
alias scsi_hostadapter aic7xxx
alias parport_lowlevel parport_pc
つまり、コレガのイーサネットカードをちゃんと自動認識して、新規に追加してくれたんだけど、eth2として登録してくれちゃうんだな。以前のマシンのeepro100という情報は消さないのね。なるほど…。
■参考サイト
- ネットワークを認識させるには
http://www.atmarkit.co.jp/flinux/rensai/linuxtips/091usenic.html - ネットワークの基本設定の確認について詳細に説明されていてありがたい
http://www.math.kobe-u.ac.jp/~kodama/tips-net-setup.html - ifcfg-eth0の設定時にお役立ち
http://park15.wakwak.com/~unixlife/linux/net-ip.html
-
前の記事
サイト制作 2006.04.12
-
次の記事
シェルスクリプトのリンク集 2006.04.18