1

my /etc/iproute2/rt_tables is

255 local
254 main
253 default
0   unspec
1 brain
2 strom

I'm using below given /etc/network/interfaces

allow-hotplug eth0
iface eth0 inet static
        hwaddress ether 00:10:5a:02:2b:0e
        address 192.168.1.149
        netmask 255.255.255.0
        network 192.168.1.0
        broadcast 192.168.1.255
        gateway 192.168.1.1
        dns-nameservers 8.8.8.8 8.8.4.4
        up ip route add 192.168.1.0/24 dev eth0 table brain
        up ip route add default via 192.168.1.1 dev eth0 table brain
        up ip rule add from 192.168.1.149/32 table brain
        up ip rule add to 192.168.1.149/32 table brain

allow-hotplug eth3
iface eth3 inet static
        hwaddress ether 00:15:17:95:61:eb
        address 192.168.10.149
        netmask 255.255.255.0
        network 192.168.10.0
        broadcast 192.168.10.255
        dns-nameservers 8.8.8.8 8.8.4.4
        up ip route add 192.168.10.0/24 dev eth3 table strom
        up ip route add default via 192.168.10.1  dev eth3 table strom
        up ip rule add from 192.168.10.149/32 table strom
        up ip rule add to 192.168.10.149/32 table strom

for two uplinks for a linux machine -- with source policy routing

for eth0, things are fine -- I can ping yahoo.com using eth0, browsing is ok as well #ping -I eth0 yahoo.com works fine. I can also browse internet on eth0.

now the eth3 when I do a ping using eth3, I dont get a response either

ping -I eth3 yahoo.com
PING yahoo.com (72.30.35.10) from 192.168.10.149 eth3: 56(84) bytes of data.
From strom (192.168.10.149) icmp_seq=1 Destination Host Unreachable
From strom (192.168.10.149) icmp_seq=2 Destination Host Unreachable

but port 80 is working fine on eth3 when I use curl

curl --interface eth3 http://checkip.amazonaws.com/
xxx.xxx.xxx.xxx ( this is a real IP of eth3 for outgoing, which means the traffic flown through eth3 )

when I ping using the gateway on eth3 I get response locally

#ping 192.168.10.1
PING 192.168.10.1 (192.168.10.1) 56(84) bytes of data.
64 bytes from 192.168.10.1: icmp_req=1 ttl=64 time=5.53 ms

only the ping outside the LAN for eth3 is not working --

Samba Shares on the eth3 LAN side is also working fine

now the tcpdump of ping on eth3

tcpdump -i eth3 

I see only who-has

14:18:07.747843 ARP, Request who-has 72.30.35.10 tell 192.168.10.149, length 28
14:18:08.745739 ARP, Request who-has 72.30.35.10 tell 192.168.10.149, length 28
14:18:09.745736 ARP, Request who-has 72.30.35.10 tell 192.168.10.149, length 28
14:18:10.763054 ARP, Request who-has 72.30.35.10 tell 192.168.10.149, length 28
14:18:11.761736 ARP, Request who-has 72.30.35.10 tell 192.168.10.149, length 28

I get a simple no understanding why the ping is not working for the outgoing internet world for eth3

my routing table is

# netstat -rn
Kernel IP routing table
Destination     Gateway         Genmask         Flags   MSS Window  irtt Iface
0.0.0.0         192.168.1.1     0.0.0.0         UG        0 0          0 eth0
172.17.0.0      0.0.0.0         255.255.0.0     U         0 0          0 docker0
192.168.1.0     0.0.0.0         255.255.255.0   U         0 0          0 eth0
192.168.10.0    0.0.0.0         255.255.255.0   U         0 0          0 eth3

my policy routing is

# ip route show table strom
default via 192.168.10.1 dev eth3
192.168.10.0/24 dev eth3  scope link


#ip route show table brain
default via 192.168.1.1 dev eth0
192.168.1.0/24 dev eth0  scope link

#ip rule show
0:      from all lookup local
32762:  from all to 192.168.1.149 lookup brain
32763:  from all to 192.168.10.149 lookup strom
32764:  from 192.168.1.149 lookup brain
32765:  from 192.168.10.149 lookup strom
32766:  from all lookup main
32767:  from all lookup default

/etc/hosts entry for both LANs

192.168.1.149   puppy
192.168.10.149  strom

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.