76

netcat -ul -p2115 fails with a usage statement.

What am I doing wrong?

Dave M
  • 4,514
  • 22
  • 31
  • 30
Tyler
  • 863
  • 1
  • 6
  • 5

3 Answers3

95

To quote the nc man page:

-l Used to specify that nc should listen for an incoming connection rather than initiate a connection to a remote host. It is an error to use this option in conjunction with the -p, -s, or -z options. Additionally, any timeouts specified with the -w option are ignored.

The key here is that -p cannot be combined with the -l flag. When using the -l flag, any ports specified in the positional arguments are used. So instead, you could use the following:

netcat -ul 2115
Pablo A
  • 177
  • 1
  • 9
Andrew M.
  • 11,182
  • 2
  • 35
  • 29
30

-p is wrong. This will work on RedHat- and Debian-based distros:

nc -u -l 2115
Mike
  • 22,310
  • 7
  • 56
  • 79
12

For some reason, Andrew's solution didn't work for me. With further research, I learned that we need to add -p flag when working locally. So the following command worked for me.

 nc -ulp 2115
Sheshank Kodam
  • 221
  • 2
  • 2