For the example here it is assumed that hme0 is not installed on the system and eri0 has been configured and working.
1) Do
dladm show-link - this shows list of network cards installed on the system during installation time. If an interface is not installed on the system it will not show here. That means driver for that interface (device) has not been installed.
bash-3.00# dladm show-link
ge0 type: legacy mtu: 1500 device: ge0
eri0 type: legacy mtu: 1500 device: eri0
2) Also checking modinfo | grep device should list the driver if it is installed and loaded.
3) prtconf also helps to list available devices.
bash-3.00# prtconf -a /dev/hme
prtconf: invalid device path specified
bash-3.00# prtconf -a /dev/eri
SUNW,Sun-Fire-880
pci, instance #2
network, instance #0
bash-3.00#
4) Even kstat -c net | more will show all the configured interfaces as modules and their instances. But anything comeup here after it is plumbed.
5) Finally ifconfig -a shows all the interfaces plumbed so far. Plumbing can happen only after a device (NIC) has been installed with appropriate driver.
6) Can also lookinto these files
bash-3.00# grep -w ge /etc/path_to_inst
"/pci@8,600000/network@1" 0 "ge"
bash-3.00# grep -w eri /etc/path_to_inst
"/pci@9,700000/network@1,1" 0 "eri"
bash-3.00# grep -w hme /etc/path_to_inst
Something about NIC
********************
Solaris has physical and logical interfaces. Physical interface is a HW with approriate driver. Logical inteface is mapping with physical interface (NIC) and has configuration information such as ip etc.
During system installation, the Solaris installation program detects any interfaces that are physically installed and displays each interface's name. At least one interface from the list of interfaces should be configured. The first interface to be configured during installation becomes the primary network interface. The IP address of the primary network interface is associated with the configured host name of the system, which is stored in the /etc/nodename file. You can configure additional interfaces during later.
Network Interface Names
***********************
Each physical interface is identified by a unique device name. Device names have the following syntax:
Driver names on Solaris systems could include ce, hme, bge, e1000g etc. The variable instance-number can have a value from zero to n, depending on how many interfaces of that driver type are installed on the system.
Some typical driver names for this interface are eri, qfe, and hme. When used as the primary network interface, the Fast Ethernet interface has a device name such as eri0 or qfe0.
Configring the interface.
*************************
Get the driver for the NIC from the installation CD and add package. Once package is installed an entry into /dev/.... will be made
now, dladm show-link. This should show the interface.
next, ifconfig hme0 plumb up should work and
ifconfig hme0 should showup without the IP.
IP configuration can be done as per the normal process.