Two NIC,same LAN,same default gataway issue

Hi!
We have HP DL380 with two NIC.One is Broadcom Corporation NetXtreme II BCM5708 and this one is integrated and second one is Intel Corporation 82572EI and this one is not-integrated. We have openSuse11.1 instaled on server. Both NIC were in same LAN and they have different IP adresses and both of them were pingable from another networks. We need different IP adresseses because different service was using different IP adresses. Network configuation was made by using YAST2. This was working perfectly well but we have to upgrade to 11.2.
After upgrading from 11.1 to 11.2 everything start to go wrong.:frowning:
Only one of IP adresses became pingable from different network.We thought that there were problem with hardware(NIC,cable,switch…) but that was not the case.
Network configuration was the same like with 11.1 but it was not working!!!We try every possible thing in YAST2, try to manualy change configuration in /etc/sysconfig/network files but nothing helped. And then after few hours of configuring network both addresses became able to ping fron another network.We didn’t know what happend because we didn’t do anything that we didn’t already done!Everything work fine for 2 hours and than again one of IP adrress became unpingable.
We concluded that the issue is route to default gateway and that one of the NIC don’t se that route.In the same subnet you can ping both IP address buth from another network you can ping one one.

Here is ifcfg-eth0,ifcfg-eth1 and routes files from /etc/sysconfig/network/ from openSuse11.1 where everything worked.


#more ifcfg-eth0
BOOTPROTO='static'
BROADCAST=''
ETHTOOL_OPTIONS=''
IPADDR='10.0.1.35/28'
MTU=''
NAME='NetXtreme II BCM5708 Gigabit Ethernet'
NETWORK=''
REMOTE_IPADDR=''
STARTMODE='auto'
USERCONTROL='no'
PREFIXLEN='28'


#more ifcfg-eth2
BOOTPROTO='static'
BROADCAST=''
ETHTOOL_OPTIONS=''
IPADDR='10.0.1.36/28'
MTU=''
NAME='82572EI Gigabit Ethernet Controller (Copper)'
NETWORK=''
REMOTE_IPADDR=''
STARTMODE='auto'
USERCONTROL='no'

#more routes
default 10.0.1.33 - -

Here is same files from openSuse11.2


#more ifcfg-eth0
BOOTPROTO='static'
BROADCAST=''
ETHTOOL_OPTIONS=''
IPADDR='10.0.1.35/28'
MTU=''
NAME='NetXtreme II BCM5708 Gigabit Ethernet'
NETWORK=''
REMOTE_IPADDR=''
STARTMODE='auto'
USERCONTROL='no'
PREFIXLEN='28'


#more ifcfg-eth2
BOOTPROTO='static'
BROADCAST=''
ETHTOOL_OPTIONS=''
IPADDR='10.0.1.36/28'
MTU=''
NAME='82572EI Gigabit Ethernet Controller (Copper)'
NETWORK=''
REMOTE_IPADDR=''
STARTMODE='auto'
USERCONTROL='no'


#more routes
default 10.0.1.33 - -

and routing table is


#route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
10.0.1.32      0.0.0.0         255.255.255.240 U     0      0        0 eth0
10.0.1.32      0.0.0.0         255.255.255.240 U     0      0        0 eth2
169.254.0.0     0.0.0.0         255.255.0.0     U     0      0        0 eth0
127.0.0.0       0.0.0.0         255.0.0.0       U     0      0        0 lo
0.0.0.0         10.0.1.33      0.0.0.0         UG    0      0        0 eth2

Now IP address that you can ping is 10.0.1.36 while 10.0.1.35 in unreachable.From same subnet you can ping both IP address.As you can see default gateway is eth2 but if we understand logic of routing table for eth0 gateway is 0.0.0.0 and everything from 0.0.0.0 goes to 10.0.1.33!Right or not?
When we put ifdown eth2 routing table changes and eth0 becomes default gateway


#route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
10.0.1.32      0.0.0.0         255.255.255.240 U     0      0        0 eth0
169.254.0.0     0.0.0.0         255.255.0.0     U     0      0        0 eth0
127.0.0.0       0.0.0.0         255.0.0.0       U     0      0        0 lo
0.0.0.0         10.0.1.33      0.0.0.0         UG    0      0        0 eth0

Now you can ping 10.0.1.35 fron another network.
After we ifup eth2 everything chandes to way it was before (can ping 10.0.1.36,can’t ping 10.0.1.35).
We didn’t know is it openSuse11.2 issue or something is wrong with DL380 so we deploy openSuse11.1 on another DL380 and on that server we could ping both IP address from another network.After upgrade fron 11.1 to 11.2 same thing happened.Now we know that this is openSuse 11.2 issue.>:(

After brainstorming we deside put up alias interface on one NIC


#more /etc/sysconfig/network/ifcfg-eth0
BOOTPROTO='static'
BROADCAST=''
ETHTOOL_OPTIONS=''
IPADDR='10.0.1.36/28'
MTU=''
NAME='NetXtreme II BCM5708 Gigabit Ethernet'
NETWORK=''
REMOTE_IPADDR=''
STARTMODE='auto'
USERCONTROL='no'
PREFIXLEN='28'
IPADDR_0='10.0.1.35/28'
LABEL_0='1'

and routes


#more /etc/sysconfig/network/routes
default 10.0.1.33 - -

route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
10.0.1.32      0.0.0.0         255.255.255.240 U     0      0        0 eth0
169.254.0.0     0.0.0.0         255.255.0.0     U     0      0        0 eth0
127.0.0.0       0.0.0.0         255.0.0.0       U     0      0        0 lo
0.0.0.0         10.0.1.33      0.0.0.0         UG    0      0        0 eth0

and now everything work fine exept fact that now if eth0 stop working we loose both interfaces.We can ping both IP addresses from another network.

This was using method with ifup.
We also tried with NetworkMenager and that did work for a while and then stop working.

My questions are:
1.Is it posible that in openSuse 11.2 you can NOT assing two IP adrresses from NIC(one NIC one IP,another NIC another IP,same network,same default gateway) if those addreses are is in same network?This worked perfectly in openSuse 11.1.

2.Is this kernel bug,network bug,driver bug,some another bug or this is not bug?

If anyone know how to make both NIC to work at same time…
I almost forgot,we try everything possible from console not using YAST2 and same thing happend.

HELP US!!!

The default gateway is for the whole machine, and is not per NIC. Therefore it only needs to be set once. It doesn’t matter which NIC the traffic to the gateway emerges from since they are both on the same LAN and subnet. If your gateway is only expecting the traffic from one address you could have problems.

Hello,again OpenSuse lovers!!!
After weeks of testing we finaly find a solution!!!
First we use only one eth. interface eth0 and on that interface we put one IP address.On that same interface we also bring up alias interface eth0:1 with another IP address and booth IP addresses were pingable!!!Default gateway was thru eth0.
Because we already have two eth.interface,two eth.cables we bring that in bond interface bond0 with one IP address.On that bond interface we bring up alias interface bondo:1 with another IP address.Default gateway was thru bond0.
After this we have to delete IP address from previous interfaca.
In a few days I will post complete configuration and command list and more detail explanation!!!
:):slight_smile: