sendip(1)

NAME
sendip - sends specified ip packets.

SYNOPSIS
sendip <hostname> -p <type> -d <data> <options> <hostname> is the name of the host to send the packet to, defaults to localhost <type> is the packet type: currently UDP, TCP or ICMP, defaults to IP <data> is the data payload of the packet as a string of hexadecimal numbers, defaults to 10 bytes of 0s <options> are described in the OPTIONS section below

DESCRIPTION
SendIP is a tool to send completely arbitrary packets out over the network. In conjunction with PackPrint (see http://www.earth.li/projectpurple/progs/packprint.html), this makes an extremely powerful debugging tool for networks. All the latest news, documentation and versions of SendIP will be made available from http://www.earth.li/projectpurple/ or directly from the the author. SendIP can currently send IP, TCP, UDP and ICMP packets. Other protocols will be added in future versions, as and when I have time to add them. Of course, it is still possible to send packets using other protocols, but you have to construct the packet data and headers entirely by hand.

OPTIONS
For all options, specify the option, followed by its value. Any option can be left out, in which case the default value is used. For all options, if you specify "r", sendip will generate a random value. OPTION DESCRIPTION DEFAULT Socket options -sd Debug 0 -sr Don't route 0 (ie do route) -sb Allow broadcast 0

IP options: -is Source IP 127.0.0.1 -id Destination IP Correct -ih Header length Correct -iy Type of service 0 (see RFC791 et al) -il Length Correct -ii Identification Random -ifr Reserved flag 0 -ifd Don't fragment 0 -ifm More fragments 0 -if Frag offset 0 -it TTL 255 -ip Protocol Correct for type -ic Checksum Correct -io Options - not yet implemented IPv6 options: -iv IP Version 6 -is Source IP ::1 -id Destination IP Correct -il Payload length Correct -ih Hop limit 32 -it Traffic class 0 -if Flow id 0 -in Next header 59 (See RFC2460) ICMP options: -ct Type 8 (See RFC792) -cd Code 0 (See RFC792) -cc Checksum Correct ICMPv6 options: -ct Type 128 (See RFC2463) -cd Code 0 (See RFC2463) -cc Checksum Correct UDP options: -us Source port 0 -ud Destination port 0 -ul Length Correct -uc Checksum Correct

TCP options: -ts Source port 0
-td          Destination port 0
-tn Sequence number Random -ta Acknowledgement 0 -tt Data offset Correct -tr Reserved 0 -tfu Set urg bit 0 unless -tu is specified -tfa Set ack bit 0 unless -ta is specified -tfp Set psh bit 0 -tfr Set rst bit 0 -tfs Set syn bit 1 -tff Set fin bit 0 -tw Window 65535 -tc Checksum Correct -tu Urgent pointer 0 -to Options - not yet implemented RIP options: (RIP is transmitted using UDP so UDP options also apply)
   You can have up to 25 RIP entries or 1 authenticate (must be first) and up
   to 24 RIP entries in a valid RIP packet. The well-known UDP port for RIP-1
   and RIP-2 is 520. Messages intended for another router's process should be
   sent to UDP 520. Routing update messages should be sent from UDP 520.
   Unsolicited routing update messages (which is what you will be doing, I
   would guess ;-) should have both their origin and destination UDP ports 520. Command: Name: Subcategory: Default: Valid range: -rv RIP version 2 1 or 2 -rc RIP command 1 1-request, 2-response For each of the RIP entry fields, type - if you want the default to be used -re RIP entry Address family AF_INET (2) AF_INET6 (10) not
                        supported (generally)
                        for RIP-1
                        Route tag 0 not valid for RIP-1
                        IPv4 address 0.0.0.0 any IPv4 address
                        Subnet mask 255.255.255.0 any netmask - not
                        valid for RIP-1
                        Next hop 0.0.0.0 not valid for RIP-1
                        Metric 16 1-16 -ra authenticate Brave new world any string - not valid
                        for RIP-1 (quote the
                        string!!)
             The authenticate option uses THE FIRST of the 25 availble routing
             entries. To distinguish this type of entry from a routing entry,
             the address family is 0xFFFF (and the authentication tag is 2) RIP actions: -rd RIP default request. Ask for the routers' entire routing tables.

BUGS and COMMENTS
If you have any comments, suggestions, or bug reports, please email me. The email address I currently use is mike@earth.li I am interested in any feedback in order to improve SendIP.

AUTHORS
Mike Ricketts <mike@earth@li>. Man page adapted from one by rmartini@iis.com.br