To determine what is going on with your network interfaces ( network interface cards )on your Solaris system, you need to go over the following,
using the hme for example!
Checking current NIC setting
# ndd -get /dev/hme link_status
# ndd -get /dev/hme link_speed
# ndd -get /dev/hme link_mode
# ndd -get /dev/hme adv_100fdx_cap
# ndd /dev/hme adv_autoneg_cap
link_status (read only)
0 for Link Down
1 for Link up
link_speed (read only)
0 for 10 Mbps
1 for 100 Mbps
link_mode (read only)
0 for Half-Duplex mode
1 for Full-Duplex mode
Changing the NIC setting
Suppose we want to force the hme card to work at 100mb, full duplex. We can change these setting with the ndd set option, but these setting, will be lost after reboot.
ndd -set /dev/hme instance 0
ndd -set /dev/hme adv_100T4_cap 0
ndd -set /dev/hme adv_100fdx_cap 1
ndd -set /dev/hme adv_100hdx_cap 0
ndd -set /dev/hme adv_10fdx_cap 0
ndd -set /dev/hme adv_10hdx_cap 0
ndd -set /dev/hme adv_autoneg_cap 0
Second option is to add following entries in file /etc/system. Always be careful while changing this file and make a copy before any change.
Save the file and reboot the system.