ネットワークの仕組み
物理デバイスの認識
デバイスに名前はどうやって付くのか?
物理デバイスの認識
Linux のバージョンにより細かな部分が異なる。
起動時に事前に定義されたカーネルモジュールを読み込む。
lsmod コマンドで、現在読み込まれているモジュールの一覧を確認することができる。
modprobe コマンドで必要なモジュールを自動的に追加することができる。(依存関係を自動解決する)
insmod コマンドでモジュールを直接追加することができる。
rmmod コマンドでモジュールを直接削除することができる。
/lib/modules/<KernelVersion>/modules.alias にモジュール名のエイリアスが書かれている。
モジュールは /lib/modules/<KenelVersion> の下に配置される。
モジュールファイルは *.ko という名前になっている。
モジュールを認識させるには、modules.dep ファイル(バイナリ版は module.dep.bin) を作る必要があり、モジュールの配置場所で depmod コマンドを実行する必要がある。
デバイスの認識、抜き差し時に UEVENT カーネルイベントが発生する。
UEVENT カーネルイベントは、ユーザー空間のデーモンプロセスで取り扱われる。
以前は udevd、現在は systemd が取り扱っている。
/lib/udev/rules.d にデバイスの取り扱いルールが書かれている。
以前は、デバイス名がハードウェア交換により変動してしまっていた。
このため、デバイスの紐付けや再設定が必要になっていた。
各物理接続部のドライバにより、PnP で認識される。
参考
RHEL6 https://access.redhat.com/documentation/ja-jp/red_hat_enterprise_linux/6/html/deployment_guide/part-networking
RHEL7 ネットワークガイド https://access.redhat.com/documentation/ja-jp/red_hat_enterprise_linux/7/html/networking_guide/index
RHEL8 ネットワークの設定および管理 https://access.redhat.com/documentation/ja-jp/red_hat_enterprise_linux/8/html/configuring_and_managing_networking/index
http://www.silex.jp/blog/wireless/2015/08/linux.html