Simple Packet Sender (SPS)

A Linux packet crafting tool. Supports IPv4, IPv6 including extension headers, and tunneling IPv6 over IPv4. Written in C on Linux with GUI built using GTK+ and released under GPLv3. Does not require pcap.

Features:

Packet crafting and sending one, multiple, or flooding IPv4 and IPv6 packets of type TCP, ICMP, or UDP (or cycle through all three). All values within ethernet frame can be modified arbitrarily. Supports IPv4 header options, TCP header options, and TCP, ICMP and UDP data as well, input from either: keyboard as UTF-8/ASCII, keyboard as hexadecimal, or from file.

IPv6 support includes: hop-by-hop, "first" and "last" destination, routing, authentication, and encapsulating security payload (ESP) extension headers. For those without access to a native IPv6 network, IPv6 packets can be transmitted over IPv4 (6to4).

Packet fragmentation for IPv4, IPv6, and 6to4. Assumed maximum transmission unit (MTU) can be changed if unusual fragment sizes are needed.

IP addresses and port numbers can be randomized.

A configurable traceroute function, which supports TCP, ICMP, and UDP packets with all the features mentioned above.

View packets in hexadecimal/ASCII representation, in both unfragmented and fragmented forms.

All packet settings can be saved to and loaded from file.

IP and ASN delegation functions, including: country name/code search and reverse-search, autonomous system (AS) number search by country and reverse-search,  IPv4 and IPv6 address delegation search and reverse-search.

ARP (IPv4) and Neighbor Discovery (IPv6) for querying a LAN for MAC addresses of local nodes.

Retrieve MAC address and current MTU setting of any attached network interface.

Domain name resolution and reverse resolution.

Screen captures:

Main Window:

TCP (IPv4)    ICMP (IPv4)    UDP (IPv4)    TCP (IPv6)    ICMP (IPv6)    UDP (IPv6)    6to4 

Send    Host/IP    ASN/IP    Traceroute    Load/Save    PRNG

Traceroute Window:

TCP (IPv4)    ICMP (IPv4)    UDP (IPv4)    TCP (IPv6)    ICMP (IPv6)    UDP (IPv6)

IPv6 Extension Header Windows:

Hop-by-hop    Destination    Routing    Authentication    ESP

Without running SPS you can read the documentation/manual by looking at the plain text file called documentation.txt in the /src directory.

Releases (gzipped tarballs containing binaries and source):

Tarball for version 5.0 contains binary compiled on a 64-bit machine with Gtk+ 3.

Notes:

1. GTK+3 now appears to require dbus for the file-chooser dialog to function without issuing a warning (still seems to work). For Ubuntu linux, you can install it with:

sudo apt install dbus-x11

2. To compile SPS you need to have the GTK+ development library 3 installed. This means for GTK+ 3 on Ubuntu you type:

sudo apt install libgtk-3-dev

To compile type:

./make

Tarballs for versions 4.0 to 4.3, contain two sets of binaries:

The source code for these versions is slightly different, while the Glade user interface files are significantly different between Gtk+ 2 and Gtk+ 3.


SPS 5.0 October 8, 2023 Changelog SHA-512 

SPS 4.3 August 8, 2015 Changelog SHA-512

Revised UTF-8 Utilities April 24, 2014 Changelog SHA-512

SPS 4.2 January 12, 2014 Changelog SHA-512

SPS 4.1p November 8, 2013 Changelog SHA-512

SPS 4.1 August 29, 2013 Changelog SHA-512

SPS 4.0 May 22, 2013 Changelog SHA-512

SPS 3.1 September 14, 2012 Changelog SHA-512

SPS 3.0 July 8, 2012 Changelog SHA-512

SPS 2.1 February 20, 2012 Changelog SHA-512

SPS 2.0 January 24, 2012 Changelog SHA-512

SPS 1.2 October 16, 2011 Changelog SHA-512

SPS 1.1 July 21, 2011 Changelog SHA-512

SPS 1.0 July 3, 2011 Initial Release SHA-512

Contact:

Gmail: h0h1r4um@gmail.com

Page last edited: November 7, 2023