差分

移動先: 案内検索

デバイススペシャルファイル

388 バイト追加, 2012年11月15日 (木) 17:04
/* ネットワークデバイス */
1981年当時4.1BSDを改造しTCP/IPのスタックを搭載したのがUNIXのTCP/IPの始まりです。
私の個人的経験でいわせてもらうと4.2BSDリリース時に入っていたTCP/IPはどう贔屓目に見ても、安定して利用するというには程遠く、プログラム中で引数をちょっと間違えるとシステム全体がいとも簡単にダウンしました。IPはどう贔屓目に見ても、安定して利用するというには程遠く、プログラム中で引数をちょっと間違えるとシステム全体がいとも簡単にダウンしました。
安定して使えたという実感は4.3BSDになってからです。
当時、我々がLANと呼ぶものはイーサーネット(Ethernet)で構築されていました。NIC (Network Interface Card)とか、あるいはLANポートとか呼ぶものも、
使っているのはイーサーネットでした。そのため/dev/eth0といった名前でネットワークのeth0といった名前でネットワークのデバイスファイルが作成されました。デバイスファイルが作成されました。むかしのLinuxもイーサーネットのデバイスは、もちろんUnix流にむかしのLinuxもイーサーネットのデバイスは、もちろんUnix流に/dev/の下にあるデバイススペシャルファイルで、デバイスはの下にあるデバイススペシャルファイルで、デバイスは/dev/eth0と見えていました。
ところが今のLinuxはネットワークデバイスに対してはスペシャルファイルとして用意していません。イーサーネットデバイスのはずであるところが今のLinuxはネットワークデバイスに対してはスペシャルファイルとして用意していません。イーサーネットデバイスのはずである/dev/eth?というのはLinux というのはLinux 2.2以降なくなりました。理由は単純に1つのイーサーネットデバ2以降なくなりました。イスが、1つのIPアドレスを持つというわけではなくなったからです。ハード理由は単純に1つのイーサーネットデバイスが、1つのIPアドレスを持つというわけではなくなったからです。ウェアに1つのイーサーネットのポートしかなくても、オペレーティングシスハードウェアに1つのイーサーネットのポートしかなくても、オペレーティングシステム的にはその1つのポートに複数のIPアドレスを割り当てることができます。テム的にはその1つのポートに複数のIPアドレスを割り当てることができます。ネットワークインタフェースの設定にはifconfigを使いますが、通常はシステムの設定ファイルに指定のフォーマットで登録しておけば、システムのブート時に設定スクリプトが動き、自動的に割り当ててくれます。Debian系のディストリビューションだとネットワークインタフェースの設定にはifconfigを使いますが、通常はシステムの設定ファイルに指定のフォーマットで登録しておけば、システムのブート時に設定スクリプトが動き、自動的に割り当ててくれます。Debian系のディストリビューションだと/etc/network/interfacesに、RedHat 系だと/etc/sysconfig/network-scripts/ifcfg-eth0に記述します。
....
loはループバック
 
 
ifconfigを使う以外にも/proc/net/dev/を見ることで現在のネットワークインタフェースを確認することができる。
 
$ cat /proc/net/dev
Inter-| Receive ....
face |bytes packets errs drop fifo frame ...
lo: 321508 2757 0 0 0 0 ...
wlan0: 0 0 0 0 0 0 ...
eth0: 1087299 17929 0 0 0 0 ...
== udev hald ==
匿名利用者