web-dev-qa-db-ja.com

ネットワークインターフェイスの背後にあるカーネルモジュールを見つけるにはどうすればよいですか?

特定のネットワークインターフェイスに使用されているカーネルモジュールを確認するにはどうすればよいですか?

16
Matt Joiner

コマンドラインで実行

Sudo lshw -C network 

すべてのネットワークインターフェイスについて、*-networkで始まるセクションを取得します。すべてのセクションには、インターフェース名を含むlogical name:行と、ドライバーおよびその他の情報を含むconfiguration:行があります。

16
Florian Diesch

Sysfsに照会して、この情報を伝えることができます。ネットワークインターフェイスが使用しているドライバーを確認するには:

ls -l /sys/class/net/<devname>/device/driver

... <devname>eth0のようなものです。このdriverディレクトリは、sysfsのドライバーノードへのシンボリックリンクになります。

そのドライバーを提供するモジュールの名前を取得するには:

ls -l /sys/class/net/<devname>/device/driver/module

...そして、このmoduleディレクトリは、sysfsのモジュールノードへのシンボリックリンクになります。

9
Jeremy Kerr

スクリプトの私見としては、sysfs情報(Jeremy Kerrが示すように)を使用するのが最善ですが、詳細については:

ethtool -i IFACE_NAME

例えば。:

$ ethtool -i eth0
driver: 8139cp
version: 1.3
firmware-version: 
bus-info: 0000:00:07.0
supports-statistics: yes
supports-test: no
supports-eeprom-access: yes
supports-register-dump: yes
supports-priv-flags: no
3
pevik