# 2 NICs same subnet conflicts

**URL:** <https://forums.suse.com/t/2-nics-same-subnet-conflicts/22301>\
**Category:** SLES Networking\
**Created:** [March 5, 2012, 3:28am UTC](https://forums.suse.com/t/2-nics-same-subnet-conflicts/22301 "2012-03-05T03:28:44Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![karlochacon](https://avatars.discourse-cdn.com/v4/letter/k/65b543/32.png) [@karlochacon](https://forums.suse.com/u/karlochacon)\
**Post date:** [March 5, 2012, 3:28am UTC](https://forums.suse.com/t/2-nics-same-subnet-conflicts/22301/1 "2012-03-05T03:28:44Z")

</div>

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](http://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

---

<div class="post-metadata">

**Author:** ![karlochacon](https://avatars.discourse-cdn.com/v4/letter/k/65b543/32.png) [@karlochacon](https://forums.suse.com/u/karlochacon)\
**Post date:** [March 5, 2012, 6:45am UTC](https://forums.suse.com/t/2-nics-same-subnet-conflicts/22301/2 "2012-03-05T06:45:33Z")

</div>

looks like I have to use iproute2 just don’t know how  
any guidance

thanks

---

<div class="post-metadata">

**Author:** ![system](https://us1.discourse-cdn.com/flex022/uploads/suse/original/2X/5/5012ba89e3ffb5220dac47d5ea0ba032e2fe1cb6.png) [@system](https://forums.suse.com/u/system)\
**Post date:** [March 5, 2012, 7:20am UTC](https://forums.suse.com/t/2-nics-same-subnet-conflicts/22301/3 "2012-03-05T07:20:57Z")

</div>

-----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](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/](http://enigmail.mozdev.org/)

iQIcBAEBAgAGBQJPVE04AAoJEF+XTK08PnB5p24P/jSWf5gwwOd03FapUpDwgjs3  
IUDAUFvQ6dfYFni2AoebSApcCVxCTnGkn7wP0RDHeRvXxFBEAfOVUYnLmQmqu3Q1  
zvbzTj2N+/GllkjqqX4manZzPN2Ap6Bt4so7mmfsBVFbtmn7bP3OIZNqa07CTu/A  
Oh4BAyzP60JKkR1D2T+jUna1/NunjhSyKKmPyjyui5gtY8g+Jp9t2tp/TZAu0/J1  
Iwg/JevZGS6QeHXvy+f5I2EJbNqb3qyH7QKWpE0wVFpmdHjdFTMt1xdQZcYtYvBM  
wA2wcWZaxnahUffn6vuixnlyyE4gZ2oeYhj92H8fYg6+i27S9GYg25/Apud81UsH  
jZgDwXd0X/QNMzqijXvoK62bZLjRsqF/YqAAvuO2STK8h63F48qT3pQVjPZoDtAx  
IyIW3GvQ0kDCqPeBibC/Qi3rp/2FOPFZNq66od2i60D5TwHa9ZLjQZQtA/saLBI4  
8YvNPcDLNFbnD1vGIbjkwkR9PQ/jxYd/b5QTiMRR9nttGsXdouZSeutDQofmkmNh  
PTeZ31vnxXhRABFlVVLH4Hc9VVuxbvdBqeJ0zYAx3eXNOfiM+bRhmcQ70N9HOjH7  
yD65vaVMd/Dx6RTpM21pxRtF9X2D5aTa62ahlDBDXP5XER/7DmzJO0lHy9wgtgl2  
anqfdbA2XoxOn78CUzzd  
=bdzN  
-----END PGP SIGNATURE-----

---

<div class="post-metadata">

**Author:** ![karlochacon](https://avatars.discourse-cdn.com/v4/letter/k/65b543/32.png) [@karlochacon](https://forums.suse.com/u/karlochacon)\
**Post date:** [March 5, 2012, 5:10pm UTC](https://forums.suse.com/t/2-nics-same-subnet-conflicts/22301/4 "2012-03-05T17:10:12Z")

</div>

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

---

<div class="post-metadata">

**Author:** ![Willem1](https://avatars.discourse-cdn.com/v4/letter/w/c57346/32.png) [@Willem1](https://forums.suse.com/u/Willem1)\
**Post date:** [March 12, 2012, 10:09pm UTC](https://forums.suse.com/t/2-nics-same-subnet-conflicts/22301/5 "2012-03-12T22:09:01Z")

</div>

[QUOTE=karlochacon;2838]

`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?[/QUOTE]

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

Cheers,  
Willem
