Scapy (https://scapy.net) is a powerful Python-based interactive packet crafting program. Outside of some expensive commercial programs, very few tools can do what Scapy can do, to my knowledge. It is one of my favorite tools in Python.
The main advantage of Scapy is that it allows you to craft your own packet from the very basic level. In the words of Scapy's creator:
"Scapy is a powerful interactive packet manipulation program. It is able to forge or decode packets of a wide number of protocols, send them on the wire, capture them, match requests and replies, and much more.... with most other tools, you won't build something the author did not imagine. These tools have been built for a specific goal and can't deviate much from it."
Let's take a look at the tool.