Packet Sender: allow sending and receiving TCP, UDP, and SSL (encrypted TCP) packets

Packet Sender

Packet Sender is an open-source utility to allow sending and receiving TCP, UDP, and SSL (encrypted TCP) packets. The mainline branch officially supports Windows, Mac, and Desktop Linux (with Qt). Other places may recompile and redistribute Packet Sender. It is free and licensed GPL v2 or later. It can be used for both commercial and personal use.


  • Controlling network-based devices in ways beyond their original apps
  • Test automation (using its command-line tool and/or hotkeys)
  • Testing network APIs (using the built-in TCP, UDP, SSL clients)
  • Malware analysis (using the built-in UDP, TCP, SSL servers)
  • Troubleshooting secure connections (using SSL ).
  • Testing network connectivity/firewalls (by having 2 Packet Senders talk to each other)
  • Stress-testing a device (using intense network generator tool)
  • Tech support (by sending customers a portable Packet Sender with pre-defined settings and packets)
  • Sharing/Saving/Collaboration using the Packet Sender Cloud service.

Packet Sender Cloud

Packets sets can be quickly saved/retrieved/shared using the free Packet Sender Cloud service. The cloud may also be used to publicly display and distribute your packets (via an URL) for collaboration, tutorials, end-users, etc. It may import public packet sets with public URL.

There are various reasons to do this:

  • Keeping all your packets ready so you can quickly retrieve them when installing a fresh Packet Sender
  • Quickly swapping between packet sets when working on different projects.
  • Sharing a login (it is allowed) for collaborative packet set generation
  • Having a public page of your packet sets so others can quickly find and import

If you are publishing a network API, maintaining a public cloud page is significantly easier than painfully detailing (IP, port, type, etc) the packets to your users. Plus, updating that page is easy.

More information about it can be found here.

Portable Mode

It has a “portable” mode. At launch, it will look for packets.ini and ps_settings.ini in its run-time directory. For the SSL server, it will look for ps.key and ps.pem.

Windows users, this directory is the same place as the .exe. For Mac users, this run-time directory is at If INI files are found, it will use them instead of %APPDATA% or Library/Application Support.

IPv4, IPv6, and Custom IP

Packet Sender’s built-in servers are configured to support either IPv4 or IPv6 but not both at the same time. For clients, Packet Sender GUI and CLI will seamlessly switch between the two modes upon sending (you may need to include the scope ID). Older versions of Packet Sender tried to use both simultaneously, but testing found this unreliable. Click the IPv4 / IPv6 toggle on the bottom right to switch between the two.

Inside the settings, you may also force Packet Sender’s servers to bind to a custom IP address. This can be very useful for systems with multiple NICs or complicated IP setups. It will trigger an error if told to bind to an address that does not exist.

Download & Use

Copyright (C) 2021 dannagle

Source: Penetration Testing

Leave a Reply