


NEMESIS-ICMP(1)					  NEMESIS-ICMP(1)


NAME
       nemesis-icmp - ICMP Protocol (The Nemesis Project)

SYNOPSIS
       nemesis-icmp [-v?] [-a ICMP-timestamp-request-reply-trans-
       mit-time	 ]   [-b   original-destination-IP-address-(ICMP-
       unreachable)   ]	  [-B	original-source-IP-address-(ICMP-
       unreachable) ] [-c ICMP-code ] [-d Ethernet-device  ]  [-D
       destination-IP-address  ]  [-e  ICMP-ID ] [-f original-IP-
       fragmentation-offset-(ICMP-unreachable) ]  [-F  fragmenta-
       tion-offset  ]  [-G  preferred-gateway  ]  [-H source-MAC-
       address ] [-i ICMP-type ] [-I  IP-ID  ]	[-j  original-IP-
       TOS-(ICMP-unreachable)	 ]    [-J   original-IP-TTL-(ICMP
       unreachable) ] [-l original-IP-options-file-(ICMP-unreach-
       able)  ] [-m ICMP-mask ] [-M destination-MAC-address ] [-o
       ICMP-timestamp-request-transmit-time ] [-O IP-options-file
       ]  [-p  original-IP-protocol-(ICMP-unreachable) ] [-P pay-
       load-file ] [-q ICMP-injection-mode ] [-r  ICMP-timestamp-
       request-reply-received-time  ] [-S source-IP-address ] [-t
       IP-TOS ] [-T IP-TTL ]

DESCRIPTION
       The Nemesis Project is designed	to  be	a  command  line-
       based, portable human IP stack for UNIX like systems.  The
       suite is broken down by protocol,  and  should  allow  for
       useful  scripting  of  injected packet streams from simple
       shell scripts.

       nemesis-icmp provides an interface  to  craft  and  inject
       ICMP  packets  allowing the user to specify any portion of
       an ICMP packet as well as lower-level IP	 packet	 informa-
       tion.

ICMP Options
       -c ICMP-type
	      Specify the ICMP-code within the ICMP header.

       -e ICMP-ID
	      Specify the ICMP-ID within the ICMP header.

       -G preferred-gateway
	      Specify  the  preferred-gateway-IP-address for ICMP
	      redirect injection.

       -i ICMP-type
	      Specify the ICMP-type within the ICMP header.

       -m address-mask
	      Specify the IP-address-mask for ICMP  address  mask
	      packets.

       -P payload-file
	      This  will  case	nemesis-icmp to use the specified
	      payload-file as the  payload  when  injecting  ICMP



			 7 December 2002			1





NEMESIS-ICMP(1)					  NEMESIS-ICMP(1)


	      packets.	For packets injected using the raw inter-
	      face (where -d is not used),  the	 maximum  payload
	      size  is	65387  bytes.  For packets injected using
	      the link layer interface (where -d  IS  used),  the
	      maximum  payload	size is 1352 bytes.  Payloads can
	      also be  read  from  stdin  by  specifying  '-P  -'
	      instead of a payload file.

       -q ICMP-injection-mode
	      Specify the ICMP-injection-mode to use when inject-
	      ing.  Valid modes are:

	      -qE (ICMP echo)
	      -qM (ICMP address mask)
	      -qU (ICMP unreachable)
	      -qX (ICMP time exceeded)
	      -qR (ICMP redirect)
	      -qT (ICMP timestamp)

	      Only one mode may be specified at a time.

       -s ICMP-sequence-number
	      Specify the ICMP-sequence-number	within	the  ICMP
	      header.

       -v verbose-mode
	      Display the injected packet in human readable form.
	      Use twice to see a hexdump of the injected  packet.

ICMP TIMESTAMP OPTIONS
       -a ICMP-timestamp-request-reply-transmit-time
	      Specify  the ICMP-timestamp-request-reply-transmit-
	      time (the time a reply to an ICMP timestamp request
	      was  transmitted) within the ICMP timestamp header.

       -o ICMP-timestamp-request-transmit-time
	      Specify  the   ICMP-timestamp-request-transmit-time
	      (the  time  an ICMP timestamp request was transmit-
	      ted) within the ICMP timestamp header.

       -r ICMP-timestamp-request-reply-received-time
	      Specify the  ICMP-timestamp-request-reply-received-
	      time (the time a reply to an ICMP timestamp request
	      was received) within the ICMP timestamp header.

ICMP UNREACHABLE OPTIONS
       -b original-destination-IP-address
	      Specify the original-destination-IP-address  within
	      an ICMP unreachable packet.

       -B original-source-IP-address
	      Specify  the  original-source-IP-address	within an
	      ICMP unreachable packet.




			 7 December 2002			2





NEMESIS-ICMP(1)					  NEMESIS-ICMP(1)


       -f original-source-IP-address
	      Specify the original-IP-fragmentation-offset within
	      an ICMP unreachable packet.

       -j original-IP-TOS
	      Specify	the   original-IP-type-of-service   (TOS)
	      within an ICMP unreachable packet.

       -J original-IP-TTL
	      Specify the original-IP-time-to-live  (TTL)  within
	      an ICMP unreachable packet.

       -l original-IP-options-file
	      This  will  cause nemesis-icmp to use the specified
	      original-IP-options-file as the options when build-
	      ing the original IP header for the injectect packet
	      ICMP unreachable packet.	IP options can be  up  to
	      40  bytes	 in  length.  The IP options file must be
	      created manually based upon  the	desired	 options.
	      IP  options can also be read from stdin by specify-
	      ing '-O -' instead of an IP-options-file.

       -p original-IP-protocol
	      Specify the  original-IP-protocol	 within	 an  ICMP
	      unrechable packet.

IP OPTIONS
       -D destination-IP-address
	      Specify  the  destination-IP-address  within the IP
	      header.

       -F fragmentation-offset
	      Specify the  fragmentation  offset  within  the  IP
	      header.

       -I IP-ID
	      Specify the IP-ID within the IP header.

       -O IP-options-file
	      This  will  cause nemesis-icmp to use the specified
	      IP-options-file as the options when building the IP
	      header for the injectect packet.	IP options can be
	      up to 40 bytes in length.	 The IP options file must
	      be created manually based upon the desired options.
	      IP options can also be read from stdin by	 specify-
	      ing '-O -' instead of an IP-options-file.

       -S source-IP-address
	      Specify the source-IP-address within the IP header.

       -t IP-TOS
	      Specify the IP-type-of-service (TOS) within the  IP
	      header.  Valid type of service values:




			 7 December 2002			3





NEMESIS-ICMP(1)					  NEMESIS-ICMP(1)


	      2	 (Minimize monetary cost)
	      4	 (Maximize reliability)
	      8	 (Maximize throughput)
	      24 (Minimize delay)

	      Note: type of service values cannot be combined.

       -T IP-TTL
	      IP-time-to-live (TTL) within the IP header.

DATA LINK OPTIONS
       -d Ethernet-device
	      Specify  the  name  of  Ethernet-device to use (eg.
	      ne0, fxp0, eth0).

       -H source-MAC-address
	      Specify the source-MAC-address (XX:XX:XX:XX:XX:XX).

       -M destination-MAC-address
	      Specify	       the	   destintion-MAC-address
	      (XX:XX:XX:XX:XX:XX).

DIAGNOSTICS
       Nemesis-icmp returns 0 on a successful exit, 1 if it exits
       on an error.

BUGS
       Send   concise	and   clearly	written	 bug  reports  to
       jeff@snort.org

AUTHOR
       Jeff Nathan <jeff@snort.org>

       Originally   developed	by   Mark   Grimes   <mark@state-
       ful.net>

SEE ALSO
       nemesis-arp(1), nemesis-dns(1), nemesis-ethernet(1), neme-
       sis-igmp(1),  nemesis-ip(1),   nemesis-ospf(1),	 nemesis-
       rip(1), nemesis-tcp(1), nemesis-udp(1)

















			 7 December 2002			4


