firedancer-io
solana_dissector
Lua

Wireshark dissector for the Solana peer-to-peer network

Last updated May 23, 2026
30
Stars
4
Forks
0
Issues
0
Stars/day
Attention Score
14
Language breakdown
Lua 86.9%
Python 7.9%
Shell 5.2%
โ–ธ Files click to expand
README

Wireshark dissectors for Solana

Installation

macOS

Download latest version of plugin

rm -f /Applications/Wireshark.app/Contents/PlugIns/wireshark/solana.lua
curl --output /Applications/Wireshark.app/Contents/PlugIns/wireshark/solana.lua \
  --proto '=https' --tlsv1.2 -sSf \
  https://raw.githubusercontent.com/firedancer-io/solana_dissector/main/solana.lua

To activate, hit Cmd+Shift+L or restart Wireshark.

Ports

Solana nodes allocate ports in a block starting at an arbitrary number. To discover endpoints, nodes use the gossip protocol to send each other port mappings.

This plugin doesn't implement mappings yet and instead hardcodes ports.

  • 8000: Gossip
  • 8001, 8002: Shreds
  • 8008, 8009: Repair
This might get fixed in the future, but for now, you have to use "Decode As" to select a protocol if the hardcoded mapping fails.

mev-protos

Provided mev-protos are added to the Wireshark search path, solana_dissector will decode Solana Transactions occurring in bundles received via gRPC.

Development

  • ๐Ÿšง Gossip protocol
- Messages - โœ… Pull Request - โœ… Pull Response - โœ… Push Message - โœ… Prune Message - โœ… Ping Message - โœ… Pong Message - Types - โœ… Socket Address - โœ… Transaction (legacy) - โŒ Transaction (v0) - CRDS - โœ… Contact Info - โœ… Vote - โŒ Vote program data - โœ… Lowest Slot - โœ… Snapshot Hashes - โœ… Accounts Hashes - โœ… Epoch Slots - โœ… Legacy Version - โœ… Version - โœ… Node Instance - โŒ Duplicate Shred - โœ… Incremental Snapshot Hashes
  • โœ… Shreds
- โœ… Legacy Shreds - โœ… Merkle Shreds - โœ… Chained Merkle Shreds - โœ… Chained Resigned Merkle Shreds - โŒ FEC Recovery
  • โœ… Repair
- โœ… Legacy types - โœ… Pong - โœ… WindowIndex - โœ… HighestWindowIndex - โœ… Orphan - โœ… AncestorHashes
  • โœ… TPU (UDP)
  • ๐Ÿšง TPU (QUIC)
- If solana-tpu QUIC traffic doesn't dissect, run "Reload Lua plugins"
  • โœ… mev-protos
๐Ÿ”— More in this category

ยฉ 2026 GitRepoTrend ยท firedancer-io/solana_dissector ยท Updated daily from GitHub