Skip to content
A cross platform http sniffer with a web UI
Branch: master
Clone or download
Latest commit 69b72fb Aug 6, 2018
Type Name Latest commit message Commit time
Failed to load latest commit information.
ngnet fixes data racing problems (fixes #11) Aug 6, 2018
.gitignore Print response client and server address Jun 22, 2018
.travis.yml fix codecov integration problems Aug 6, 2018 README add codecov badge Aug 6, 2018 change options; optimize code details Jun 4, 2018
ng.go fixes data racing problems (fixes #11) Aug 6, 2018
ngserver.go fixes data racing problems (fixes #11) Aug 6, 2018
screenshot.png make ui more clear May 26, 2018

Go Report Card codecov GitHub license


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


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


  -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
	      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>
  GET / HTTP/1.1
  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




You can’t perform that action at this time.