Skip to content
Switch branches/tags

BGP Dashboard

A "realtime" web view of your BGP network

  • Who do I peer with?
  • How many routes do I receive from my peers?
  • Who do I use for tranist?
  • What AS path does a prefix take out of my network?
  • How many routes and autonomous systems do I see?
  • BGP Looking Glass (IPv4/IPv6/ASN)

How it works

This is beta code.

  • BGP peering session using GoBGP
  • GoBGP pipes BGP information into MongoDB
  • Flask App queries MongoDB to build website and JSON API
This project uses three Docker containers

The GoBGP container serves two functions:

  • Peer with the "real" network
    • Configure gobgpd.conf to peer with the real network.
    • Only IPv4-Unicast and IPv6-Unicast supported at this time.
  • Pass BGP updates into BGP
    • The script pipes the JSON updates from GoBGP into the MongoDB container
  • Mongo receives JSON updates from the GoBGP container
  • The Flask App queries Mongo for relevant information
  • Flask presents a Dashboard for realtime BGP updates
  • A JSON API is used on the backend to support the frontend and display Looking Glass queries




$ git clone
$ cd bgp-dashboard
$ # modify ./gobgp/gobgpd.conf to peer with your network
$ # modify ./flask/app/ globals to use your ASN and BGP communities
$ docker-compose build
$ docker-compose up (watch the log to verify BGP peeering is established)


  • ???