Skip to content
A terminal UI for tshark, inspired by Wireshark
Branch: master
Clone or download
Latest commit 5cb40e5 Apr 24, 2019
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
cmd/termshark Fixes #5, fixes #8 Apr 23, 2019
docs Ready for pushing to github! Apr 19, 2019
modeswap Ready for pushing to github! Apr 19, 2019
pcap Ready for pushing to github! Apr 19, 2019
pdmltree Ready for pushing to github! Apr 19, 2019
psmltable Ready for pushing to github! Apr 19, 2019
widgets Ready for pushing to github! Apr 19, 2019
.gitignore Ready for pushing to github! Apr 19, 2019
.goreleaser.yml Ready for pushing to github! Apr 19, 2019
LICENSE Fix the license - thanks to Andrew Benson for reporting this. Apr 23, 2019
README.md Make it clear this is v1 - most of tshark not yet available Apr 20, 2019
confwatcher.go Ready for pushing to github! Apr 19, 2019
copycommand.go Ready for pushing to github! Apr 19, 2019
copycommand_android.go Ready for pushing to github! Apr 19, 2019
copycommand_darwin.go Ready for pushing to github! Apr 19, 2019
copycommand_windows.go Ready for pushing to github! Apr 19, 2019
fdinfo.go Ready for pushing to github! Apr 19, 2019
fields.go Ready for pushing to github! Apr 19, 2019
fields_test.go Ready for pushing to github! Apr 19, 2019
go.mod Ready for pushing to github! Apr 19, 2019
go.sum Ready for pushing to github! Apr 19, 2019
have_fdinfo.go Ready for pushing to github! Apr 19, 2019
have_fdinfo_linux.go Ready for pushing to github! Apr 19, 2019
noroot.go Ready for pushing to github! Apr 19, 2019
utils.go Ready for pushing to github! Apr 19, 2019
utils_test.go Ready for pushing to github! Apr 19, 2019
version.go Ready for pushing to github! Apr 19, 2019

README.md

Termshark

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

demo1

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!

Features

  • Read pcap files or sniff live interfaces (where tshark is permitted).
  • Inspect each packet using familiar Wireshark-inspired views
  • Filter pcaps or live captures using Wireshark's display filters
  • 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 (+termux), macOS, FreeBSD, and Windows

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

Building

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

go get github.com/gcla/termshark/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

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).

Contact

License

License: MIT

You can’t perform that action at this time.