NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
PyPI · #2193 most downloaded on PyPI
Scapy: interactive packet manipulation tool
Last release 2 days ago
02 Oct 2026
Release timing varies
gaps range from 2 weeks to 1.3 years
Most releases are documented
notes for 10 of 14 stable releases
Nothing withdrawn
no release was ever pulled
13 years old
33 releases · first in 2013
Hi everyone. This release is a bit different, as it is heavily focused on security fixes as we are clearing our backlog of AI-Assisted reports. We hav…
Hi everyone. This release is a bit different, as it is heavily focused on security fixes as we are clearing our backlog of AI-Assisted reports. We have also clarified the guidelines around AI, contributions and security reports. To contributors, feel free to reach out if you haven't heard back from us in a whilte !
We have clarified our CONTRIBUTING and SECURITY guidelines. This notably includes some new guidance related to the use of AI, and some instructions regarding the submission of security issues. We encourage contributors to take a moment to read the updated versions.
Scapy has taken part in OpenAI + Trail of Bits collab's initiative called "Patch the Planet". As part of this initiative, we have received a free security coverage of our code overseen by KernelClint (Trail of Bits) and multiple OpenAI agents. This has led to the discovery of around 130+ bugs, among which were 54 issues that could be considered related to security, with various degrees of severity. You can find a partial list on https://github.com/secdev/scapy/security/advisories and here but please bear in mind that some reports have been written entirely by AI.
After analysis, we have marked 5 vulnerabilities with a "High" level of impact, which justify an immediate upgrade to 2.8.0, or backporting if packaged by downstream repositories:
NetflowSession running foreverThe other issues have been triaged as "Moderate" or "Low" and don't justify immediate action from users or downstream package maintainers (those include crashes, issues in various protocol implementations, automatons and answering machines, mis-implementations of protocols like our TLS stack, etc. but nothing that leads to a potential compromission of the host machine).
We would like to thank again OpenAI and Trail of Bits (and in particular @KernelClint) for this opportunity and the time spent on this project.
smbclient() featuresOne column per quarter.
2.7.1 Release Candidate #1
2.7.1 Release Candidate #1
improve handling of newer IPython versions, fix some deprecation warnings
Hi everyone & Merry Christmas ! This release brings many new features, bug fixes and cleanups. If you encounter any issues when trying it out, please submit bug reports !
scapy -s has been removed.CertTree class to act as a certificate store one can check a certificate against.radiusd(): a small RADIUS server (CHAP / MS-CHAPv2)nbns_request: perform a Netbios discoveryTunTapInterfacespawn(), allowing to serve automatons on a portTCPSession)HTTP_Server state SERVE.dnsd() relay modedns_resolve now properly fallbacks on TCP when packets are too bigarping() on interfaces with no IP addressessr1 to threaded=FalseL2Socket.close() by adding ValueError.hashret handling in DoIP.UDS_DSCEnumerator.UDS_HSFZSocket.isotpscan.ISOTPScan.incorrect_tester_address packets.SOMEIP.fragment() behavior.2.7.0 Release Candidate #1
2.7.0 Release Candidate #1
This update contains fixes for various small bugs introduced in v2.6.0:
This update contains fixes for various small bugs introduced in v2.6.0:
scapy.1 manpage was no longer installed (#4549)XDG-* related folders. (#4558)[major] using the iface= argument is deprecated on level3 functions (send, sr, sr1), as its behavior was undefined. It remains in use for level2 funct…
Note to package maintainers: it is important to point out that special care should be taken when porting/testing this release. The plateform-specific code aimed at reading the network configuration (interfaces, routes, etc.) has been entirely rewritten on both Linux and *BSD flavors. Plateforms that were tested include: Linux, OpenBSD, NetBSD, FreeBSD, Darwin. Other plateforms have not been tested, therefore we encourage maintainers to perform additional testing. This has no impact on the other plateforme that we support, such as Windows.
pyproject.toml) and version handling. Scapy will now include wheels on pypi.sr(IP(dst="224.0.0.1%eth0")/..., multi=True)iface= argument is deprecated on level3 functions (send, sr, sr1), as its behavior was undefined. It remains in use for level2 functions (sendp, srp, srp1). RFC6874-like scope identifiers (see just above) should be used.DCERPC_Client and DCERPC_Server with support for NCACN_IP_TCP and NCACN_NPsmbserver()) (2.0.2 to 3.1.1)smbclient()) (2.0.2 to 3.1.1)LDAP_client (support for various binding mechanisms, encryption, etc.)cryptography (42/43.0) versions~/.config/scapy/startup.py. This follows XDG variables. (Older ~/.scapy_startup.py is now non functional)bpython, ptpython and ptipythonload_extcap())StreamSocket changes, support for TCP reassembly, etc. TCPSession(app=True) must no longer be used with StreamSocket. Custom sessions are marked as unstable.L3RawSocket(6) automatically on the loopback interface on linuxL3pcapSocket (the default L3 on Windows or when libpcap is used) now follows the same behavior as other L3 sockets when routingsr* class of functions now properly supports sending on multiple interfaces (Windows & Linux)sr* class of functions have also been fixedmanufdb (from wireshark) is now bundled and cached in ~/.cache/scapy, as it is no longer shipped as a standalone file in Wireshark.dnsd, llmnrd, nbnsd, dhcpd...). Add mdnsd for mDNS support*ListFieldsconf.nameservers contains the DNS servers. Also adds dns_resolve()Session objectssendpfast loop argument to be consistent with sendpgraph() to include implicit linksHTTP_Client and HTTP_Server which support the same SSPs as Windowshttp_clientget_if_hwaddr for performancearping without IP2.6.0 Release Candidate #2
2.6.0 Release Candidate #2
2.6.0 Release Candidate #1
2.6.0 Release Candidate #1
Scapy v2.5.0 is the last version to support Python 2.7
Scapy v2.5.0 is the last version to support Python 2.7
sent_time is shared across packets iteratorsFlagsField in dict mode now uses values instead of offsetsRelease 2.5.0 Release Candidate #3
Release 2.5.0 Release Candidate #3
Release 2.5.0 Release Candidate #2
Release 2.5.0 Release Candidate #2
Nothing published for this version
[Deprecated] Naming different fields with the same name will now raise a deprecation warning. This behavior has never properly worked and should never…
conf.iface is now an object (retro-compatible as a string) which contains additional information about the interface and allows for an automatic selection of the socket type. conf.ifaces now lists all available interfaces.libpcapSTOP event - allows to cleanly end an Automata. Implemented in all Scapy's automatonsNet and Net6ConditionalField and MultipleTypeField to make them more resilientMultipleTypeField handling, add view source.Nothing published for this version
drop DNET support (deprecated since 2.4.0)
libpcap instead of tcpdump to compile the filters (tcpdump is still used to filter pcaps)Nothing published for this version
Nothing published for this version
HTTP (from the deprecated scapy-http module), TLS 1.3, ATA over Ethernet, OVD, IEC 60870-5-104, enip, ...
sniff() can be used to test BPF fiters on pcap filesscapy-http module), TLS 1.3, ATA over Ethernet, OVD, IEC 60870-5-104, enip, ...Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
addresses a v2.4.0 vulnerability
Nothing published for this version
automatically tested on Linux, OSX & Windows
TLS (including TLS1.3), X.509 ...
HTTP/2, EAP-TTLS, TACACS, MQTT ...
IPv6, SCTP, NTP, PPTP, CDP, BGP, ISIS ...
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Your coding agent can read these notes before it upgrades. Set up the MCP server →