Send UDP network messages on the command line with the free Swiss File Knife for Windows, Mac OS X and Linux.
sfk udpsend host[:| ]port [options] [data] [data2] [...]
send an UDP message and optionally receive replies.
maximum message size is 2000 bytes. your network may
limit this further, e.g. to 1500 or 1000 bytes.
options
-listen wait for a single reply, and dump it.
-listen=n wait for so many replies and dump them.
-listenall receive endless.
-replyport=n specify replyport for listening.
-timeout=n wait up to n msec for replies.
-wide, -lean etc. change hex dump output format.
for details, type "sfk hexdump"
-flat print messages as plain text.
-showip show target ip in [sent ...] info.
-broad send broadcast. this option is normally
used with address 255.255.255.255
input data format:
0x123456 a hex string which is converted to binary
foo any other plain text is sent as is, but
zero termination is NOT done automatically.
all given data fragments are joined into one large block.
how long the block can be is system dependent, but it must
always stay below 2000 bytes.
multicast send
if a multicast group address is given, like
sfk udpsend 224.0.0.123 5000 testtext
then udpsend tries to send a multicast message.
this may or may not work depending on the OS, network
interface, router and firewall settings, user rights and
other programs running in parallel.
chaining support
small chain input data can be sent.
to send continuous text over 1k do not use udpsend
but tonetlog. type "sfk netlog" for more.
aliasessfk udp like udpsend, but does not use chain input.
sfk cudp call udp quickly without any output,
same as sfk udp -quiet.
return code
0 ok
>0 send failed, or no -listen reply
web referencehttp://stahlworks.com/sfk-udpsendexamplessfk udpsend localhost 5000 hello 0x00
send "hello" followed by a zero byte to localhost
on port 5000
sfk udpsend 127.0.0.1:5000 -listen -replyport 5010 test
send "test" to localhost on port 5000
and then receive a single reply on port 5010.
sfk echo foo +udpsend localhost:5000
sends "foo" with (CR)LF to localhost port 5000.
sfk echo foo +xed "/[eol]//" +udpsend localhost:5000
the same but strips (CR)LF line ending.
use "sfk udpdump 5000 -text" to receive.