.TH T50 8 2018-09-5 "5.8" "T50 man page"
.SH NAME
T50 - network packet injector
.SH SYNOPSIS
.B t50 
[options] [\-\-]
.IR host[/CIDR]
.SH DESCRIPTION
Experimental mixed packet injector tool.

This is NOT a DoS tool, but a tool to inject packets using various protocols.
.SH OPTIONS
.TP
.BI host[/CIDR]
The host address is the target of T50. It can be informed in one of two formats: IP address or URI name. This address can be informed as a range of IPs (by omitting one or mode octects) or using a CIDR separating the IP (full or partial) or URI with "/##", for instance: "192.168/16" or "host.com.local/22". When using a partial IP address T50 will calculate CIDR automatically (8, 16 or 24 bits, if the first, second or third octect [from right to left] are omitted, respectively).

Notice that, sometimes, the "host[/CIDR]" argument is misinterpreted as an option. When this happens, you can use the pseudo option '--' before the host address:
.IP
# t50 --flood -- 192.168.1.32/27

Also, to avoid this error you can provide the host address as the first argument.

Notice, also, ONLY IPv4 addresses are allowed. T50 don't provide IPv6 support yet.
.TP
.BR \-\-threshold " NUM"
Number of packets to inject (default 1000).
.TP
.BR \-\-flood
Keep injecting packets until user terminates the process (^C). Cannot be used with \-\-threshold.
.TP
.BR \-B ", " \-\-bogus-csum
Use a bogus "random " checksum instead of calculating the actual packet checksum.
.TP
.BR \-\-turbo
Inject packets faster (creates a child process).
.TP
.BR \-\-shuffle
When used with T50 "protocol", it will shuffle the available protocols. Otherwise they will be sent in the same order as listed with \-\-list-protocols option.
This option will not work with any other "protocol".
.TP
.BR \-s ", " \-\-saddr " ADDR"
IP header source address (default RANDOM).
.TP
.BR \-p ", " \-\-protocol " protoname"
Select an specific protocol to use (default: TCP. Use \-\-list-protocols to see all protocols available). Use T50 if you want to inject all available protocols.
The "protocolname" is case insensitive.
.TP
.BR \-h ", " \-\-help
Display all available options and their defaults.
.TP
.BR \-v ", " \-\-version
Display t50 version.
.TP
.BR \-l ", " \-\-list-protocols
Lists all available protocols T50 can provide.
.SH EXAMPLES
See all available protocols:
.IP
.nf
# t50 -l
T50 Experimental Mixed Packet Injector Tool 5.6.15
Originally created by Nelson Brito <nbrito@sekure.org>
Previously maintained by Fernando Mercês <fernando@mentebinaria.com.br>
Maintained by Frederico Lamberti Pissarra <fredericopissarra@gmail.com>

[INFO]  List of supported protocols (--protocol):
   1 - ICMP (Internet Control Message Protocol)
   2 - IGMPv1 (Internet Group Message Protocol v1)
   3 - IGMPv3 (Internet Group Message Protocol v3)
   4 - TCP  (Transmission Control Protocol)
   5 - EGP  (Exterior Gateway Protocol)
   6 - UDP  (User Datagram Protocol)
   7 - RIPv1  (Routing Internet Protocol v1)
   8 - RIPv2  (Routing Internet Protocol v2)
   9 - DCCP (Datagram Congestion Control Protocol)
   10 - RSVP  (Resource Reservation Protocol)
   11 - IPSEC (Internet Security Protocl (AH/ESP))
   12 - EIGRP (Enhanced Interior Gateway Routing Protocol)
   13 - OSPF  (Open Shortest Path First)
.fi
.PP
Send 500 packets to a single target:
.IP
# t50 192.168.0.100 --threshold 500
.PP
Flooding targets from 192.168.0.1 to 192.168.0.254 (notice the partial IP) with TCP packets:
.IP
# t50 192.168.0 --flood
.PP
Flooding targets from 192.168.0.1 to 192.168.255.254 with all protocols T50 can provide in a random order using "Turbo" mode.
.IP
# t50 192.168 --flood -p t50 --shuffle --turbo
.SH NOTES
Root privilege is mandatory to run t50.
.P
There are lots of options. Please, use -h or --help to see them and their default values.
.SH BUGS
As noted before, the "host[/CIDR]" argument sometimes is misinterpreted as an option.
This bug was introduced when the argument parser was changed to support flexible host "names".
Someday I'll correct this (Frederico).
.SH AUTHORS
Nelson Brito
.SH CONTRIBUTORS
Fernando Mercês
.br
Frederico Lamberti Pissarra
.SH BUGS and SOURCE CODE AVAILABILITY
The latest release of the source code can be downloaded at:
.UR https://\:gitlab.com/\:fredericopissarra/\:t50
T50 GitLab Repository
.UE \. You can also report bugs there or at t50-dev google group via t50-dev@googlegroups.com (but gitlab's is preferable!).
.SH COPYRIGHT
Copyright © 2014-2018 T50 developers.
Licensed GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>.
This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law.
