netgraph

A cross platform http sniffer with a web UI

Github stars Tracking Chart


Go Report Card
codecov
GitHub license

Netgraph

Netgraph is a packet sniffer tool that captures all HTTP requests/responses, and display them in web page.

Screenshot

You can run Netgraph in your linux server without desktop environment installed, and monitor http requests/responses in your laptop's browser.

Compile, Install, Run

  1. go get github.com/ga0/netgraph
  2. run $GOPATH/bin/netgraph -i INTERFACE -p PORT
  3. open the netgraph web page in your browser (for example: http://localhost:9000, 9000 is the PORT set in step 2)

  Windows user need to install winpcap library first.

Options

  -bpf string
        Set berkeley packet filter (default "tcp port 80")
  -i string
        Listen on interface, auto select one if no interface is provided
  -input-pcap string
        Open a pcap file
  -o string
        Write HTTP requests/responses to file, set value "stdout" to print to console
  -output-pcap string
        Write captured packet to a pcap file
  -output-request-only
	      Write only HTTP request to file, drop response. Only used when option "-o" is present. (default true)
  -p int
        Web server port. If the port is set to '0', the server will not run.  (default 9000)
  -s	Save HTTP event in server
  -v	Show verbose message (default true)

Example: print captured requests to stdout:

  $ ./netgraph -i en0 -o=stdout
  2018/07/26 10:33:24 open live on device "en0", bpf "tcp port 80"
  [2018-07-26 10:33:34.873] #0 Request 192.168.1.50:60448->93.184.216.34:80
  GET / HTTP/1.1
  Host: www.example.com
  Connection: keep-alive
  Pragma: no-cache
  Cache-Control: no-cache
  Upgrade-Insecure-Requests: 1
  User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/67.0.3396.99 Safari/537.36
  Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8
  Accept-Encoding: gzip, deflate
  Accept-Language: zh-CN,zh;q=0.9,en;q=0.8,zh-TW;q=0.7

  content(0)

License

MIT

Overview

Name With Ownerga0/netgraph
Primary LanguageGo
Program languageHTML (Language Count: 6)
Platform
License:MIT License
Release Count2
Last Release Name1.1 (Posted on )
First Release Name1.0 (Posted on )
Created At2015-08-20 12:23:31
Pushed At2023-07-21 19:53:49
Last Commit At2018-08-06 18:00:23
Stargazers Count0.9k
Watchers Count37
Fork Count96
Commits Count63
Has Issues Enabled
Issues Count12
Issue Open Count2
Pull Requests Count2
Pull Requests Open Count1
Pull Requests Close Count1
Has Wiki Enabled
Is Archived
Is Fork
Is Locked
Is Mirror
Is Private
To the top