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


回答:


17

コマンドラインで実行

sudo lshw -C network 

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


10

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

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

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

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

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

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


仮想ドライバーを検出する方法(例veth)で可能ですがethtool -i IFACE_NAME、sysfsから見つける方法は?
ペビック

4

スクリプトの私見では、sysfs情報(ジェレミーカーが示すように)を使用するのが最適ですが、詳細は以下のとおりです。

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

1

USBデバイスの場合、lsusb次のコマンドを使用できます。

lsusb -t
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.