in this small blog post I wanted to show you a nice script to see which drivers are used by the Network Interfaces of a Linux machine.
#!/bin/bash for f in /sys/class/net/*; do dev=$(basename $f) driver=$(readlink $f/device/driver/module) if [ $driver ]; then driver=$(basename $driver) fi addr=$(cat $f/address) operstate=$(cat $f/operstate) printf "%10s [%s]: %10s (%s)\n" "$dev" "$addr" "$driver" "$operstate" done
I find this very useful when you need to find out if your interface is running at 10gb or only 1gb. The output looks like this:
eno1 [2c:60:0c:da:7b:fc]: igb (up) eno1.361 [2c:60:0c:da:7b:fc]: (up) eno1.362 [2c:60:0c:da:7b:fc]: (up) ens255f0 [2c:60:0c:f1:e6:5b]: ixgbe (up)
So you can see that ens255f0 is a 10gb interface and en1 is only 1 gb.
This script has not been written by me but by an Stackexchange user, all credits goes to him. For reference here’s the link to the Stackexchange question.