netcat--Cat data to a network host and port- by Kevin Smith

Are you looking for FAQ: what is netcat and how do I use it?

Kevin Smith of Shadetree Software has allowed us to mirror this from his site.

This is a slightly newer version that the one currently circulating on the net.

The original version would read standard in and write it to the network port. The new version also monitors the network port for data being returned. Anything read back from the network port is put out on stdout.

Argument handling has been changed slightly


For debug output just use -d instead of -d 1

The space betwen the argument letter and the argument option is now optional.

        netcat -hhost -p9100
    
instead of
        netcat -h host -p 9100
    

Debug output looks like

    echo "`date`\f\c" | netcat -d -hspot -p9100
    Host: spot
    Port: 9100
    gethostbyname(spot)=0x408b10
    ip = 192.168.200.207
    socket()=4
    connect()=0

    >(s0)(r29)(s4)(w29)
    >(s0)(r0)EOF from 0--disconnecting
 

This means

  • Host is "spot"
  • Port is 9100
  • gethostbyname() succeeded and returned (struct hostent *)0x408b10 This value is useless except that a return of 0x0 means we were not able to resolve the host name. In which case you should also see a more descriptive message.
  • Host name resolved to ip 192.168.200.207
  • Network socket (file descriptor) is 4
  • Connect was successfull
  • 1) Read 29 bytes from socket 0 (stdin) and write 29 bytes to socket 4 (net)
  • 2) Read zero bytes from socket 0 (stdin)... EOF, done





Today the theory of evolution is about as much open to doubt as the theory that the earth goes round the sun. (Richard Dawkins)

The people I distrust most are those who want to improve our lives but have only one course of action in mind. (Frank Herbert)







This post tagged: