Hi,
there's a short and a long explanation.
The short is: you didn't do it right. I guess you want the long one tho.
The long one is: the middle node is going insane.
It has two interfaces with similar IP numbers, both belonging to the same subnet. Even if you trap the packets below IP, its IP layer will still kick in (and it won't be happy).
Moreover, since you're using P2P interfaces, the middle node *knows* that you're trying to reach an impossible IP number, an will reply with a destination unreachable. After all, in a P2P link there are only 2 IP numbers.
What you have to do is:
- Remove the IP layer from the middle node - otherwise you'll always get a lot of destination unreachable ICMPs, and
- Use the right IP number - your intended destination is interfaces.GetAddress(3), not interfaces.GetAddress(2)
Oh... and you might also want to enable a two-way communication :D
T.