PDA

View Full Version : 2 NICs same subnet conflicts



karlochacon
05-Mar-2012, 02:28
hi guys

I setting a Suse 11 which has 2 NICs
eth0 - 192.168.10.150/24 - 00.0C.29.DC.10.CA (MAC)
eth1 - 192.168.10.151/24 - 00.0C.29.DC.10.DE (MAC)
I need both in the same subnet since they will ne connected to another device - storage - point to point

but I found something while doing the installation
doing ARPs from a workstation I found the behavior below


[root@workstation ~]# arp -n
Address HWtype HWaddress Flags Mask Iface
192.168.10.151 ether 00:0C:29:DC:10:CA C eth0
192.168.10.150 ether 00:0C:29:DC:10:CA C eth0


as you can see it's like eth0 gets all the requests
in fact If I disconnect the cable from eth1 IP .151 will be still pingable which is what I don't want
and If I disconnect cable from eth0 none of the IPs .150 - .151 is pingable and I was hoping .151 would be pingable...

so why is this behavior?
I need eth0 respond the request for .150 and don't respond .151
and eth1 respond .151 request

seems like eth0 owns the IPs

This is not working

net.ipv4.conf.all.arp_ignore=1
net.ipv4.conf.all.arp_announce=2

neither is this

net.ipv4.conf.default.arp_filter=1
net.ipv4.conf.all.arp_filter=1

any help?
thanks alot

karlochacon
05-Mar-2012, 05:45
looks like I have to use iproute2 just don't know how
any guidance

thanks

ab
05-Mar-2012, 06:20
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

The technology doing this is, I believe, 'Proxy ARP'. Try disabling it
per the following (really old) page to see if that does what you're after.

http://linuxproblem.org/art_8.html

When I first learned about this (year or two ago) it was explained that
Linux does this normally in cases like yours because the kernel can be
helpful as it does so. That's not always a desired function, but if the
packets route to the network it often makes sense to get to the entire
system even if it's through the wrong physical connection. Anyway, as
mentioned, I think you can turn it off. 'sysctl' may be the command to
turn it off across reboots. Looks like it may be a per-device setting too.

cat /proc/sys/net/ipv4/conf/eth0/proxy_arp

plus some others:

cat /proc/sys/net/ipv4/conf/all/proxy_arp

cat /proc/sys/net/ipv4/conf/default/proxy_arp

Good luck.
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.18 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/

iQIcBAEBAgAGBQJPVE04AAoJEF+XTK08PnB5p24P/jSWf5gwwOd03FapUpDwgjs3
IUDAUFvQ6dfYFni2AoebSApcCVxCTnGkn7wP0RDHeRvXxFBEAf OVUYnLmQmqu3Q1
zvbzTj2N+/GllkjqqX4manZzPN2Ap6Bt4so7mmfsBVFbtmn7bP3OIZNqa07C Tu/A
Oh4BAyzP60JKkR1D2T+jUna1/NunjhSyKKmPyjyui5gtY8g+Jp9t2tp/TZAu0/J1
Iwg/JevZGS6QeHXvy+f5I2EJbNqb3qyH7QKWpE0wVFpmdHjdFTMt1x dQZcYtYvBM
wA2wcWZaxnahUffn6vuixnlyyE4gZ2oeYhj92H8fYg6+i27S9G Yg25/Apud81UsH
jZgDwXd0X/QNMzqijXvoK62bZLjRsqF/YqAAvuO2STK8h63F48qT3pQVjPZoDtAx
IyIW3GvQ0kDCqPeBibC/Qi3rp/2FOPFZNq66od2i60D5TwHa9ZLjQZQtA/saLBI4
8YvNPcDLNFbnD1vGIbjkwkR9PQ/jxYd/b5QTiMRR9nttGsXdouZSeutDQofmkmNh
PTeZ31vnxXhRABFlVVLH4Hc9VVuxbvdBqeJ0zYAx3eXNOfiM+b RhmcQ70N9HOjH7
yD65vaVMd/Dx6RTpM21pxRtF9X2D5aTa62ahlDBDXP5XER/7DmzJO0lHy9wgtgl2
anqfdbA2XoxOn78CUzzd
=bdzN
-----END PGP SIGNATURE-----

karlochacon
05-Mar-2012, 16:10
guys

I am getting there

this does what I want

iproute2

echo 200 storage_table >> /etc/iproute2/rt_tables
ip rule add from 192.168.10.151 table storage_table
ip route add 192.168.10.0/24 via 192.168.10.151 dev eth1 table storage_table

sysctl parameters

net.ipv4.conf.all.arp_ignore=1
net.ipv4.conf.all.arp_announce=2

but I need to make this changes permanent after reboot
where I should add them?
I already tried /etc/init.d/boot.local but no luck


echo 200 storage_table >> /etc/iproute2/rt_tables
ip rule add from 192.168.10.151 table storage_table
ip route add 192.168.10.0/24 via 192.168.10.151 dev eth1 table storage_table

any idea?
thanks

Magic31
12-Mar-2012, 21:09
net.ipv4.conf.all.arp_ignore=1
net.ipv4.conf.all.arp_announce=2

but I need to make this changes permanent after reboot
where I should add them?

Put them in /etc/sysctl.conf and they will persist across boots.

Cheers,
Willem