I am trying to play (in GNS3 if that matters) with a very simple topology of three routers connected via hub. The time I am trying to ping from one of the router to another say R1 to R2. The R3 replies with ICMP redirect message causing R1 to re issue the ping request to R2. The loop continues infinitely wrecking havoc on simulated network. The question is why R3 replies to R1 for ICMP message not directed to it (ping is from R1 to R2).
R3 routing table :-
R3>enable Password: R3#show ip route Codes: L - local, C - connected, S - static, R - RIP, M - mobile, B - BGP D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2 E1 - OSPF external type 1, E2 - OSPF external type 2 i - IS-IS, su - IS-IS summary, L1 - IS-IS level-1, L2 - IS-IS level-2 ia - IS-IS inter area, * - candidate default, U - per-user static route o - ODR, P - periodic downloaded static route, H - NHRP, l - LISP + - replicated route, % - next hop override Gateway of last resort is not set 10.0.0.0/8 is variably subnetted, 4 subnets, 2 masks O 10.1.0.0/16 [110/2] via 192.168.0.1, 00:58:17, FastEthernet1/0 O 10.2.0.0/16 [110/2] via 192.168.0.2, 00:58:17, FastEthernet1/0 C 10.3.0.0/16 is directly connected, FastEthernet0/0 L 10.3.0.1/32 is directly connected, FastEthernet0/0 C 192.168.0.0/16 is directly connected, FastEthernet1/0 192.168.0.0/32 is subnetted, 1 subnets L 192.168.0.3 is directly connected, FastEthernet1/0 R3#
UPDATE: The problem is not ICMP redirect but the fact that any router will place the ICMP ping packet it cannot handle back to the interface it arrived from flooding the network till TTL expires.
Update2: replacing hub with switch solves the problem.