0

following situation: i have two network interfaces - one ethernet and one gprs (actually it does not matter, just two different links ... )

nic 1 has a default route configured and is default gateway (metric 20) nic 2 has a default route configured (metric 25)

  • i send a ping request to nic 1 --> i receive the response from nic 1. everything ok so far

  • i send a ping request to nic 2 --> i never see a response as the icmp response is sent out on nic 1!!!

is there a way to tell the system that it should send out all answers on the nic where the request came in? and just use the default gateway for connections that the system opens itself?

sorry ... forgot to mention we are talking about windows ce here ...

  • It would help if you say which OS this is – w00t Aug 18 '09 at 12:04
  • I'm not familiar with Windows CE but most systems will use the routing table to decide how to send a packet to a destination (thus ignoring which interface receives packets from that destination). This is sensible as networks with, in effect, asymmetric routing are not uncommon. Hence, you will probably need to address this by using the routing table on the Windows CE device. – mas Aug 30 '09 at 14:40

1 Answers1

1

What you need do to make this work is use policy routing. I have no idea how to make this work on Windows, but you can use iproute2 on Linux to set up a policy to send responses out on the same interface it came in on.

The Linux Advanced Routing And Traffic Control site has good information on how to do this.

If you aren't using Linux, hopefully "policy routing" and "multihomed" will give you enough google-fu to find your answers.

David Pashley
  • 23,151
  • 2
  • 41
  • 71