termshark

A terminal UI for tshark, inspired by Wireshark

Github stars Tracking Chart

Termshark

A terminal user-interface for tshark, inspired by Wireshark.

V2.1 is out now with conversations, packet coloring and more! See the ChangeLog.

demo21

If you're debugging on a remote machine with a large pcap and no desire to scp it back to your desktop, termshark can help!

Table of Contents

Features

  • Read pcap files or sniff live interfaces (where tshark is permitted)
  • Filter pcaps or live captures using Wireshark's display filters
  • Reassemble and inspect TCP and UDP flows
  • View network conversations by protocol
  • Copy ranges of packets to the clipboard from the terminal
  • Written in Golang, compiles to a single executable on each platform - downloads available for Linux, macOS, FreeBSD, Android (termux) and Windows

tshark has many more features that termshark doesn't expose yet! See What's Next.

Install Packages

Termshark is pre-packaged for the following platforms: Arch Linux, Debian (unstable), FreeBSD, Homebrew, Kali Linux, NixOS, SnapCraft, Termux (Android) and Ubuntu.

Building

Termshark uses Go modules, so it's best to compile with Go 1.11 or higher. Set GO111MODULE=on then run:

go install github.com/gcla/termshark/v2/cmd/termshark

Then add ~/go/bin/ to your PATH.

For all packet analysis, termshark depends on tshark from the Wireshark project. Make sure tshark is in your PATH.

Quick Start

Inspect a local pcap:

termshark -r test.pcap

Capture ping packets on interface eth0:

termshark -i eth0 icmp

Run termshark -h for options.

Downloads

Pre-compiled executables are available via Github releases. Or download the latest build from the master branch - Build Status.

User Guide

See the termshark user guide (and my best guess at some FAQs)

Dependencies

Termshark depends on these open-source packages:

  • tshark - command-line network protocol analyzer, part of Wireshark
  • tcell - a cell based terminal handling package, inspired by termbox
  • gowid - compositional terminal UI widgets, inspired by urwid, built on tcell

Note that tshark is a run-time dependency, and must be in your PATH for termshark to function. Version 1.10.2 or higher is required (approx 2013).

Contributors

Thanks to everyone that's contributed ports, patches and effort!

Contact

License

License: MIT

Overview

Name With Ownergcla/termshark
Primary LanguageGo
Program languageGo (Language Count: 2)
Platform
License:MIT License
Release Count10
Last Release Namev2.4.0 (Posted on )
First Release Namev1.0.0 (Posted on )
Created At2019-04-20 03:08:13
Pushed At2024-04-30 06:15:11
Last Commit At2022-11-01 19:31:16
Stargazers Count8.7k
Watchers Count121
Fork Count385
Commits Count1k
Has Issues Enabled
Issues Count130
Issue Open Count34
Pull Requests Count24
Pull Requests Open Count6
Pull Requests Close Count2
Has Wiki Enabled
Is Archived
Is Fork
Is Locked
Is Mirror
Is Private
To the top