title: Binding other than 127.0.0.1 loopback addresses
body: <p>Why can't I send data via UDP socket, when I bind it to e.g. 127.0.0.2, instead of 127.0.0.1? Receiving seems to work</p>
  
  <p>This is my receiving end</p>
  
  <pre><code>&gt;&gt;&gt; import socket
  &gt;&gt;&gt; sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM )
  &gt;&gt;&gt; sock.bind(("127.0.0.1", 6666))
  &gt;&gt;&gt; sock.recvfrom(1024)
  ('01', ('127.0.0.1', 7777))
  </code></pre>
  
  <p>And this is how I send the data</p>
  
  <pre><code>&gt;&gt;&gt; sock = socket.socket( socket.AF_INET, socket.SOCK_DGRAM )
  &gt;&gt;&gt; sock.bind(('127.0.0.1', 7777))
  &gt;&gt;&gt; sock.sendto(b'01',('127.0.0.1',6666))
  2
  </code></pre>
  
  <p>Now if in sending I say like</p>
  
  <pre><code>&gt;&gt;&gt; sock = socket.socket( socket.AF_INET, socket.SOCK_DGRAM )
  &gt;&gt;&gt; sock.bind(('127.0.0.2', 7777))
  &gt;&gt;&gt; sock.sendto(b'01',('127.0.0.1',6666))
  2
  </code></pre>
  
  <p>Nothing happens in receiving end. sendto returns 2, just like with .1 address, but nothing just arrives to receiving end. To make this more strange, if I bind/receive 127.0.0.2/6666, it can receive data just fine. But again, not if I send the data from 127.0.0.2</p>
  
  <p>This is Python 2.7.5 and I run it on windows 7. I am trying to build MT environment, where I could simulate connections to multiple IP addresses, within same computer. I have no idea whether this is a python feature or windows or maybe user error...</p>