2.4.0 and sendmsg problem. Maybe NAT bug.

Rusty Russell rusty@linuxcare.com.au
Sun, 30 Jul 2000 21:46:00 +1000


In message <3983C8CA.D9CB8137@nbase.co.il> you write:
> > This is a feature: we ignore socket bindings when recalculating source
> > address.  This was a difficult decision, but since an app won't know
> > that we're altering the packet's destination, and we don't want to
> > send out packets from 127.0.0.1...
> 
> OK, but what about the fact that packets are sent via wrong interface? I
> "bind" msg to eth1 but it is sent via eth0. 

Think about this.  The average program knows nothing of NAT.  The
administrator overrides its behaviour by doing NAT on outgoing
packets.

> Besides, if you'll send packets via bound interface only, there is no
> problem to set source address of the packet to be bound interface
> address. If you bind socket to 'lo' the packets with src 127.0.0.1 will
> be sent only from loopback. Do I miss something?

This code will only kick in if you are doing DNAT to 192.168.1.2, for
example.  Then you (1) want to reroute, and (2) want to disregard the
original binding.

With no NAT rules, you shouldn't be seeing any effect,
Rusty.
--
Hacking time.