tpetr / ripster

Super lightweight RIP routing protocol client

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

RIPster

Super lightweight RIPv2 beacon

RIPster is a lightweight, easy to use, single binary Routing Information Protocol version 2 (RIPv2) and next generation (RIPng) client written in Go. RIPster advertises static or Docker Ipvlan L3 routes from the end-host, using the RIP unsolicited routing update messages. RIPster does not receive RIP updates or alter the local routing table.

Download

Usage

RIPster must run with sufficient permissions to bind on UDP port 520. If unsure, use sudo.

Advertise static routes

$ sudo ./ripster --static-routes=7.7.0.0/16
2016-06-21 21:39:12  INFO   Adding 7.7.0.0/16 from 10.0.0.100 (static)
2016-06-21 21:39:12  INFO   RIP triggered update
2016-06-21 21:39:12  INFO   RIP advertising from 10.0.0.100: 7.7.0.0/16 (1)

Advertise Docker ipvlan L3 routes

RIPster can advertise Docker ipvlan network driver routes, when ipvlan network is in L3 mode. You should run RIPster on Docker host. RIPster then queries Docker API to fetch the list of all ipvlan networks. RIPster then advertises all ipvlan networks and all running containers with an IP address in in ipvlan network from the ipvlan parent interface.

$ sudo ./ripster --docker-ipvlan
2016-06-21 22:03:06  INFO   Adding 10.50.10.0/24 from 10.0.0.100  (Docker Ipvlan L3)
2016-06-21 22:03:06  INFO   Adding 10.50.10.2/32 from 10.0.0.100  (Docker Ipvlan L3)
2016-06-21 22:03:06  INFO   RIP triggered update
2016-06-21 22:03:06  INFO   RIP advertising from 10.0.0.100 : 10.50.10.0/24 (1) 10.50.10.2/32 (1)

Run RIPster in the background

$ sudo ./ripster --docker-ipvlan > ripster.log &

More Options

$ sudo ./ripster -h

About

Super lightweight RIP routing protocol client

License:GNU General Public License v3.0


Languages

Language:Go 99.2%Language:Shell 0.8%