That's working as expected?
Your box1 only knows of three networks, and has no default route. So a query for any network that's not one of those three won't leave the box.
If you don't want to have the static route, add a default route so it can fall back to that.
No, it’s not working as expected.
As suggested, I’ve removed previous route and added default route.
DELETE ROUTE TO 172.16.0.0/24tc@Core1:~$ sudo route del -net 172.16.0.0/24
tc@Core1:~$
ADDING DEFAULT ROUTE POINTING TO THE NEXT GATEWAYtc@Core1:~$ sudo route add default gw 10.0.0.2
tc@Core1:~$
VERIFY ROUTEtc@Core1:~$ route
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
default 10.0.0.2 0.0.0.0 UG 0 0 0 eth1
10.0.0.0 * 255.0.0.0 U 0 0 0 eth1
127.0.0.1 * 255.255.255.255 UH 0 0 0 lo
192.168.10.0 * 255.255.255.0 U 0 0 0 eth0
tc@Core1:~$
tc@Core1:~$ ip route get 172.16.0.1
172.16.0.1 via 10.0.0.2 dev eth1 src 10.0.0.1
cache ipid 0xa95d
tc@Core1:~$
Unfortunately, the result still same.
Weird thing is traceroute traffic don’t reach to the next hop even though it’s directly connected.
tc@Core1:~$ traceroute 172.16.0.1
traceroute to 172.16.0.1 (172.16.0.1), 30 hops max, 38 byte packets
1 * * *
2 * * *
3 * * *
4 * * *
5 * * *
And from the tcpdump output, seems like the source, Core1 (10.0.0.1) is trying to send traceroute traffic (UDP), but not getting response from the destination, Core3 (172.16.0.1)
tc@Core2:~$ sudo tcpdump -i 2 -n
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on eth1, link-type EN10MB (Ethernet), capture size 68 bytes
11:08:30.277250 arp who-has 10.0.0.2 tell 10.0.0.1
11:08:30.277273 arp reply 10.0.0.2 is-at 08:00:27:10:0c:49
11:08:30.277620 IP 10.0.0.1.37930 > 172.16.0.1.33435: UDP, length 10
11:08:35.463414 IP 10.0.0.1.37930 > 172.16.0.1.33436: UDP, length 10
11:08:40.652115 IP 10.0.0.1.37930 > 172.16.0.1.33437: UDP, length 10
11:08:45.840060 IP 10.0.0.1.37930 > 172.16.0.1.33438: UDP, length 10
11:08:51.028691 IP 10.0.0.1.37930 > 172.16.0.1.33439: UDP, length 10
11:08:56.216410 IP 10.0.0.1.37930 > 172.16.0.1.33440: UDP, length 10
11:09:01.406705 IP 10.0.0.1.37930 > 172.16.0.1.33441: UDP, length 10
11:09:06.592886 IP 10.0.0.1.37930 > 172.16.0.1.33442: UDP, length 10
11:09:11.778991 IP 10.0.0.1.37930 > 172.16.0.1.33443: UDP, length 10