Checking the Status of Your NICs

The reports can tell you a lot of useful things about your network interface cards. You can tell what type of interfaces you have, whether they are auto-negotiating their duplex settings with whatever switch or other device they connect to, whether they're up, what speed they're running and whether they're running in full or half duplex. You also get a listing of the MAC (hardware) addresses associated with each interface.

Here are a couple examples:

      Link:  Auto-Neg:   Status:   Speed:    Mode:  Ethernet Address:
      bge0         ON        UP    100MB      FDX    0:3:ba:55:21:a4
      bge1         ON        UP    100MB      FDX    0:3:ba:55:21:a5

      Link:  Auto-Neg:   Status:   Speed:    Mode:  Ethernet Address:
     nxge0        OFF        UP    100MB      FDX   0:21:28:26:c0:ff
     nxge1	  OFF	     UP    100MB      FDX   0:21:28:26:c1:00

The tool is a Korn shell script that contains a series of commands and case statements that yank information configuration parameters and settings from various kernel drivers and interpret the results for you. Instead of having to type commands like this one and interpreting that the "0" as meaning OFF or "1" as meaning ON, we get the information in a tidy column.

# /usr/sbin/ndd -get /dev/nxge0 adv_autoneg_cap

It includes a series of commands and case statements such as this ndd command and case statement that translates 0, 1 or anything else as half duplex, full duples or an error:

mode=`${NDD} -get /dev/${1} link_mode`
case $mode in
   1) MODE=FDX          ;;
   0) MODE=HDX          ;;
   *) MODE=ERROR        ;;

It can extract information from commands like this and add it to your table:

# /usr/sbin/dladm show-dev nxge0
nxge0           link: up        speed: 100   Mbps       duplex: full

You can get download this script from BigAdmin at this page:

Distribute the tool across your systems or add it to a shared (NFS-mounted) file system and you can easily check the status of network interface cards.

The nicstatus script is a user-contributed script that Paul Bates, James Council Octave Orgeron and others provided (see the comments at the top of the script for additional details).

Due to the commands used in the script (such as ndd), it must be run as root.

This article is published as part of the IDG Contributor Network. Want to Join?

Computerworld's IT Salary Survey 2017 results
Shop Tech Products at Amazon