Network not working on Solaris 10

Hi,

Need help for the network configuration on Solaris 10 5/8.

My NIC's dirver was loaded after Solaris installation and is configured using static ip address for a local network: 172.16.1.12
I have configured set of files as: /etc/hosts :
172.16.1.12 ls12
/etc/hostname.iprb0:
ls12
/etc/nodename:
ls12
Physical network cable connections checked and all good.

The problem is that I can ping the machine itself but can not ping others on the subnet 172.16.1.0

While another computer with address of 172.16.1.15 has no problem at all. The only difference for those two computers is that the nic on second one was recognized by Solaris during installation time and the network configuration was done during the installation time.

What is the problem for the first one?

thanks

dunson

What is the output from an ifconfig -a? have you checked the netmask?

# ifconfig -alo0: flags=2001000849<UP,LOOPBACK,RUNNING,MULTICAST,IPv4,VIRTUAL> mtu 8232 index 1 inet 127.0.0.1 netmask ff000000
iprb0: flags=1000843<UP,BROADCAST,RUNNING,MULTICAST,IPv4> mtu 1500 index 2 inet 172.16.1.12 netmask ffffff00 broadcast 172.16.1.255 ether 0:1e:90:cd:9a:a4

Do you have the default GW set correctly in /etc/defaultrouter? Might not be the cause, but make sure it is set properly before further troubleshooting. The output from netstat -rn would give an indication as well.

your /etc/netmask and /etc/defaultrouter should be set

whether the interface is recognized during installation or not doesn't mean the interface doesn't work. could be that this interface is not native to sol10 os. as long as the correct drivers are loaded into the kernel, the interface will work as advertised. i'm going with incredible on this one.
what is the output of the following commands:
dladm show-dev
netstat -rn
cat /etc/netmask
cat /etc/defaultrouter

And also, on some new T5xxx system, you can't even plumb thenxge interface. They have some bugs with the Solaris 05/08 release and it will only work after apply the latest kernel patches

Thanks for you guys' tips.

I forgot to mention that the /etc/netmasks file was already set, as

192.168.1.0 255.255.255.0

172.16.1.0 255.255.255.0

The /etc/defaultrouter was set, as

192.168.1.1

For 172.16.1.0 subnet, as all three machines use direct routing for this local network, I think no router needed for them.
Actually, one machine has a rtls0 nic working on 172.16.1.15. It can communicate with one machine (with XP installed)
on 172.16.1.4 without problem.

I realized the problem may come from the nic drivers to be installed. Here is why and the problem:

1) The environment:

Two networks: 192.168.1.0 with an extra router;

172.16.1.0 no router -- and no router needed

Three machines Win1, Sol1, Sol2.

Win1:

    installed with XP, two NICs, 192.168.1.4 and 172.16.1.4. No problem at all.

Sol1:

    Solaris 10 5/8, or later 10/8;

    two NICs:

        nVidia nforce 430 MCP61 for 192.168.1.15

        Realtek 8139 for 172.16.1.15

Sol2:

    Solaris 10 5/8

    two NICs:

        Intel 82562 ET/EZ/GT/GZ Pro/100 VE \(from result of scanpci command\), for 192.168.1.12

        3Com 3c905C-TX/TX-M [Tornado] \(from result of scanpci command\), for 172.16.1.12

    During the Solaris installations for Sol1 and Sol2 machines, only Sol1's Realtek nic was recognized \(rtls0\).

I identified the problem is likely coming from the NICs' drivers -- could not be properly installed:

3). Working on Sol2 machine

I first manually tried to install Sol2's two nic drivers.
For machine Sol2, from "# prtconf -pv" I got the vendor ids and device ids

Intel 82562 vendor id 8086, device id 1064

3c905C-TX vendor id 10b7, device id 9200

3.a) Installing Intel 82562 EZ
According SUN's site: Hardware | Oracle

Need to do:

    \# update_drv -a -i "pci8086,1050" iprb;

    and reboot.

But my Intel nic has device id 1064. And I tried 1050, not working. So I used

\# update_drv -a -i "pci8086,1064" iprb;

That's good, NO errors appearred. After restarted

\# ifconfig iprb0 plumb ==&gt; no error

\# ifconfig iprb0 192.168.1.12/24 broadcast 192.168.1.255 up

\# ifconfig -a

lo0: flags=2001000849&lt;UP,LOOPBACK,RUNNING,MULTICAST,IPv4,VIRTUAL&gt; mtu 8232 index 1

inet 127.0.0.1 netmask ff000000

iprb0: flags=1000843&lt;UP,BROADCAST,RUNNING,MULTICAST,IPv4&gt; mtu 1500 index 2 inet 192.168.1.12

netmask ffffff00 broadcast 192.168.1.255 ether 0:1e:90:cd:9a:a4

So far, it's fine.

\# ping 192.168.1.12 ==&gt; working

\# ping 192.168.1.4 ==&gt; no responding from Win1

(checking the log of the firewall on Win1: no messaged received from 192.168.1.12)

\# ping 192.168.1.1 ==&gt; no responding from the router

3.b) Same as 3c905C-TX card.

\# update_drv -a -i "pci10b7,9200" elxl

After

\# ifconfig elxl0 plumb

\# ifconfig elxl0 172.16.1.12/24 broadcast 172.16.1.255 up

Same result as to Intel 82562

3.c) Remove and then reinstall drivers even failed
Later, for a retry, I executed

\# ifconfig iprb0 unplumb

\# ifconfig elxl0 unplumb

\# rem_drv iprb

\# rem_drv elxl

And remove the entries in /etc/driver_aliases file for these two nics

Now,

\# update_drv -a -i "pci8086,1064" iprb ==&gt; error: "Driver \(iprb\) not installed"

\# update_drv -a -i "pci10b7,9200" elxl ==&gt; error: "Driver \(elxl\) not installed"

4) Working on Sol1 machine -- The result showed that my problems may come from the drivers for all nics
As I couldn't solve the problems on Sol2, I shifted to Sol1. During the Solaris installation, rtls0 was recognized and
set to 172.16.1.15 and then Sol1 could immediately talk to Win1 after installation by

\# ping 172.16.1.4

For the nForce 430 MCP61 nic, using

\# prtconf -pv

will not show info as it did not show up clearly the "Ethernet" message.

But by using

\# /usr/X11/bin/scanpci -v

I can get this nforce430 MCP61 nic info as:

pci bus 0x0000 cardnum 0x07 function 0x00: vendor 0x10de device 0x03ef

nVidia Corporation MCP61 Ethernet

CardVendor 0x1019 card 0x2609 \(Elitegroup Computer Systems, Card unknown\)

STATUS 0x00b0 COMMAND 0x0007

CLASS 0x06 0x80 0x00 REVISION 0xa2

BIST 0x00 HEADER 0x00 LATENCY 0x00 CACHE 0x00

BASE0 0xfe02d000 addr 0xfe02d000 MEM

BASE1 0x0000ec01 addr 0x0000ec00 I/O

MAX_LAT 0x14 MIN_GNT 0x01 INT_PIN 0x01 INT_LINE 0x0f

BYTE_0 0x19 BYTE_1 0x10 BYTE_2 0x09 BYTE_3 0x26

So: vendor id 10de, device id 03ef

I could not find the nge driver for it. But I could get nfo driver for it from http://homepage2.nifty.com/mrym3/taiyodo/eng/

I tried version 1.1.2, version 2.4.4 and version 2.6.3. I got strange results:

From checking the file: nfo_gem.c for all three versions, only 2.6.3 support nforce 430, MCP61.
Installing version 2.6.3 let me plumbing, assigning address 192.168.1.15 and ping itself, but could NOT ping 172.16.1.4
Installing version 1.1.2 reported error when executing

\# ./adddrv.sh ==&gt; error: "System configuration files modified but driver not loaded or attached"

But

\# modload obj/nfo ==&gt; good

\# devfsadm -i nfo ==&gt; good

\# ifconfig nfo0 plumb ==&gt; good

\# ifconfig nfo0 192.168.1.15/24 broadcast 192.168.1.255 up ==&gt; good

\# ping 192.168.1.15 ==&gt; ping itself, good

\# ping 192.168.1.4 ==&gt; good. Succeeded!!!!

\# ping 192.168.1.1 ==&gt; good. Succeeded!!!!

I was excited. But after restart, nfo dispeared. And I tried reload the drivers for all versions.
It never worked again.

By so far, I realized that it's likely a problem from the drivers.

5) So my problem is:

Where I can find correct drivers for

Intel 82562EZ Pro/100

nVidia nforce430 MCP61

3Com 3c905C-TX

And how to install them correctly and uninstall?

And further, for nforce430 MCP61, where is the SUN nge driver I can find and how to install?

Thank you so much

dunson