Giter VIP home page Giter VIP logo

rest-api-frrouting's Introduction

Configuration, Installation, RUN and Test REST APIs

Description

FRRouting (FRR) is a free and open source Internet routing protocol suite for Linux and Unix platforms. It implements BGP, OSPF, RIP, IS-IS, PIM, LDP, BFD, Babel, PBR, OpenFabric and VRRP, with alpha support for EIGRP and NHRP https://frrouting.org/ .

This project is implemented to add REST APIs to FRRouting. Moreover, it supports some protocols such as:
OSPF
BGP
RIP
STATIC
Policy Based Routing
Prefix-List
Access-List
Route-Map
The other protocoles will be supportted in the future.

Architecture

image012

Installation

Prerequisites

Frrouting must be installed from following link:
http://docs.frrouting.org/projects/dev-guide/en/latest/building-frr-for-ubuntu2004.html .
And then

$ git clone https://github.com/Omidznlp/REST-API-FRRouting.git
$ cd REST-API-FRRouting
$ sudo python3.8 manage.py makemigrations
$ sudo python3.8 manage.py createsuperuser --email [email protected] --username admin
$ sudo python3.8 manage.py migrate
$ ./setup.sh

RUN and STOP

Run server

$ ./startup.sh <port number>

Exp:

$ ./startup.sh 8000

running server on port 8000
Watching for file changes with StatReloader
Performing system checks...

System check identified no issues (0 silenced).
July 12, 2020 - 12:56:28
Django version 3.0.7, using settings 'src.settings'
Starting development server at http://0.0.0.0:8000/
Quit the server with CONTROL-C.

Kill server

$./kill.sh <port number>

Test

OSPF : ospf/README.md
BGP : bgp/README.md
RIP: rip/README.md
STATIC: static/README.md
Policy Routes includes PBR, Prefix-List, Access-List and Route-Map : policyroutes/README.md

Write Configuration

REST API methodes write current configuration to configuration file.\

Check Configuration

All REST APIs methods insert some commands into FRRouting. To make sure whether they are inserted into it or not!. We had better check the result of requests by running "show running-config" command in the following manner to approve the functionally of REST APIs.

$ sudo vtysh
test# show running-config
Building configuration...

Current configuration:
!
frr version 7.3.1-MyOwnFRRVersion
frr defaults traditional
hostname test
log syslog informational
no ip forwarding
no ipv6 forwarding
service integrated-vtysh-config
!
line vty
!
end

rest-api-frrouting's People

Contributors

omidznlp avatar runshine avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.