Messages in this thread | | | Date | Mon, 29 Nov 2004 23:32:46 +0100 | From | Roberto Nibali <> | Subject | Re: client socket and source port selection |
| |
Hello,
> For the project i'm doing, i must know how the Linux kernel allocate > sockets source port (from the dynamic range of the (2**16)-1 ports). I > looked on the Web but it's really hard to find the algoritm of the > source port allocation...
Check the source ;). There is a proc-fs entry which relates to the source port range setting. Over this entry point you get in case of TCP sockets to ../net/ipv4/tcp_ipv4.c:tcp_v4_get_port(...). For UDP sockets you need to peek into ../net/ipv4/udp.c:udp_v4_get_port().
> Someone maybe know how it's work or if there is a paper on the web that > explain this source port selection ?
Not likely, but reading the source should help. You can set the local port range via /proc/sys/net/ipv4/ip_local_port_range. It's documented.
HTH and best regards, Roberto Nibali, ratz -- echo '[q]sa[ln0=aln256%Pln256/snlbx]sb3135071790101768542287578439snlbxq' | dc - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |