Re: Why does struct sock have saddr and daddr?

Perry Harrington (pedward@sun4.apsoft.com)
Fri, 21 Aug 1998 17:58:02 -0700 (PDT)


>
> daddr = destination
> saddr = sending address of our end
> rcv_saddr = address we bind to
>
> saddr and rcv_saddr may be different as rcv_saddr may be broadcast or
> multicast. We do not however use the broadcast/multicast but the interface
> address as the source of our packet
>

Is this true only for UDP, or does TCP also use the interface addr instead of
the bound addr? Well, thinking about it, the only way we could receive a packet
that didn't have an interface listening on that IP, was if someone force routed
(read, hardwired the ARP table) the packet to our other interface.

I know Sol 2.6 has a bug WRT using random interface addrs when responding via
UDP (they call it load balancing, but it breaks NFS).

Thanks for the info, now I know which things to break :)

--Perry

-- 
Perry Harrington       Linux rules all OSes.    APSoft      ()
email: perry@apsoft.com 			Think Blue. /\

- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu Please read the FAQ at http://www.altern.org/andrebalsa/doc/lkml-faq.html