Netcat anomaly

CLOSE Dave Dave.Close at us.thalesgroup.com
Thu Jun 26 18:21:46 UTC 2014


I wrote:

> I have a Fedora 20 machine which is receiving UDP broadcast packets
> at regular intervals on a strange high port. No program is presently
> listening for these packets. If I run, "tcpdump -i eth0 port 29531",
> I see each of the packets arriving just as I expect. Note, the
> packets are not empty and contain mostly ASCII characters.
>
> But if I then run, "nc -lu 29531", I don't see anything! Why not?
> What obvious thing am I missing?
>
> This same operation works better (but still not as I expect) on
> Fedora 14. NC shows one packet arriving but then doesn't show any
> more.
>
> Running NC under strace on both machines, I see F14 NC seems to use
> poll(2). It outputs one packet then hangs on poll. F20 NC seems to
> use select(2). It hangs on the first call.
>
> SELinux and the firewall are disabled on both machines.

Rick Stevens answered:

> You may need to use "nc -lu --recv-only 29531" so the system doesn't
> try to reply to the packet. Perhaps it's better to use wireshark or
> tcpdump to copy the data to a file and examine it.

Thanks. But that doesn't make any obvious difference. Still no output.

If examining the packets were my only concern, tcpdump would do just
fine. But I actually have a program which would like to receive those
packets and doesn't. Using NC is part of the investigation to discover
why not. But NC doesn't seem to get the packets, either.
-- 
Dave Close


More information about the users mailing list