Alex Rivera | Logout

How do you specify a port range for Java sockets?

Asked 2008-09-22T15:26:11.450
10

In Java you can give the number zero as a single parameter for the Socket or DatagramSocket constructor. Java binds that Socket to a free port then. Is it possible to limit the port lookup to a specific range?

Edit
Report

1 Answer

2

Binding the socket to any free port is (usually) a feature of the operating system's socket support; it's not specific to java. Solaris, for example, supports adjusting the ephemeral port range through the ndd command. But only root can adjust the range, and it affects the entire system, not just your program.

If the regular ephemeral binding behavior doesn't suit your needs, you'll probably have to write your own using Socket.bind().

answered 2008-09-22T16:02:41.737

Your Answer