7.1 LANカードの認識と設定

ネットワークカード
 インターネットなどのネットワークによって他のコンピュータとのデータのやりとりをするためにはネットワークに接続するためのネットワークカードが必要になります.ただし, 市販されているものは Windows 用にはドライバが付属していますが Linux 用のドライバは付いていません. Linux ではディストリビューションにモジュールという形でそれぞれののカード用のドライバが付属しています.ただし, 全てのカードが動作するという保証はされていませんので利用する前に Linux で認識できるかを確認しておく必要があります.最近では, パッケージに Linux でも動作するという記述をしたものもありますので, そのようなカードを使うと良いでしょう.

設定ファイル
 コンピュータに接続している NIC (Network Interface Card) ごとの設定はディレクトリ "/etc/sysconfig/network-scripts/" にまとめられています.このディレクトリにはネットワークインターフェイス毎に
 "ifcfg-devicename" 
というファイル名で設定内容が保存されています.ただし, devicename は各 NIC の名前で, インターフェイス毎に自動的に割り振られます. 通常, ネットワークカードが 1 つのときには eth0 という名前がつけられ, 設定ファイルは
 "ifcfg-eth0" 
となります.

設定例
各ネットワークインターフェイスの設定ファイルの中には主にデバイス名, IPアドレスの取得方法,ブート時の起動などの設定が記述されています.
次に設定例を示します.

  • 例 1 "/etc/sysconfig/network-scripts/ifcfg-eth0"
    DEVICE=eth0
    BOOTPROTO=dhcp
    ONBOOT=yes		

     この例では eth0 というデバイス名のネットワークインターフェイスに対して DHCP を利用して IP アドレスを取得するように設定されており, OS の起動時にこの設定がされるようになっています.

  • 例 2 "/etc/sysconfig/network-scripts/ifcfg-eth1"
    DEVICE=eth1
    BOOTPROTO=static
    IPADDR=192.168.1.101
    NETMASK=255.255.255.0
    ONBOOT=yes			

     この例では eth1 というデバイス名のネットワークインターフェイスに対して固定の IPアドレスを割り当てるように設定されていて, その IP アドレスは 192.168.1.101,ネットマスクは 255.255.255.0 に設定されています. またこのインターフェイスに対する設定も起動時に行われるようになっています.
 インストール時にネットワークの設定を行った場合は自動的にこのようなファイルが作成されて OS 起動時にネットワークカードの設定が行われるようになっています.

設定の確認
 設定ファイルで ONBOOT を yes に設定してあると OS を起動したときにそのネットワークインターフェースの設定が自動的に行われますが. 設定を変更したときなどは次のようにしてインターフェイスを有効にすることができます
[root]# /etc/sysconfig/network-scripts/ifdown eth0
[root]# /etc/sysconfig/network-scripts/ifup eth0
Determining IP information for eth0... done.
[root]#
<\pre>			
 ここで ifdown で現在動作中のインターフェイスを終了して, ifupで再度インターフェイスを設定しています.

 ネットワークインターフェイスが認識されたかを確認するには ifconfig コマンドを使います.

[student]$ /sbin/ifconfig 
eth0      Link encap:Ethernet  HWaddr 00:10:4B:40:0C:7E  
          inet addr:192.168.0.101  Bcast:192.168.0.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:5280247 errors:0 dropped:0 overruns:0 frame:0
          TX packets:2152699 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:100 
          Interrupt:11 Base address:0xd000 

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:192 errors:0 dropped:0 overruns:0 frame:0
          TX packets:192 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 

[student]$		
 ここで eth0 は先程の例 1 の設定で認識したインターフェイスで, IP アドレス192.168.0.101 が割り振られていることが分かります.
 また lo というインターフェイスは ループバックアドレス と呼ばれるインターフェイスで IP アドレス 127.0.0.1 が割り振られています. これは 自分自身を表す IPアドレスです. UNIX では一般的なソフトでもネットワークを前提とするものがありますのでそのようなソフトを利用するときに自分のコンピュータを識別するために利用します.

 ifconfig コマンドは直接ネットワークインターフェイスに IP アドレスを割り当てたり,ターミナル上でインターフェイスの設定もできます.