Welcome to the Linux Foundation Forum!

Routing between two networks that have duplicate IP addresses

On a linux box we have three network interfaces, they look like below

    | CentOS 6 Server
    | ---------> eth0 (DHCP (192.168.1.x) Default Gateway, connects to a wired internet, 
    |----------> eth2 (IP : (10.165.11.139) GW to be used : (10.165.11.137), connects to a network A
    |----------> eth3 (IP : (10.150.114.190) GW to be used: (10.150.114.191), connects to a network B

Problem here is that both network A and network B have nodes with same IP, example :

    10.232.130.171
    10.232.130.172
    10.232.131.100

route-eth1 file looks like:

    10.232.130.0/24 via 10.165.11.137
    10.232.131.0/24 via 10.165.11.137

route-eth2 file looks like:

    10.232.130.0/24 via 10.150.114.189
    10.232.131.0/24 via 10.150.114.189

so pinging 10.232.130.171 will always route it thru eth1 and not eth2 tried with application which binds with interface (asterisk PBX), incoming connection from above IP work fine, but any response to it is sent via eth1, hence rejected.

I tried source based routing but that wont ping past gateway

ip rule add from 10.165.11.139 lookup net1
ip route add 10.232.130.0/23 via 10.165.11.137  dev eth2 table net1


ip rule add from 10.150.114.190 lookup net2
ip route add 10.232.130.0/23 via 10.150.114.189 dev eth3 table net2
# ip route show table net2 
10.232.130.0/23 via 10.150.114.189 dev eth3 

# ping -I eth3 10.232.130.170 
PING 10.232.130.170 (10.232.130.170) from 10.150.114.190 eth3: 56(84) bytes of data. 
From 10.150.114.190 icmp_seq=2 Destination Host Unreachable 
From 10.150.114.190 icmp_seq=3 Destination Host Unreachable

Any pointers how to resolve this?

Sign In or Register to comment.