Automatic IPv4 and IPv6 provisioning and mobility.
Vous ne pouvez pas sélectionner plus de 25 sujets Les noms de sujets doivent commencer par une lettre ou un nombre, peuvent contenir des tirets ('-') et peuvent comporter jusqu'à 35 caractères.
Marek Isalski aca95aa38f neaten up _extract_bgp_announcement il y a 3 ans
.hgignore initial import il y a 4 ans
Pipfile add dry-run, and use reverse DNS for fixup il y a 4 ans
README.md promote, demote, and migrate seem to work il y a 4 ans
automonty neaten up _extract_bgp_announcement il y a 3 ans

README.md

automonty

The automonty tool performs network automation. It is your network moose in mecha form.

Requirements

At FAELIX we run AS41495 which comprises VyOS-based BGP-edge routers and MikroTik RouterOS-based internal routers. We automate our VyOS edge with hphr and our MikroTik interior with automonty. You too will need RouterOS-based devices to make use of automonty.

Ensure that you have access to the RouterOS API.

Installation

git clone https://gitea.faelix.net/FAELIX/automonty
cd automonty
mkdir .venv
pipenv install
pipenv run ./python automonty --help

Usage

Configuration File

Create ~/.automonty.yaml as follows:

router:
  gama.m.faelix.net:
    group:
      - x4
      - x5
  soto.m.faelix.net:
    group:
      - x4
      - x5
  janszoon.d.faelix.net:
    group:
      - x5
      - x7
  kotzebue.n.faelix.net:
    group:
      - x5
      - x7
  teixeira.x.faelix.net:
    group:
      - x5
      - x7

loopbacks:
  - 46.227.200.1/32
  - 46.227.200.2/32
  - 46.227.204.1/32
  - 46.227.205.1/32
  - 46.227.207.1/32
  - 46.227.207.255/32

default_ipv4_loopback: 46.227.207.255/32

routing_filter_chain: automonty

We have specified:

  • a set of routers and to which groups they belong
  • a set of loopback addresses which should be treated specially
  • a default loopback address which is used as the anycast IPv4 default gateway for guests (VPSs, layer-2 circuits, etc)

Credentials

You can set credentials via environment variables:

export AUTOMONTY_USERNAME=monty
export AUTOMONTY_PASSWORD="m00se<3p0t4t0"
pipenv run ./python automonty check

Invoking Commands

Provisioning

Tearing Down

Migration