Setting the Network Interface speed under Solaris

ndd is used to change network interface card settings. e.g.

ndd -set /dev/hme instance 0 (choose hme0)

ndd -set /dev/hme adv_a00_fdx_cap 1 (set speed to 100 full duplex)

ndd -set /dev/hme adv_autoneg_cap 0 ( don’t auto negotiate)

Usually the settings are put into /etc/system as below (in the example below the settings would apply to all hme cards).

set hme:hme_adv_100fdx_cap=1

set hme:hme_adv_100T4_cap=0

set hme:hme_adv_autoneg_cap=0

If you need to set individual cards, you will need to edit /kernel/drv/hme.conf. this will override what’s in /etc/system. You can get the card instance bu using prtconf -v