To determine whether or not the network card is functional, i.e., transmitting and receiving packets, use the nicinfo command.
If you're logged in as root, your PATH includes the directory that contains the nicinfo executable; if you're logged in as another user, you have to specify the full path:
$ /usr/sbin/nicinfo
Now figure out the diagnostic information from the following output:
en0: AMD PCNET-32 Ethernet Controller Physical Node ID ........................... 000C29 DD3528 Current Physical Node ID ................... 000C29 DD3528 Current Operation Rate ..................... 10.00 Mb/s Active Interface Type ...................... UTP Maximum Transmittable data Unit ............ 1514 Maximum Receivable data Unit ............... 1514 Hardware Interrupt ......................... 0x9 I/O Aperture ............................... 0x1080 - 0x10ff Memory Aperture ............................ 0x0 Promiscuous Mode ........................... Off Multicast Support .......................... Enabled Packets Transmitted OK ..................... 588 Bytes Transmitted OK ....................... 103721 Memory Allocation Failures on Transmit ..... 0 Packets Received OK ........................ 11639 Bytes Received OK .......................... 934712 Memory Allocation Failures on Receive ...... 0 Single Collisions on Transmit .............. 0 Deferred Transmits ......................... 0 Late Collision on Transmit errors .......... 0 Transmits aborted (excessive collisions) ... 0 Transmit Underruns ......................... 0 No Carrier on Transmit ..................... 0 Receive Alignment errors ................... 0 Received packets with CRC errors ........... 0 Packets Dropped on receive ................. 0
You should take special note of the Packets Transmitted OK and Packets Received OK counters. If they're zero, the driver might not be working, or the network might not be connected. Verify that the driver has correctly auto-detected the Current Operation Rate.