Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
NAME
       nemesis-dns -- DNS Protocol (The	Nemesis	Project)

SYNOPSIS
       nemesis-dns  [FlkvZ?]  [-a NUM] [-A NUM]	[-b NUM] [-d IFNAME] [-D ADDr]
		   [-f FLAGS] [-F OPT] [-g FLAGS] [-H MAC]  [-i	 ID]  [-I  ID]
		   [-M	MAC]  [-o  FILE] [-O FILE] [-P FILE] [-q NUM] [-r NUM]
		   [-s NUM] [-S	ADDR] [-t TOS] [-T TTL]	[-u OFFSET] [-w	 SIZE]
		   [-x PORT] [-y PORT]

DESCRIPTION
       nemesis is designed to be a command line-based, portable	human IP stack
       for  UNIX-like and Windows systems.  The	suite is broken	down by	proto-
       col, and	should allow for useful	scripting  of  injected	 packets  from
       simple shell scripts.

       nemesis-dns  provides  an interface to craft and	inject DNS packets al-
       lowing the user to specify any portion of  a  DNS  packet  as  well  as
       lower-level IP and TCP/UDP packet information.

DNS OPTIONS
       -A NUM  Specify the number of authoritative resource records in the DNS
	       header.

       -b NUM  Specify	the  number  of	 answer	 resource  records  in the DNS
	       header.

       -g FLAGS
	       Specify the DNS flags in	the DNS	header.

       -i ID   Specify the DNS ID in the DNS header.

       -k      Use TCP instead of UDP when injecting DNS packets.

       -P FILE
	       This will cause nemesis-dns to use the specified	 FILE  as  the
	       payload when injecting DNS packets.  For	packets	injected using
	       the  raw	 interface (where -d is	not used), the maximum payload
	       size is 65443 bytes for DNS packets  injected  using  TCP,  and
	       65455 for DNS packets injected using UDP.  For packets injected
	       using  the link layer interface (where -d IS used), the maximum
	       payload size is 1368 bytes for TCP DNS packets, and 1420	 bytes
	       for  UDP	 DNS packets.  Payloads	can also be read from stdin by
	       specifying -P- instead.

	       Windows systems are limited to a	maximum	payload	size  of  1368
	       bytes for TCP DNS packets and 1420 bytes	for UDP	DNS packets.

	       The  payload  file  can consist of any arbitrary	data though it
	       will be most useful to create a payload resembling  the	struc-
	       ture  of	 the  DNS  packet specified using the command-line op-
	       tions.  In order	to send	real DNS packets, a payload containing
	       the appropriate record data (as specified in  the  DNS  header)
	       must be created manually.

       -q NUM  Specify the number of questions in the DNS header.

       -r NUM  Specify	the  number  of	additional resource records in the DNS
	       header.

       -v      Display the injected packet in human readable form.  Use	 twice
	       to  see	a  hexdump of the injected packet with printable ASCII
	       characters on the right.	 Use three times for a hexdump without
	       decoded ASCII.

TCP OPTIONS
       -NUM    Specify the acknowledgement number  (ACK	 number)  in  the  TCP
	       header.

       -f FLAGS
	       Specify the TCP flags in	the TCP	header.

		     -fS  SYN
		     -fA  ACK
		     -fR  RST
		     -fP  PSH
		     -fF  FIN
		     -fU  URG
		     -fE  ECE
		     -fC  CWR

	       Flags can be combined in	the form -fPA.

       -o FILE
	       This  will  cause  nemesis-dns to use the specified FILE	as the
	       options when building the TCP header for	the  injected  packet.
	       TCP  options  can be up to 40 bytes in length.  The TCP options
	       file must be created manually based upon	the  desired  options.
	       TCP  options  can also be read from stdin by specifying -o- in-
	       stead.

       -s NUM  Specify the sequence number in the TCP header.

       -u OFFSET
	       Specify the urgent pointer offset in the	TCP header.

       -w SIZE
	       Specify the window size (bytes) in the TCP header.

       -x PORT
	       Specify the TCP source port in the TCP header.

       -y PORT
	       Specify the TCP destination port	in the TCP header.

UDP OPTIONS
       -x PORT
	       Source Port of injected packet.

       -y PORT
	       Target Port of injected packet.

IP OPTIONS
       -D ADDR
	       Specify the destination IP address in the IP header.

       -F OPT  Specify the fragmentation options in the	IP header:

		     -FD	don't fragment
		     -FM	more fragments
		     -FR	reserved flag
		     -F	offset

	       IP fragmentation	options	can be specified individually or  com-
	       bined  into  a single argument to the -F	command	line switch by
	       separating the options with commas (eg.	-FD,M) or spaces  (eg.
	       -FM  223).   The	IP fragmentation offset	is a 13-bit field with
	       valid values from 0 to 8189.  Don't fragment (DF),  more	 frag-
	       ments  (MF)  and	 the  reserved flag (RESERVED or RB) are 1-bit
	       fields.

	       NOTE: Under normal conditions, the reserved flag	is unset.

       -ID     Specify the IP ID in the	IP header.

       -O FILE
	       This will cause nemesis-dns to use the specified	 FILE  as  the
	       options	when  building	the IP header for the injected 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  specifying  -O-  in-
	       stead.

       -S -ADDR
	       Specify the source IP address in	the IP header.

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

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

	       NOTE: Under normal conditions, only one type of service is  set
	       within a	packet.	 To specify multiple types, specify the	sum of
	       the desired values as the type of service.

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

DATA LINK OPTIONS
       -d IFNAME
	       Specify	the  name  (for	 UNIX-like systems) or the number (for
	       Windows systems)	of the IFNAME to use (eg.  fxp0,  eth0,	 hme0,
	       1).

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

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

       -Z      Lists  the  available  network  interfaces by number for	use in
	       link-layer injection.

	       NOTE: This feature is only relevant to Windows systems.

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

SEE ALSO
       nemesis-arp(1), nemesis-dhcp(1),	nemesis-ethernet(1),  nemesis-icmp(1),
       nemesis-igmp(1),	   nemesis-ip(1),   nemesis-ospf(1),   nemesis-rip(1),
       nemesis-tcp(1), nemesis-udp(1).

AUTHORS
       Mark Grimes <mark@stateful.net> and
       Jeff Nathan <jeff@snort.org>

BUGS
       An interface for	users to create	DNS packet payloads should be created.

       Please report bugs at https://github.com/libnet/nemesis/issues

				  Dec 2, 2019			nemesis-dns(1)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=nemesis-dns&sektion=1&manpath=FreeBSD+Ports+15.0.quarterly>

home | help