GithubHelp home page GithubHelp logo

openbgpd support about arouteserver HOT 7 CLOSED

pierky avatar pierky commented on June 7, 2024
openbgpd support

from arouteserver.

Comments (7)

job avatar job commented on June 7, 2024 1

Perhaps take a look at this project https://github.com/plajjan/vrnetlab, here docker is used to wrap around arbitrary operating systems such as IOS XR or Junos. it's probably entirely feasible to do the same with openbsd/openbgpd.

If that fails, your bridging approach is worth a shot too.

from arouteserver.

job avatar job commented on June 7, 2024

step 1) figure out how to run openbsd + openbgpd inside docker, i suppose with a KVM wrapper we can do this (so stack is docker -> kvm -> openbsd -> openbgpd)

from arouteserver.

pierky avatar pierky commented on June 7, 2024

This is definitely the next feature I'll work on. I've already started the same work on GoBGP but I think I'll pause it.
Configuration method and syntax should be not a big problem. Validation tests are a pain.
I see that something exists to run kvm VMs inside Docker but I never tried it and I'm not sure if/how it works.

I was also thinking something like this for live tests on OpenBGPD:

  docker          bird  bird  bird          rs clients
                   |     |     |
  virtual bridge =========================
                           |
  kvm                   openbsd             route server

I have to check how I can bridge the Docker network where clients are connected to the network where the kvm VM is connected. And also how I can connect to the kvm VM from the Python script that instantiated it: ssh is an option but host and the virtual network must reach each other to work.

from arouteserver.

pierky avatar pierky commented on June 7, 2024

It seems that this is working fine:

sudo virt-install \
-n openbsd1 \
-r 512 \
--vcpus=1 \
--os-variant=openbsd4 \
--accelerate \
-v -c install60.iso \
-w bridge:br-2d2956ce4b64 \
--graphics vnc,listen=0.0.0.0 \
--disk path=~/vms/openbsd1.qcow2,size=5,format=qcow2

where bridge:br-2d2956ce4b64 points to the bridge interface created by Docker.

This solution allows to control OpenBGPD using an ssh connection from the host where Python and kvm are running and also allows Docker containers (that is, rs clients) to be on the same net of the rs.

from arouteserver.

pierky avatar pierky commented on June 7, 2024

OpenBGPD support has been added in v0.4.0, even if some limitations.
Live tests also work fine locally, but not on TravisCI, because AFAIK there's no way to run VMs there.

from arouteserver.

job avatar job commented on June 7, 2024

from arouteserver.

pierky avatar pierky commented on June 7, 2024

Yes I know, they will be enabled as soon as it will be released.

from arouteserver.

Related Issues (20)

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.