3

Let says I have two VLANs, 10.0.1.x and 192.168.1.x. These 2 VLANs have inter VLAN routing enabled.

Computer A: connected to 192.168.1.x with IP 192.168.1.2

Computer B: connected to both. 10.0.1.3 and 192.168.1.3

When I ping 192.168.1.3 from A, it is okay. But if I ping 10.0.1.3, it fails.

However, if I turn off the 192.168.1.3 interface on computer B, then I can reach 10.0.1.3 from A.

Why is that so? What can I do to solve the situation? Any routing table issue involved?

2 Answers 2

3

That's perfectly normal.

When you ping 10.0.1.3 you emit a ICMP echo request packet with source address 192.168.1.2 and destination address of 10.0.1.3, and expect a response with source address 10.0.1.3 / destination address 192.168.1.2

When the computer B responds, it sends a response to 192.168.1.2. Since it has an interface in the same network, with it's IP 192.168.1.3, it sends the response trough this interface, so the ICMP echo reply message is sent with source address 192.168.1.3 / destination address 192.168.1.2.

Computer A does receive the response but it's not the expected source address, so it does not associate it with the initial echo request.

Now if you turn off the interface 192.168.1.3, the response is sent trough the other interface with the correct IP address.

Concerning how to solve the situation, it all depends on why you do have computer B multi-homed (I.E. connected to several networks). It's better in most case to avoid this kind of setup.

One way to do it would be to NAT the 10.0.1.X address to 192.168.1.x address for example.

0

You may be hit by Reverse Path Filtering. Basically Computer B is dropping the incoming ICMP-packets since it wasn't expecting IP packets from 192.168.1.2 on the 10.0.1.3 interface.

It is expecting traffic from the 192.168.1.0/24 subnet from the 192.168.1.3 interface.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.