Wireshark-dev: [Wireshark-dev] Wireshark 4.6.0rc1 is now available
From: Gerald Combs <gerald@xxxxxxxxxxxxx>
Date: Thu, 18 Sep 2025 09:33:04 -0700
I'm proud to announce the release of Wireshark 4.6.0rc1. This is an experimental release intended to test new features for Wireshark 4.6. What is Wireshark? Wireshark is the world’s most popular network protocol analyzer. It is used for troubleshooting, analysis, development and education. Wireshark is hosted by the Wireshark Foundation, a nonprofit which promotes protocol analysis education. Wireshark and the foundation depend on your contributions in order to do their work. If you or your organization would like to contribute or become a sponsor, please visit wiresharkfoundation.org[1]. What’s New Many other improvements have been made. See the “New and Updated Features” section below for more details. New and Updated Features The following features are either new or have been significantly updated since version 4.4.0: • The Windows installers now ship with Npcap 1.83. They previously shipped with Npcap 1.79. • The Windows installers now ship with Qt 6.8.3. They previously shipped with Qt 6.5.3. • WinPcap is no longer supported. On Windows, use Npcap instead, uninstalling WinPcap if necessary. The last release ever of WinPcap, 4.1.3, was on 2013-03-08 and only supports up to Windows 8, which is no longer supported by Microsoft or Wireshark. • We now ship universal macOS installers instead of separate packages for Arm64 and Intel. Issue 17294[2] • Source packages are now compressed using zstd. • A new “Plots” dialog has been added, which provides scatter plots in contrast to the “I/O Graphs” dialog, which provides histograms. The Plots dialog window supports multiple plots, markers, and automatic scrolling. • Live captures can be compressed while writing. (Previously there was support for compressing when performing multiple file capture, at file rotation time.) The `--compress` option in TShark works on live captures as well. Issue 9311[3] • Absolute time fields, regardless of field display in the Packet Details, are always written in ISO 8601 format in UTC with -T json. This was already the case for -T ek since version 4.2.0. JSON is primarily a data interchange format read by software, so a standard format is desirable. • When absolute times field are output with -T fields, the "show" field of -T pdml, or in custom columns (including CSV output of columns), the formatting similar to asctime (e.g., Dec 18, 2017 05:28:39.071704055 EST) has been deprecated in favor of ISO 8601. For backwards compatibility, a preference has been added, protocols.display_abs_time_ascii, which can be set to continue to format times as before. This preference can also be set to never use ASCII time and to use ISO 8601 time formatting in the protocol tree (Packet Details) as well. It is possible that a future release will remove the ascitime style formatting entirely. • UTC frame time column formats (including "Time (format as specified)" when a UTC time display format is selected) have a "Z" suffix per ISO 8601. Local time formats remain unqualified (including if the local time zone is UTC.) Custom columns displaying FT_ABSOLUTE_TIME already had time zone indication. • The TShark `-G` option for generating glossary reports does not need to be the first option given on the command line anymore. In addition, the reports now are affected by other command line options such as `-o`, `-d`, and `--disable-protocol`, in addition to the `-C` option, which was already supported. (The `defaultprefs` report remains unaffected by any other options.) As a part of this change, `-G` with no argument, which was previously deprecated, is no longer supported. Use `tshark -G fields` to produce the same report. Also, the syntax for only listing fields with a certain prefix has changed to `tshark -G fields,prefix`. • The underlying type of EUI-64 fields has been switched to bytes when packet matching, similar to most other address formats. This means that EUI-64 addresses can be sliced and compared to other bytes types, e.g. the filter `wpan.src64[:3] == eth.src[:3]`. Fields can still be specified using 64-bit unsigned integer literals, though arithmetic with other integers is no longer supported. • Wireshark can now decrypt NTP packets using NTS (Network Time Security). To decrypt packets, the NTS-KE (Network Time Security Key Establishment Protocol) packets need to be present, alongside the TLS client and exporter secrets. Additionally, the parts of a NTP packet which can be cryptographically authenticated (from NTP packet header until the end of the last extension field that precedes the NTS Authenticator and Encrypted Extension Fields extension field) are checked for validity. • Wiresharks' capability to decrypt MACsec packets has been expanded to either use the SAK unwrapped by the MKA dissector, or the PSK configured in the MACsec dissector. To enable the MKA dissector to unwrap the SAK, the CAK for the applicable CKN can be entered in the extended CKN/CAK Info UAT in the MKA dissector preferences. The ability of the MACsec dissector to decrypt packets using a PSK has been extended to a list of PSKs, which can entered through a new UAT. • The TCP Stream Graph axes now use units with SI prefixes. Issue 20197[4] • Custom columns have an option to show the values using the same format as in Packet Details. • Custom column complex expressions (e.g., with arithmetic, filter functions, etc.) that return numeric results are sorted numerically instead of lexicographically. • Display filter functions `float` and `double` are added to allow explicitly converting field types like integers and times to single and double precision floats. They can be used to perform further arithmetic operations on fields of different types, including in custom column definitions. • The minimum width of the I/O Graph dialog window has been reduced, so it should work better on small resolution desktops, especially in certain languages. To enable this, some checkbox controls were moved to the graph right-click context menu. Issue 20147[5] • X.509 certificates, used in TLS and elsewhere, can be exported via the "File › Export Objects" menu in Wireshark (under the name "X509AF") and `--export-objects` in TShark (with the protocol name `x509af`.) • Zstandard Content-Encoding is supported in the HTTP and HTTP/2 dissectors. • Follow Stream is supported for MPEG 2 Transport Stream PIDs, and for Packetized Elementary Streams contained within MPEG 2 TS. The latter can be used to extract audio or video for playback with other tools. • DNP 3 (Distributed Network Protocol 3) is now supported in the Conversations and Endpoints table dialogs. • The Lua supplied preloaded libraries `bit` and `rex_pcre2` are loaded in a way that adds them to the `package.loaded` table, as though through `require`, so that `require("bit")` and `require("rex_pcre2")` statements in Lua dissectors, while usually superfluous, behave as expected. Issue 20213[6] • The packet list (Wireshark) and event list (Stratoshark) no longer support rows with multiple lines. Issue 14424[7] • The `ethers` file can also contain EUI-64 to name mappings. Issue 15487[8] • Wireshark "Import from Hex Dump" and text2pcap support byte groups with 2 to 4 bytes (with an option for little-endian byte order), and support hexadecimal offsets with a `0x` or `0X` prefix (as produced by `tcpdump -x`, among others). Issue 16193[9] • Frame timestamps can be added as preamble to hex dumps in Wireshark from the "Print" and "Export Packet Dissection" dialogs, and in TShark with the `--hexdump time` option. Issue 17132[10] • Lua now has a `Conversation` object, which exposes conversations and conversation data to Lua. Resolves Issue 15396[11] • Supports "Copy in HTML" format via main menu, context menu and keyboard shortcut. It also provides an option (via knobs in preferences) to copy plain text with aligned columns along with an ability to select a copy format to be used when copied via keyboard shortcut. • The "no duplicate keys" version of JSON output that tshark has supported since 2.6.0 is available through the GUI Export Dissections Dialog. Note that this format does not necessarily preserve the ordering of all children in a tree, if sibling with identical keys are not consecutive. • The GUI Export Dissections Dialog can output raw hex bytes of the frame data for each field with or without exporting the field values, the same formats as the "-T json -x" and "-T jsonraw" output modes, respectively, of TShark. • The Conversations and Endpoints dialogs have an option to display byte counts and bit rates in exact counts instead of human-readable numbers with SI units. The default setting when opening a dialog is controlled by a Statistics preference, "conv.machine_readable". The same preference controls whether precise byte counts are used in the TShark "-z conv" and "-z endpoints" taps. • The output format for some TShark statistics taps (those selected with "-z <tap>,tree", which use the stats_tree system) can be controlled via a preference "-o statistics.output_format". • The color scheme can be set to Light or Dark mode independently of the current OS default on Windows and macOS, if Wireshark is built with Qt 6.8 or later as the official installers do. Issue 19328[12] • LibXml2 is now a required dependency. • The View menu has an option to Redissect Packets manually, which can be useful when address resolution or decryption secrets have changed. • HTTP2 tracking of 3GPP session over 5G Service Based Interfaces is now optional available. When enabled "Associate IMSI" will be add on HTTP2 streams which has been found belong to a session. • Building the documentation on Windows no longer requires Java. • On Linux, capture filters that use BPF extensions like "inbound", "outbound", and "ifindex" can be used for capturing (and compiled by the Compiled Filter dialog). Instead of always being rejected by the syntax checker, they will be marked as unknown. Removed Features and Support Wireshark no longer supports AirPcap and WinPcap. Wireshark no longer supports libnl versions 1 or 2. The `ENABLE_STATIC` CMake option has been deprecated in favor of `BUILD_SHARED_LIBS` New File Format Decoding Support Resource Interchange File Format (RIFF) and TTL File Format New Protocol Support Asymmetric Key Packages (AKP), Binary HTTP, BIST TotalView-ITCH protocol (BIST-ITCH), BIST TotalView-OUCH protocol (BIST-OUCH), Bluetooth Android HCI (HCI ANDROID), Bluetooth Intel HCI (HCI INTEL), BPSec COSE Context, BPSec Default SC, Commsignia Capture Protocol (C2P), DLMS/COSEM, Ephemeral Diffie-Hellman Over COSE, Identifier-Locator Network Protocol (ILNP), LDANeo Device trailer (LDANeo), Lenbrook Service Discovery Protocol (LSDP), LLC V1, Navitrol messaging, Network Time Security Key Establishment Protocol (NTS-KE), Ouster VLP-16, Private Line Emulation (PLE), RC V3, RCG, Roughtime, SBAS L5 Navigation Message, SGP.22 GSMA Remote SIM Provisioning (SGP.22), SGP.32 GSMA Remote SIM Provisioning (SGP.32), SICK CoLA Ascii and CoLA Binary protocols, Silabs Debug Channel, Universal Measurement and Calibration Protocol (XCP), USB Picture Transfer Protocol (USB-PTP), VLP-16 Data and Position messaging, and vSomeIP Internal Protocol (vSomeIP) Updated Protocol Support Too many protocol updates have been made to list them all here. New and Updated Capture File Support BLF is now improved (including writing to BLF) New and Updated Capture Interfaces support • On Windows, etwdump’s user-friendliness has been greatly improved thanks to various extcap changes. It should also now display the raw bytes of unknown events. The Lua API now supports Libgcrypt symmetric cipher functions. Getting Wireshark Wireshark source code and installation packages are available from https://www.wireshark.org/download.html. Vendor-supplied Packages Most Linux and Unix vendors supply their own Wireshark packages. You can usually install or upgrade Wireshark using the package management system specific to that platform. A list of third-party packages can be found on the download page[13] on the Wireshark web site. File Locations Wireshark and TShark look in several different locations for preference files, plugins, SNMP MIBS, and RADIUS dictionaries. These locations vary from platform to platform. You can use "Help › About Wireshark › Folders" or `tshark -G folders` to find the default locations on your system. Getting Help The User’s Guide, manual pages and various other documentation can be found at https://www.wireshark.org/docs/ Community support is available on Wireshark’s Q&A site[14] and on the wireshark-users mailing list. Subscription information and archives for all of Wireshark’s mailing lists can be found on the mailing list site[15]. Bugs and feature requests can be reported on the issue tracker[16]. You can learn protocol analysis and meet Wireshark’s developers at SharkFest[17]. Official Wireshark training and certification are available from the Wireshark Foundation[18]. How You Can Help The Wireshark Foundation helps as many people as possible understand their networks as much as possible. You can find out more and donate at wiresharkfoundation.org[19]. Frequently Asked Questions A complete FAQ is available on the Wireshark web site[20]. References 1. https://wiresharkfoundation.org 2. https://gitlab.com/wireshark/wireshark/-/issues/17294 3. https://gitlab.com/wireshark/wireshark/-/issues/9311 4. https://gitlab.com/wireshark/wireshark/-/issues/20197 5. https://gitlab.com/wireshark/wireshark/-/issues/20147 6. https://gitlab.com/wireshark/wireshark/-/issues/20213 7. https://gitlab.com/wireshark/wireshark/-/issues/14424 8. https://gitlab.com/wireshark/wireshark/-/issues/15487 9. https://gitlab.com/wireshark/wireshark/-/issues/16193 10. https://gitlab.com/wireshark/wireshark/-/issues/17132 11. https://gitlab.com/wireshark/wireshark/-/issues/15396 12. https://gitlab.com/wireshark/wireshark/-/issues/19328 13. https://www.wireshark.org/download.html 14. https://ask.wireshark.org/ 15. https://lists.wireshark.org/lists/ 16. https://gitlab.com/wireshark/wireshark/-/issues 17. https://sharkfest.wireshark.org 18. https://www.wireshark.org/certifications 19. https://wiresharkfoundation.org 20. https://www.wireshark.org/faq.html Digests wireshark-4.6.0rc1.tar.zst: 52224786 bytes SHA256(wireshark-4.6.0rc1.tar.zst)=2177e639d0adb0806ec88a69b0db6456a6f280209c56fa481d5ddd271df3fdaf SHA1(wireshark-4.6.0rc1.tar.zst)=35b6edb4ba25ea0c548b946cfb7ed94d0f6e8dea wireshark-4.6.0rc1.tar.xz: 52850456 bytes SHA256(wireshark-4.6.0rc1.tar.xz)=646df7495c5b48fa8ad17e0537d040aa190d1d17e48c5a5b10da637ba57ea276 SHA1(wireshark-4.6.0rc1.tar.xz)=ea990af1421fcb179086dcf22bcf0b2724f801db Wireshark-4.6.0rc1-x64.exe: 95722272 bytes SHA256(Wireshark-4.6.0rc1-x64.exe)=570d86b8845f77eefe17219b57dedf741f3ae2aac9a11bad3f4f72d120a9b04f SHA1(Wireshark-4.6.0rc1-x64.exe)=11f2a2a79657462f883575e62fcfb9af22dede1b Wireshark-4.6.0rc1-arm64.exe: 71915040 bytes SHA256(Wireshark-4.6.0rc1-arm64.exe)=6c12b92d5630b16759d4a129fa9fa666ae1e62e192f1fe169fd6f497937c20ce SHA1(Wireshark-4.6.0rc1-arm64.exe)=9299a6230354226763fc9c98a50b7ecd7a7eee98 Wireshark-4.6.0rc1-x64.msi: 73015296 bytes SHA256(Wireshark-4.6.0rc1-x64.msi)=8b4a41c3f4a476ea7e95ee79974845dc04751a126e748c29611bf07e41553bc4 SHA1(Wireshark-4.6.0rc1-x64.msi)=1a9f1718ef0e23f22b9417442ff3b89672dee664 WiresharkPortable64_4.6.0rc1.paf.exe: 82128552 bytes SHA256(WiresharkPortable64_4.6.0rc1.paf.exe)=804afbf0fac78aed10d7750af478e2904bc54e3cf0d7e9448d8cc6d472603c5a SHA1(WiresharkPortable64_4.6.0rc1.paf.exe)=1fb9220cc0387c729fd5874beebe586a6a2c7d4e Wireshark 4.6.0rc1.dmg: 141517211 bytes SHA256(Wireshark 4.6.0rc1.dmg)=ff36b50c86320eceb3ada34f95ef19002a5cb92a709ace1e338ad3c0a3c9b405 SHA1(Wireshark 4.6.0rc1.dmg)=1216809aa108b54d91d5ef1f0626ca4fc43015b4 You can validate these hashes using the following commands (among others): Windows: certutil -hashfile Wireshark-win64-x.y.z.exe SHA256 Linux (GNU Coreutils): sha256sum wireshark-x.y.z.tar.xz macOS: shasum -a 256 "Wireshark x.y.z Arm 64.dmg" Other: openssl sha256 wireshark-x.y.z.tar.xz
- Prev by Date: [Wireshark-dev] Re: Support for NTPv5 ?
- Next by Date: [Wireshark-dev] [RFC][PATCH] tcpdiff: a simple tool to match and compare TCP flows in two capture files
- Previous by thread: [Wireshark-dev] Re: Support for NTPv5 ?
- Next by thread: [Wireshark-dev] [RFC][PATCH] tcpdiff: a simple tool to match and compare TCP flows in two capture files
- Index(es):