title: How does client side bind influence tcp connect?
body: <p>I have a client system with two ipaddresses: 10.172.12.13 &amp; 58.53.12.15.</p>
  
  <p>Server is also configured to have two ipaddresses: 10.172.12.18 &amp; 58.53.12.17</p>
  
  <p>Now, on the client side, I first do a bind to local address &amp; port(port is 0) and then do a TCP non-blocking connect.</p>
  
  <p>The strange behavior is that if I specify 10.172.12.13 as the local address to bind and then connect to 58.53.12.17 in Server, then it fails to connect giving the error as 'Host Unreachable'.</p>
  
  <p>But, if I specify the local address in client as 58.53.12.15 &amp; then try the connection to 58.53.12.17 in Server, it connects.</p>
  
  <p>The most interesting &amp; surprising aspect is that, after the above execution, if I again give 10.172.12.13 as the local address to bind and connect to 58.53.12.15 it connects successfully now. But, this happens only for few minutes. After some time, the connection again fails for 10.172.12.13 as local address.</p>
  
  <p>Request someone to explain what is happening? How bind affects the TCP connect?</p>