Compare commits

..

15 commits

Author SHA1 Message Date
237a47b4f3
Add conntrackd role
Some checks failed
continuous-integration/drone/push Build is failing
continuous-integration/drone/pr Build is failing
2022-01-13 14:51:23 +01:00
4d85cd7e4b
Fix some nftables issues
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
2022-01-13 13:59:49 +01:00
f4acc8949c
Add bastion network
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
2022-01-10 22:08:54 +01:00
64772b76e4
Add nftables role
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
This is a fully static version of the config, and it is meant to be
temporary (until I figure out a way to properly configure nftables using
ansible…).
2022-01-08 23:41:51 +01:00
9316313f1f Do not add IPv4 link local addresses
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
2022-01-03 01:57:51 +01:00
8883e672bd Harmonisation of variable names
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
2022-01-02 20:31:49 +01:00
907816af06 Add spaces before comments to please ansible-lint
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
2022-01-02 16:53:33 +01:00
d112c1df91 Enable IP forwarding for infra-* interfaces
Some checks failed
continuous-integration/drone/push Build is failing
continuous-integration/drone/pr Build is failing
2022-01-02 16:52:00 +01:00
4ca24ac99c Add IPForward= support systemd_networkd role 2022-01-02 16:51:31 +01:00
1a193e5dfb Add router.yml playbook
Some checks failed
continuous-integration/drone/push Build is failing
continuous-integration/drone/pr Build is failing
2022-01-02 16:32:24 +01:00
20274b596f Add network host_vars for infra-{1,2}.router
This is meant to be temporary (hopefully we'll use Netbox soon).
2022-01-02 16:31:14 +01:00
9c0bf190e2 Add systemd-networkd role 2022-01-02 16:30:59 +01:00
91743e598b Relax permissions on bird6?.conf 2022-01-02 16:07:18 +01:00
a616065513 Add keepalived role
All checks were successful
continuous-integration/drone/push Build is passing
2022-01-01 21:45:17 +01:00
0d705bc922 Add bird role 2022-01-01 21:45:08 +01:00
403 changed files with 5088 additions and 97303 deletions

1
.gitignore vendored
View file

@ -1,4 +1,3 @@
*.retry *.retry
tmp tmp
ldap-password.txt ldap-password.txt
__pycache__/

211
README.md
View file

@ -1,3 +1,5 @@
[![Linter Status](https://drone.auro.re/api/badges/Aurore/ansible/status.svg)](https://drone.auro.re/Aurore/ansible)
# Recettes Ansible d'Aurore # Recettes Ansible d'Aurore
Dépendances requises : Dépendances requises :
@ -13,9 +15,8 @@ Il contient la définition de chaque machine et le regroupement.
Quand on regroupe avec un `:children` en réalité on groupe des groupes. Quand on regroupe avec un `:children` en réalité on groupe des groupes.
Chaque machine est annoncée avec son hostname. Il faut pouvoir SSH sur cette Chaque machine est annoncée avec son hostname. Il faut pouvoir SSH sur cette machine
machine avec ce hostname, car c'est ce qu'Ansible fera (sauf pour les switchs, avec ce hostname, car c'est ce qu'Ansible fera.
voir plus bas).
**Playbook** : c'est une politique de déploiement. **Playbook** : c'est une politique de déploiement.
Il contient les associations des rôles avec les machines. Il contient les associations des rôles avec les machines.
@ -36,42 +37,31 @@ déployer un serveur prometheus, déployer une node prometheus…
**Tâche** : un rôle est composé de tâches. Une tâche effectue une et une seule **Tâche** : un rôle est composé de tâches. Une tâche effectue une et une seule
action. Elle est associée à un module Ansible. action. Elle est associée à un module Ansible.
*Exemples de tâche* : installer un paquet avec le module `apt`, ajouter une *Exemples de tâche* : installer un paquet avec le module `apt`, ajouter une ligne dans
ligne dans un fichier avec le module `lineinfile`, copier une template avec le un fichier avec le module `lineinfile`, copier une template avec le module `template`
module `template`
Une tâche peut avoir des paramètres supplémentaires pour la réessayer quand Une tâche peut avoir des paramètres supplémentaires pour la réessayer quand elle plante,
elle plante, récupérer son résultat dans une variable, mettre une boucle récupérer son résultat dans une varible, mettre une boucle dessus, mettre des conditions…
dessus, mettre des conditions…
N'oubliez pas d'aller lire l'excellente documentation de RedHat sur tous les modules N'oubliez pas d'aller lire l'excellent documentation de RedHat sur tous les modules
d'Ansible ! d'Ansible !
### Gestion des groupes de machines ### Gestion des groupes de machines
Pour la liste complète, je vous invite à lire le fichier `hosts`. Pour la liste complète, je vous invite à lire le fichier `hosts`.
Exemple : * pour tester les versions de Debian,
```yaml ```YAML
[fleming_vm] ansible_lsb.codename == 'stretch'
dhcp-fleming.adm.auro.re
dns-fleming.adm.auro.re
prometheus-fleming.adm.auro.re
routeur-fleming.adm.auro.re
[fleming_pve]
pve1.adm.auro.re
[fleming:children]
fleming_pve
fleming_vm
``` ```
> NB : * pour tester si c'est un CPU Intel x86_64,
>
> L'exemple a été adapté de la configuration d'Aurore pour des raisons ```YAML
> pédagogiques. ansible_processor[0].find('Intel') != -1
and ansible_architecture == 'x86_64'
```
Pour les fonctions (`proxy-server`, `dhcp-dynamique`…) il a été choisi Pour les fonctions (`proxy-server`, `dhcp-dynamique`…) il a été choisi
de ne pas faire de groupe particulier mais plutôt de sélectionner/enlever de ne pas faire de groupe particulier mais plutôt de sélectionner/enlever
@ -84,36 +74,21 @@ qui peuvent ensuite être utilisés dans des variables.
Pour lister tous les faits qu'Ansible collecte nativement d'un serveur Pour lister tous les faits qu'Ansible collecte nativement d'un serveur
on peut exécuter le module `setup` manuellement. on peut exécuter le module `setup` manuellement.
```bash ```
ansible proxy.adm.auro.re -m setup --ask-vault-pass ansible proxy.adm.auro.re -m setup --ask-vault-pass
``` ```
Il est notamment possible de :
* tester les versions de Debian,
```YAML
ansible_lsb.codename == 'stretch'
```
* tester si c'est un CPU Intel x86_64,
```YAML
ansible_processor[0].find('Intel') != -1
and ansible_architecture == 'x86_64'
```
## Exécution d'Ansible ## Exécution d'Ansible
### Configurer la connexion au vlan adm ### Configurer la connexion au vlan adm
Envoyer son agent SSH peut être dangereux Envoyer son agent SSH peut être dangereux
([source](https://heipei.github.io/2015/02/26/SSH-Agent-Forwarding-considered-harmful/)). ([source](https://heipei.io/2015/02/26/SSH-Agent-Forwarding-considered-harmful/)).
On va utiliser plutôt `ProxyJump`. On va utiliser plutôt `ProxyJump`.
Dans la configuration SSH : Dans la configuration SSH :
```text ```
Host *.adm.auro.re *.pve.auro.re Host *.adm.auro.re *.pve.auro.re
# Accept new host keys # Accept new host keys
StrictHostKeyChecking accept-new StrictHostKeyChecking accept-new
@ -122,8 +97,7 @@ Host *.adm.auro.re *.pve.auro.re
ProxyJump passerelle.auro.re ProxyJump passerelle.auro.re
``` ```
Il faut sa clé SSH configurée sur le serveur que l'on déploie. Il faut sa clé SSH configurée sur le serveur que l'on déploit.
```bash ```bash
ssh-copy-id proxy.adm.auro.re ssh-copy-id proxy.adm.auro.re
``` ```
@ -133,7 +107,6 @@ ssh-copy-id proxy.adm.auro.re
Il faut `python3-netaddr` sur sa machine. Il faut `python3-netaddr` sur sa machine.
Pour tester le playbook `base.yml` : Pour tester le playbook `base.yml` :
```bash ```bash
ansible-playbook --ask-vault-pass base.yml --check ansible-playbook --ask-vault-pass base.yml --check
``` ```
@ -143,7 +116,7 @@ Vous pouvez ensuite enlever `--check` si vous voulez appliquer les changements !
Si vous avez des soucis de fingerprint ECDSA, vous pouvez ignorer une Si vous avez des soucis de fingerprint ECDSA, vous pouvez ignorer une
première fois (dangereux !) : `ANSIBLE_HOST_KEY_CHECKING=0 ansible-playbook...`. première fois (dangereux !) : `ANSIBLE_HOST_KEY_CHECKING=0 ansible-playbook...`.
### Ajouter toutes les empreintes de serveur ### Ajouter tous les empruntes de serveur
```bash ```bash
#!/bin/bash #!/bin/bash
@ -152,10 +125,6 @@ for ip in `cat hosts|grep .adm.auro.re`; do
done done
``` ```
> Remarque :
>
> L'utilisation d'un certificat permet d'éviter d'avoir à ajouter sa clé ssh
> sur les serveurs.
### Passage à Ansible 2.10 (release: 30 juillet) ### Passage à Ansible 2.10 (release: 30 juillet)
@ -167,141 +136,11 @@ ansible-galaxy collection install community.general
ansible-galaxy collection install ansible.posix ansible-galaxy collection install ansible.posix
``` ```
Si vous n'arrivez pas à entrer votre *become password* (bug dans ansible?), un
Si vous n'arrivez pas à entrer votre _become password_ (bug dans ansible?), un
workaround est le suivant : workaround est le suivant :
`$ export ANSIBLE_BECOME_PASS='<votre mot de passe LDAP>'` `$ export ANSIBLE_BECOME_PASS='<votre mot de passe LDAP>'`
Notez l'espace au début pour ne pas log la commande dans votre historique Notez l'espace au début pour ne pas log la commande dans votre historique
shell. shell.
## Configuration des switchs depuis Ansible
Afin d'acquérir de l'indépendance vis-à-vis de re2o, un module permettant de
configurer les switchs depuis Ansible a été créé. Il utilise l'api rest des
switchs afin de récupérer et appliquer la configuration voulue.
### Prérequis
Pour utiliser le module, il faut d'abord annoncer à Ansible qu'il ne faut pas
effectuer de connexion ssh et de ne pas récupérer les faits. Cela se fait à
l'aide des variables `connection: httpapi` et `gather_facts: false` à placer
dans le playbook (pour une configuration locale) ou dans ansible.cfg (pour une
configuration globale). Ensuite, l'infrastructure actuelle de Aurore nécessite
l'utilisation d'un proxy. Pour cela, il suffit d'exécuter la commande :
```bash
ssh -D 3000 switchs-manager.adm.auro.re
```
et d'annoncer l'utilisation du proxy dans la configuration en exportant la
variable d'environnement `HTTP_PROXY=socks5://localhost:3000` et en
configurant la variable du module `use_proxy: true`.
Exemple :
```yaml
environment:
HTTP_PROXY: "socks5://localhost:3000"
tasks:
- name: vlans
switch_config:
username: ****
password: ****
port: 80
host: 192.168.1.42
use_proxy: true
config:
path: vlans/42
data:
name: VLAN42
vlan_id: 42
status: VS_PORT_BASED
type: VT_STATIC
```
Le module est alors utilisable, il ne reste plus qu'à le configurer.
### Écrire la configuration
Le module se veut assez libre. Ainsi, l'ensemble de la requête doit être écrite
dans les `tasks`. Voici un exemple pour configurer un vlan :
```yaml
tasks:
- name: vlans
switch_config:
username: ****
password: ****
port: 80
host: 192.168.1.42
config:
path: vlans/42
data:
name: VLAN42
vlan_id: 42
status: VS_PORT_BASED
type: VT_STATIC
```
Le `path` correspond à l'url de l'objet que l'on souhaite éditer et `data`
correspond aux données qui seront envoyées dans une requête `PUT` (au format
`json`). Cependant, la configuration d'un vlan peut nécessiter de le créer.
Pour remédier à ce problème, il est possible d'utiliser la syntaxe suivante :
```yaml
tasks:
- name: vlans
switch_config:
username: ****
password: ****
port: 80
host: 192.168.1.42
config:
path: vlans
create_method: POST
subpath:
- path: 42
data:
name: VLAN42
vlan_id: 42
status: VS_PORT_BASED
type: VT_STATIC
```
Le variable `create_method` correspond au type de la requête pour effectuer une
action de création de l'objet. Il s'agit généralement de `POST`. Dans le cas
où la variable n'est pas définit, la création sera désactivée et ainsi, si
l'url indiquée dans les `subpath` n'existe pas, alors la configuration échouera.
Par conséquent, si le vlan 42 a besoin d'être créé, une requête `POST` sera
effectué sur l'url `vlans` avec les données dans `data`.
Il est également possible d'éxecuter une action de suppression d'un vlan à l'aide
de la variable `delete` :
```yaml
tasks:
- name: vlans
switch_config:
username: ****
password: ****
port: 80
host: 192.168.1.42
config:
path: vlans/42
delete: true
```
Si la variable `delete` est activée, alors une requête `DELETE` sera envoyée
sur l'url indiquée. Pour vérifier si la suppression est déjà effective avant
l'éxecution, le module vérifiera si un `GET` sur l'url retourne une 404.
> Remarque :
>
> Si les variables `delete` et `data` sont définies (dont `delete` à `true`),
> alors il en résultera une action de suppression malgré tout.
Puisque `subpath` est une liste, il est possible de configurer plusieurs requête
en même temps. Cela à l'avantage d'effectuer toutes les modifications à la suite
(sans avoir à se connecter plusieurs sur l'api).

18
all.yml
View file

@ -1,18 +0,0 @@
#!/usr/bin/env ansible-playbook
---
- import_playbook: playbooks/base.yml
- import_playbook: playbooks/root.yml
- import_playbook: playbooks/ssh.yml
- import_playbook: playbooks/chronyd.yml
- import_playbook: playbooks/kresd.yml
- import_playbook: playbooks/knotd.yml
- import_playbook: playbooks/resolvconf.yml
- import_playbook: playbooks/ifupdown2.yml
- import_playbook: playbooks/systemd_link.yml
- import_playbook: playbooks/keepalived.yml
- import_playbook: playbooks/ip_forward.yml
- import_playbook: playbooks/dhcpd.yml
- import_playbook: playbooks/bird.yml
- import_playbook: playbooks/pve.yml
- import_playbook: playbooks/prometheus.yml
...

View file

@ -1,22 +1,34 @@
[defaults] # Ansible configuration
jinja2_native = true
ask_vault_pass = True [defaults]
# Explicitly redefine some defaults to make subfolder execution work
roles_path = ./roles roles_path = ./roles
# Do not create .retry files
retry_files_enabled = False retry_files_enabled = False
# Use inventory
inventory = ./hosts inventory = ./hosts
stdout_callback = debug
library = ./library # Custom header in templates
filter_plugins = ./filter_plugins ansible_managed = Ansible managed, modified on %Y-%m-%d %H:%M:%S
ansible_managed = Ansible managed
# Do not use cows (with cowsay)
nocows = 1 nocows = 1
# Do more parallelism
forks = 15 forks = 15
# Some SSH connection will take time
timeout = 60 timeout = 60
remote_user = root remote_user = root
[diff] [diff]
# TO know what changed
always = yes always = yes
[ssh_connection] [ssh_connection]
pipelining = True pipelining = True
retries = 3

20
copy-keys.sh Executable file
View file

@ -0,0 +1,20 @@
#!/bin/bash
set -e
# Grab valid unique hostnames from the Ansible inventory.
HOSTS=$(grep -ve '^[#\[]' hosts \
| grep -F adm.auro.re \
| sort -u)
# Ask password
read -s -p "Hello adventurer, what is your LDAP password? " passwd
echo
for host in $HOSTS; do
echo "[+] Handling host $host"
# sshpass can be used for non-interactive password authentication.
# place your password in ldap-password.txt.
SSHPASS=${passwd} sshpass -v -e ssh-copy-id "$host"
done

3
deploy_all.sh Executable file
View file

@ -0,0 +1,3 @@
#!/usr/bin/env bash
# Deploy all playbooks
ansible-playbook playbooks/*.yml $@

View file

@ -1,16 +0,0 @@
class FilterModule:
def filters(self):
return {
"enquote": enquote,
}
def enquote(string, delimiter='"', escape="\\"):
translation = str.maketrans(
{
delimiter: f"{escape}{delimiter}",
escape: f"{escape}{escape}",
}
)
escaped = string.translate(translation)
return f"{delimiter}{escaped}{delimiter}"

View file

@ -1,9 +0,0 @@
class FilterModule:
def filters(self):
return {
"format_rev": format_rev,
}
def format_rev(text, fmt, *args, **kwargs):
return fmt.format(text, *args, **kwargs)

View file

@ -1,68 +0,0 @@
import ipaddress
from operator import attrgetter
import dns.name
class FilterModule:
def filters(self):
return {
"add_origin": add_origin,
"add_origin_keys": add_origin_keys,
"ip_filter": ip_filter,
"remove_domain_suffix": remove_domain_suffix,
"ipaddr_sort": ipaddr_sort,
}
def first_addr(addresses, ipv4 = True):
version = ipaddress.IPv4Address if ipv4 else ipaddress.IPv6Address
for addr in addresses:
parsed = ipaddress.ip_address(xx)
if isinstance(parsed, version):
return parsed
raise ValueError("missing address")
def ip_filter(addresses, networks):
if isinstance(addresses, dict):
return {k: ip_filter(v, networks) for k, v in addresses.items()}
ip_networks = [ipaddress.ip_network(n) for n in networks]
ip_addresses = [ipaddress.ip_address(a) for a in addresses]
return [str(a) for a in ip_addresses if any(a in n for n in ip_networks)]
def add_origin(name, origin="."):
return dns.name.from_text(name, dns.name.from_text(origin)).to_text()
def add_origin_keys(dct, origin="."):
return {add_origin(k, origin): v for k, v in dct.items()}
def remove_domain_suffix(name):
parent = dns.name.from_text(name).parent()
return parent.to_text()
def ipaddr_sort(addrs, types, unknown_after=True):
check_types = {
"global": attrgetter("is_global"),
"link-local": attrgetter("is_link_local"),
"loopback": attrgetter("is_loopback"),
"multicast": attrgetter("is_multicast"),
"private": attrgetter("is_private"),
"reserved": attrgetter("is_reserved"),
"site_local": attrgetter("is_site_local"),
"unspecified": attrgetter("is_unspecified"),
}
def addr_weight(addr):
if isinstance(addr, str):
addr = ipaddress.ip_address(addr.split("/")[0])
for index, ty in enumerate(types):
if check_types[ty](ipaddress.ip_address(addr)):
return index
return len(types) if unknown_after else -1
return sorted(addrs, key=addr_weight)

View file

@ -1,9 +0,0 @@
class FilterModule:
def filters(self):
return {
"suffix": suffix,
}
def suffix(value, suffix):
return value + suffix

View file

@ -1,38 +0,0 @@
#!/usr/bin/python
class FilterModule(object):
def filters(self):
return {
'range2list': self.range2list,
}
def range2list(self, port_range):
"""
Convert a range into list
Exemple:
```
>>> FilterModule.range2list("1-10,42")
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 42]
````
"""
port_range = port_range.replace(" ", "").split(",")
ports = []
for r in port_range:
if "-" in r:
try:
a, b = r.split("-")
except:
raise Exception("A range must contain 2 values")
try:
a = int(a)
b = int(b)
except:
raise TypeError("A range must contain integer")
for n in range(a, b+1):
ports.append(n)
else:
try:
ports.append(int(r))
except:
raise TypeError("Value must be integer")
return list(set(ports))

View file

@ -1,61 +0,0 @@
{
"nodes": {
"flake-parts": {
"inputs": {
"nixpkgs-lib": "nixpkgs-lib"
},
"locked": {
"lastModified": 1756770412,
"narHash": "sha256-+uWLQZccFHwqpGqr2Yt5VsW/PbeJVTn9Dk6SHWhNRPw=",
"owner": "hercules-ci",
"repo": "flake-parts",
"rev": "4524271976b625a4a605beefd893f270620fd751",
"type": "github"
},
"original": {
"owner": "hercules-ci",
"repo": "flake-parts",
"type": "github"
}
},
"nixpkgs": {
"locked": {
"lastModified": 1757020766,
"narHash": "sha256-PLoSjHRa2bUbi1x9HoXgTx2AiuzNXs54c8omhadyvp0=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "fe83bbdde2ccdc2cb9573aa846abe8363f79a97a",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "nixos-25.05",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs-lib": {
"locked": {
"lastModified": 1754788789,
"narHash": "sha256-x2rJ+Ovzq0sCMpgfgGaaqgBSwY+LST+WbZ6TytnT9Rk=",
"owner": "nix-community",
"repo": "nixpkgs.lib",
"rev": "a73b9c743612e4244d865a2fdee11865283c04e6",
"type": "github"
},
"original": {
"owner": "nix-community",
"repo": "nixpkgs.lib",
"type": "github"
}
},
"root": {
"inputs": {
"flake-parts": "flake-parts",
"nixpkgs": "nixpkgs"
}
}
},
"root": "root",
"version": 7
}

View file

@ -1,27 +0,0 @@
{
description = "Ansible Aurore";
inputs = {
nixpkgs.url = "github:NixOS/nixpkgs/nixos-25.05";
flake-parts.url = "github:hercules-ci/flake-parts";
};
outputs =
inputs@{
self,
nixpkgs,
flake-parts,
...
}:
flake-parts.lib.mkFlake { inherit inputs; } {
systems = [ "x86_64-linux" ];
perSystem =
{ config, pkgs, ... }:
{
devShells = {
default = pkgs.callPackage ./shell.nix {};
};
};
};
}

View file

@ -1,4 +0,0 @@
---
bird__as:
aurore: 43619
...

View file

@ -1,5 +0,0 @@
---
chronyd__pools:
- ntp-1.int.infra.auro.re
- ntp-2.int.infra.auro.re
...

View file

@ -1,24 +0,0 @@
---
ifupdown2__wireguard_proto: wireguard
ifupdown2__gateways:
adm:
- 2a09:6840:128::254
- 10.128.0.254
int:
- 2a09:6840:206::1
- 10.206.0.1
ext:
- 2a09:6840:211::1
- 10.211.0.1
monit:
- 2a09:6840:204::1
- 10.204.0.1
isp:
- 2a09:6840:210::1
- 10.210.0.1
pub:
- 2a09:6840:215::1
- 45.66.111.204
ovh:
- 92.222.211.254
...

View file

@ -1,10 +0,0 @@
---
openssh__users_ca_public_key:
"ecdsa-sha2-nistp384 AAAAE2VjZHNhLXNoYTItbmlzdHAzODQAAAAIbmlzdHAzODQAAAB\
hBIpT7d7WeR88bs53KkNkZNOzkPJ7CQ5Ui6Wl9LXzAjjIdH+hKJieBMHrKew7+kzxGYaTqXW\
F1fQWsACG6aniy7VZpsdgTaNw7qr9frGfmo950V7IlU6w1HRc5c+3oVBWpg=="
openssh__authorized_principals:
- any
- "{{ inventory_hostname }}"
...

View file

@ -1,3 +0,0 @@
---
prometheus_node__text_dir: /var/run/prometheus-node-exporter
...

View file

@ -1,13 +0,0 @@
---
resolvconf__nameservers:
- 2a09:6840:206::1:1
- 2a09:6840:206::1:2
- 10.206.1.1
- 10.206.1.2
resolvconf__domain: auro.re.
resolvconf__search:
- "{{ inventory_hostname | remove_domain_suffix }}"
- auro.re.
...

View file

@ -1,5 +0,0 @@
---
root__shell: /bin/bash
root__password: "{{ vault_root_password }}"
...

View file

@ -1,297 +1,235 @@
$ANSIBLE_VAULT;1.1;AES256 $ANSIBLE_VAULT;1.1;AES256
35353866373931343963333639323431636465303562306166333735383462353032323461613232 63383865663866376238613638306139363461386331363764306166386664653238353761383565
3666653438393936356535633661363838613233323932370a656439316234356339613532663237 6336653265613463646139666236646362303463373731610a333537313431363366616665643462
39373439366432363533303961396466623366323339383735316531653538633264393264353337 66303839346238306234643139313835643339633963626338316163336365306462353830343536
3937323861616530640a666361323164353338306336616564663466616630393839613833373933 3231373236633066330a303236653238356330636332633139623134663039303935666566336531
65613161323164613334656631333336343262363835323962343662333133366561306139636261 36303937303231663232653534666639656232303231313836303834306436323463653635303830
61656532666563333063356231636565626631633436623531313938663930396362343031356534 38393533363762663863326434633266613265663930363432623234376235326637346338333761
34303565623832366664303561643137626433333164623730623639656439346639616164623865 35363165643464623131313031383938353664373133616365613237383937376332353239636233
31613462316439613937313138313830323334373337366630323331393537633437303063353363 36393063333164346262356364626332303531373935613633326366383165336637323933656263
66383930353930616137303436383864363439326139643361356231373939306439633332666232 63376363623132393837363837656538323135316636333235656561383234393763303862626361
38363061636139346430373263613932336361356262656138663233386464373839366630303765 63613130326336626630393338373630653437333039376633663963373666383137303038376364
35343064336533373238396430393536366438653534366565373733313962616364313061626133 39313466353565316633356362623264356231613933656336323933373635636664383164323964
37666538313038643865346461626537353930366264643162376530353536623863656236303433 31633130353330376532313131373933393366313637356236623634653630393130363561656562
31336561336131383635393238366464653934613130363831306335643935373033303162353534 33333732343131656133353065313864653064633261643262633538643162383863323336316330
38353832653664633061646331653634393963333038306635313464636136616366313962333431 39333035643738313939353262353632303636386533623164623538323466653237373531376562
39363934643266646131653236303138636163326663373765373761663062656463643162373038 61363732366463393364383761663137343836383636366132663063383833396231326366346465
34656163633964626235366539663132396666623363303632363236303831613532393931373761 35323766663666383832663935633062633864646534363763643534363831336361306633636632
65613435353162346233323533383537316231363437653239343233636533333966613066343932 66313561613330363064393430643436363738623436353734353733613462326561326462363031
30626636306531333736613965396432373130356238313136336434356133353435643065626261 37666665383539626166373865323439356533323333343035636665323738633038386337343036
32633732613361376261363831363866333332393132643439626639383438663438366330386534 38653732663062333165616632316361363666393036643564356131383261646630393131613964
31303532323461303862346364386532663839323163653366356136666131363839663635343166 37376532636237373666396162666237663861356263633331326461386265316666383037613235
38353962326430383561333630623030623536353838633231393763393238316530363939343536 64303237363436383138303431613236633562303062393737623131343133383666373033333663
66323562336334376234613436373237303562363831323038366232393161356262653864663037 37646137303036303361386663653738666334616534623232346666653165636232326530633635
34363436356332633363363963613635346337613438326436333836386534353738646166643333 31333738366635623862353834366266643732386535356361323839623630663139373963656636
65356637366431326132363432663662346638383439383766646531363662356266313961356239 37393965356638656637366261303536306466373938313462383639366233386230393762646238
31323236393538363662643662643535623633663738343266636163363835383030646661363966 36633066623737633463643963383131393765303838373439393432633833366263643462333533
36366466386666613364313166353366333131343061353135306135656663323461303338346666 30626334663432636264326338643063313431306631376439303562363733313366396331636262
32626231613738316233636361633337343635656334336536663865633465326639373966303137 31313836613737366330393137656332333437633639383066363534363363386364323936623931
39383731303862353637386438306136303765333136653465663963663930383037343130316466 39666338393236346634613239383964353262633239633232326433343436623038323131303436
33343932383033643530323136316632386230366338373362366462666233336530393561353933 62373536633233383937343266613164333561623031383432323662396336646534383430393730
36356330386361303562666339306265663539616434336264373832636139313365633065343763 30636662623734616139353433336336323361393061363339333165616630336333663561353632
31323633346536366635646562356266373964616338366165376331306561663938396661396164 62626533653734323662653434353562346162613837373465646239376437663337353030303866
31363438326439343964666439356339326661666136303461343436303533363630353735633038 61323836643463343236633438366236613630363038323230353263373563643535313765303738
38383365363739333034373031326530353962646661343039616230396132323833626162643964 62373230643762386165363833336238313234343530333165313762383663343236383063303762
65363165333233643738373638353537343162366265316661353563353862623134663362633261 33653761613837396434353230356166326339646136353830343365623863336230373564643862
32343364333236363738333130316538666536306664363661616536336264363438396464666533 38653063363832323266346466356132396265323463626435363839383061363964323736393635
37616533363936356335663562366563303564623530303762363034343435326666356162316535 37633136663166653238313061386464353239346630323062633531393061373136326238323632
61363133326263653937373037643930343565336166643939663466316232313535333965303737 30323366373433623861306138306265393934613039313936613639626636343434653932373363
35313566353963616632313763366561633039626239353236323438383261663066323334333632 37343931623862386434623335666139666462353165643237396432376532373034333434346132
62393265396235636461653862383830613634393431396131323439613362366463633239383761 37643439656332643961393661656365346339626163343638616438643461333535623231333764
39343361663463633332666666346339363334366330393936373433353034653765323130383335 37346663626537643366633461373764313331383264373237653834313030616533353736326334
63336338653333356438323264356162316638336338343033326639303237656663633233383735 36316139613061633331343736643961303164376366383362623538616432373062303762323138
34646535633831636238316564373035353635383738356133326664626566623766366535333439 36303566393135383339356433653164663664393533333565343766363362623838333566373735
30326437613539373163323464323635316632633930353931303466376661396135623031623133 64643235323633343938636238373930316562336363313733373530303834623564376239303362
33653735336230666665616638353561623235343439666135386165313436306666643837616166 61313566613763613433333132333965363335346463383735393061376139386231386338313735
37613964663837373137383736393063333037366433643632333963623038623636653639343936 63643566336531623566626239613437346162663334636630333139393063636133333064656437
32383532613430623563623565633665663030616530643735653563303035616530313463643431 66663938656532663031663636643937633638386332303733316161663464613933366231613831
31663361383835613631336638343338373639613532313561313231353765316237653431663462 37333565336535326464393561386135386638613565663733323266303736333561316663613432
65366162326630656566663731316262336536303032386336666263326265316564336339316430 66373661623964343937343162646530346439343665396139616135663536653837363838343235
31643066633438663562343730393534663338613165633635356333323635653161346136336261 66636337376138666463336430363234323334313663663735383363623934346665313236303731
30313332383065633335396131656136613932346331343632386235643764363235376531376437 32316532626666633462393233643733303737343265366637346261643366303232316664323561
61303130316537633830366662366237303934306561333134366463646464386530623631346264 31363038306233373339353131343038643130313330373161373665636163333130613435303236
30356536613932613264643835356637356364653038383130366237656232333031313163643332 61383932313734363638303761366263313036663939663735313931363139376231366639653133
34393865323162613936613264313864613734373032386266653432616535636464363463633564 36306264623533393334303138656238656363363033353531663262336432613839363763633238
37343661623935353365333831623631386439343237383933313337393065653934303065313634 63306238366332363137653066353231323533653231626561333766373636393164623362346139
61396163323937643837643636343337343231616265643765313932346462373735323737326663 64653862363530373766333432383630313935313966353463346333623365643133376635316662
66316135646663376537613663373432393865623038363239356265303362326161366462356138 61356261303633656432333535656266663038393034313439363464633934316238343332343361
65336536626634366363623865656234363335343662333134613835393635623434393036316638 64323539396262623338373435656363363732643337623762623762326261303132643336323537
35366431653463626665663861303333363038666131643861646465663761623364333162343761 65663664663035613738346639393739396433623763643532393461663833323634376634633032
64396131643136323634643461656339616361323030626166303930623838343438393465653364 37313935633737363061653831646632326635633362326533316530363833376436663030663239
66633037616633316534386639306438363863363530376131363332353536656533393161313931 37356539663038386334353834663839613934653638376538623330366634363765656266643833
34386636643737353738323265363435636239353261373466383430346461383932323634346466 31303530363434363765313339363639626466323837366262373935343537363565616134353465
33666436343130643032626562613165396334323937353663376162643266646539353932313137 38316432653166366431363064656437313830393936663431313934643133373539366531373865
62336162646535346631623332376334336538326530356233646239306337633365373562653166 34353334396139666130633562663031336232653335326437356262663231373536613937343334
32383639353431666137396631663237313436393434626531316365666335306466363639626663 37646339663033616361303563356666383431303339643930383734303863333032396637663162
63643861656537306133343138633535323737346538643063363330383366313362653933383365 64386338323633326262316337353736623431346232353732613764323463333366376161636437
34313230663163303730326361303337373136346161353132626362623461343661663964333765 35343432616362643665356463616636353031636135666664356139383138636135356639353839
37353165333762346539333730333731366532623531343962333037336464666530396437353666 36356366393932303433373534306239653531346264386663333434616464316362643534653734
62313035323234643236343534663434356264643830636433323831313364663762646130306362 63303331663131633838646465313935636162343431663539643461326135653931633332643830
32316530643230313230376662383439343639343336633431623135626134353134383030396264 35346435646561616436356537643065396230623634316431306461353230356639396134303935
38623933356332336231343434663563653332633237653966663964646232623637313231366638 37356236373366396132313236366366353164643432643539333734616230633637633536623630
30363966373362363432376562656436356338356561303133643432303736376234643632663137 35303634386139333835326236383162643639626435386130663937323033663837366363336461
34336630356362303132343737376637303939623133363663306133383465613263356632383030 64643762393265626536663566643465643762393438343638363863346134633439306231306132
61346138316538353638343833366261366534353963326162303866393430333964653333346539 38333463646639373264653133653436303738336639373261396261323332656639323763386463
64386161663435646331613834363336373738396338653263323937623163663236366636343239 61313165336230306437353661306166303837336330336162633662373834396261373230316164
36383135343763636139393331663139323431376562353165353662396165653235633464363035 39346664643230616434653339333061323661616238373038663266643664383135326561306339
31393233636561366639373566623738636537363235666234633534376238323163363238393237 35373964343334323633333537386264663066633362373934386163626431393138663265343538
64316132666530336135353434623866363739643830646463656536336136646334393064303630 61303334646363316332636639626662386339363737393263646161333038363739373536383264
65343964613265333934306432313739633134663131666433386630303132663866343532363835 35623461313435353832396239626636396461336133323366306233633861366538303062663238
38353237343630653561636365656561313636623065363836333663363934643162656534623864 31393663346633386665303731653162373136653235626435306136333562353733303462623665
62373763353961646235613465646630306562386531396364386164633065643763396437316466 63653762353736313763353631313265393761366638613532623566336230626332616665336137
32376564616562656136346563383266303963666136663863626137653462373430363363336364 39633461646266376530656666366636623763643863646461323131333361376631383461326137
35333133303463363663356365626365613036633835323334653264626637353634373665643036 38666433323665626662333434623136346337633137303331333235336462636237643165653236
65663736323235353964326466376163313630323265333631323866663137313665626238396130 62316661356334653739633430303766646537316634386365623635383938303166666234303037
64653832626639626633376231326534303530373937396235366239626639356234363238633336 62323432633937616532336165366564393532346361323936623762386466393638323935323039
34343064393334613732356332633361613633643039366537623465303739663635626365656631 34646661653661626433373332363530653532343836333135396332386435373163373463626532
64343936613536636438313232376564376539623261623539346564303036303131366561643564 38343731633564656337626136376365613135326265633066356262323334386265386436616463
61623630393032666636366338336266656264353631393061383162323766616530323734326134 64303961663533666531303930326462353638356364343330393031656234333833613530633866
31623962373435323730323830373239363738663164653338623836386636626337623739366566 63303939396464643533373966353464616364326166363738646539343137363861616337363631
61663835623038626266653062666264663639363763623139393862633061356164323530666665 37306161316461613238333531346432366631666335623163323764383238643665356561366435
31623538333264633735643839376433653934383663333130336133653235313631336163343134 36323662326531313862633730663162313932623033303637653461366639636538306433633266
33653533613430323834653730326661323462316338636338393063653866316335626633323137 36323234313937313838643063323165333765663962303736333939333763326135623230613332
32653262353964653131343430383661643231383135643332616462343231323266333430373061 65343934633532623730336230616565313733363836373233313534313165373639656435636433
62623136393239356166393964323830623239613434636361633365353862646130373865643136 66356663633931366135303962666531383639376335396534386438663536623066363862646365
66346336363866393762353633353638663433363332356131626639326166393234313765346138 30653735383131336637383261316238393838353335306366343761386361623631396465656635
64613431333139376139343234666664313236633031393938663431376336643133323964303938 36646661373933663530653363613634373966613131353437346533613062356434353033333431
64616536613462306363613639613132383361393535333362363630393230636532316634373231 36393337353431353165613538646631393366366335316533626265313438643338323434393866
63313839323263663237373937323361373533616465643830396666376661616631646561663130 64373263316564393966343865383764343564356666346637303165326538643532643737343130
66376266363338666133313263653733646365653034653538333332623861323833633033393234 64393137636261363161396232653463646263346663323162386466653066633332646137343035
39633834343231663166376333633635366261616561643363393137383736303436383339633734 36326336626462363931626464653035343933336634323762653130623266666533656635633533
30623939343939373038656461333464353033313632643138393334373565383331326430653263 35643133316135303835356539393532326564653761326230306137326132333932646666373361
66343630396135633636366337353061363730333364376664623234333434356661323935626633 38353531393835653536356663373433333766323534653139666365636336386138366231643437
63336465343661393636333663306361386432373235313337353361333735373436633832633439 65343635616465383666303063656235613234323132653264656463613065346139313661663234
30653766373230383364396638366237643932633364663639643661393438653339393031616338 61373933656362306563396131363739666536353564393230343735626465623265323464333065
62396632353063376566333261356662356265373733323631363263396337383631383733393034 36333863613436653531353334316162396632363038323734313961636436343830343761636430
65616434356530306661636633363333353138303631626565636637313738353338343334633533 63353661653737346563646439613039353465303862383264656535646335393139623931616533
39313232356166623939383864346665626333363132663033326430366565336339306465343337 39636235366636313136366166356265326136393439313334633939343561323465366139393539
34613736356534653534363034366431653861613534663261633739366361373134323566376335 33616363646237353632366231336431393236336330306562343761646339396430373937633831
31313263313262353162353039623634653534346363323131633362323035633337366536366561 31323565343932333234613566313933636130336335343331383166616463663138383231393463
64323432353236383839643662383138373938373834323262386364376162663839366232313433 62663231656461626264393762376234643763646263313334303065323766353863366531633138
38643662613065663863636664636162333830353131636238383439323439316363383935623731 65373236316461303865613064626231636261626237633936386238353633633139646162323265
62393964636137653935313338343465396633333461643032383730313139396462393936383630 62613162646239386366316161323538323437346433336661383938383332616562616234653331
63353166633735623364653264643934666438383739663461373332623631323932333162303630 66306634613162633234363838313264663337653737656337613030343564353939366536376339
39353637353437636537613935306539633163613334303833393832616338323061633532303361 62666166343034323534646463643933663333653032323130366435356238353966363961616664
63656635333331376561363962386135303963303030396564356534333037623635613963313666 65336237376566393330643432363466653538623330366533616632396334356535336633306266
65303664316164613835343930623338326235363933623533343961666664323836316231613465 33373139343333353838633436356237613632323233353861383438386466326139306337363632
65373931666331326634316463663134613031363636363434643839386239333164333538393831 31613738333766663139353836356531376332656365633665346632666533643162363639343830
65653935623431373238326231343439666635623730393639636131386162373466316164356263 36336137313863613835393166623235366563373431386562363064393938313033323633633263
37316539656230316336303265646339303139306262396536633533366261346238393335393765 61373937653931623962633266633233343563623064386636353231363337636437396438356333
39376630306639353862323834343830646330643737653631633361326134613666613430323433 35343137333332646462663462396437323433373339393439633363376535393230656561353461
64363965653063316432353431386533386661386239636332323139393933653063643865646338 65373565396530333164396666333561633835376232643262653630643666653534316565393562
34626433393731343535313766303237313866613166663333616535323661666362613439376166 30633933333635346337376365386332613032393764656661663562316561373536306237626138
62626430363661303630346265383863613162356535306165633537383038613131346561306330 36316561336235343434643962623138343032663864323862326164326164613830633439313065
61623435626363623762313832313031363665623933656238623131303362326137313266316630 35303738633731613234653066353035363239383936303662633563326563386334353766386137
32366664633963626463613562643666383637383831343234666435373564306635343730373665 34643663373032336135386561663963343161613938343762363162313932363538616361613330
36643436633066373962303965373663376266323133343233323563393065633162383237323162 63653638626636646362393938333965616162396430346463376332363066373831643633383139
38656336306432623330616234373936306163646330313734653864386464646535666331616335 39613936303033353536326133396331303435313432326366316337653935396662393463663739
32623163356337326665333731656438393633326638363635353733663861323934333536393338 30326565616666363534306238613138303031383562356633316434363666626632616233653533
33656231373166313761643030363437373638366461653038363565623633623035393564643161 31333665313930366463636630373363333565613835353935333936303961333764396361626530
38663064356239393034323761386435396437386534633734353938653239323533333531363965 64386534626166356130333161643339383064633965323463313861303364633937646264373565
36316636353864626461303936313632663261353437396238363930626239336139323561373133 61326330343833333761656537643565663536616133363465643131396338653764653165336539
61366330386135363039303166326231656331653632343261306531653731313465396131643330 63396536383330336531656434303862333639363031633436366665646565613934663838363832
35616432613631636264333263363239616435303436653936386165343335356337343032386239 63663761303837306234623632613834613464326663313133626166613334336539333662383934
37373230623366653834663031343738643063616661363138316262643635343439333838363632 30316134643661326463376434313137333133353934353363663433373066663366633066663139
34353236393730363262303439313132663735336463323432303036366361666338363237313664 30303163313532623664393939663730373230663338343030336232333163336365393138343532
39366434303839356163616136336237643061373633343737333036653362643635643536386436 31313732306430626537363866653065383561316262353434346137616362626638363136346639
30336636333464626464326332343333656535666431353338336438346335346433313934346231 66623231393835623063343637613531626161346638326637663237383562663231306464306463
32326231636262346232636366393361623830316238303537666164626339383061633765333039 35613763346135343839383234646134313939346139653031666463613032663036663662663361
30633539666535366539383061396461313437383537656239393131326538636536356536643735 39636461663864623432386330623939323361653934303266626466333365336533353566633036
66653336343364346635383761613731666263366465643336636661323263386364653035333062 30393836333061633939613865373166306263643461663336353335646632616232663135356362
33616364393664613363383937653530356138316363633335386232336531373835303732383962 63346664666639353166316661336563383835616364366131356264353362323137623536356138
65643264656134393663653333346531316365323730383363373564323133333032373330643232 64353135346333343234396433353234303365633535333731393264656434336232373934323731
63373239366435643738353130353333646136303530643065383066313035366239326664363830 65653435663931363333623432316136386665646334346636373335613833353034376335393131
36626366646264643130326261363536313835356638636139636434333362366363313133316130 62636634626666313431323064636262623061343539353431396262643036666132333338626637
61383734636433313433303466323265386132363862643131613666306162396437643166393630 37393538343361613832306163373065663661393439386163326238656461383237313331383163
32613464313530316262353938383735336262663939323730626662663235303638303065663939 62336634333139303165613964306663373931613364613263356634633134626632643564653937
33636234383033393237303865633961333462663232363562386637333335373565663261363933 32303139623164313731303830656333383731623634313566656362666236326634616466313762
31356436613138653765663162646566326134313736316130356336663536643466623331653039 61376238326561333562373430323364613332306265643262653332353362636563303835356434
38616465306532666434333534356464666663613263383430336465376133393032623762323237 39653237363339643830373732663339616236646135353865333465623066336261666433666433
63343462373834383566393466366332303235323865343730373062343739363265343164623262 30333435353436613935343266623863623262623737666233363464653364316634373563353138
38346539343533636435626133306662623865653934666665363063356162326461316561383261 66616162663436393636376434306366376638366561323761666533373239353630623863646439
33666362656635323262353066356330616263326134613635336261343438393838326438613435 30393838383432396636356330666636643638616262386661363766313434303230376135396132
64343336393034303330323563346233653135633439386465653065633339643032636662313531 61363061656538373336383463616665626565343630613235303932316165343930633163303039
38356234326632336161666666353030366238626262353831393532306166363432633939383166 32306663353337623335326265316463646439343063366338666237323130343665633434343130
66316136333838653433383439623366333062313833616366656566393965393665613738303833 65323739313336656266646163356331643238336339303133353430393164316135616238333463
38326139366330393863623365383963306361613665643962376664636134353533623836643362 37633736303039653132623961386339636530343130663333663639343764343233313362313366
39626166353138646666633136363662393565336333393638626534636330313632326333353366 63656363346363633564313764383938373861336435646265613065616639333630333532303761
39353133666532306531343137353834353133633165613566323135313362333962303637663965 37373466346235356166623432333333653236383531623036626363346263613439636131646664
63383730663562646563333763356135613537666332393537663062653662623938353434323136 66353165613466616664653534313235633765323566313865383532303062623335353462393364
39663965616437653232623333363762616233316530303833376332396165616635336532653035 64376466356362306565663535363162663339643662323837626135313161346363313862353366
36306331643232336664363733376632323630616139353030343930343166623433616234616539 38666635373131653263643964326265626431663539653731376363323064616363643036386565
34393131303363626166383037336262323662393431356463616665343463363432356132313531 61383263616664353535643862646366613561653731316239643935653462356363383162623463
37653331336165626435343162663662386662613164336439636465363335386233383065393535 37623562616563653931663762376235333939356336633739323334336637633231323631643366
31396466636465336164383563326236356463393831363534656536616664613361346463613837 61613537633135366164636666613263613731316539666365303035626166623133373865303939
35366562623432353166303836353261313233663864626665663837336233653237373031393636 61353632623465386536616364303863386166623162303830646632613362663832353365643366
64343763386361626232633032316466373161666536313363633765653365656538343130326566 61346161363732646135623235316365313161323531343435323865303733343736313030323530
38396534323433343634333139333063633531343631316163346135643037323034633835363963 39646239626234656334626331393532656436346130643135656462353966393733363132666638
32343963653263663438666537653963376133633661393562623131636465386266616166366566 61346261323264363262316231303932393535306134323361633934353938333330666339376332
36343963623262656162303337366365616263376363366161373236323166353834616262393061 36623838623933643839303039326136376634333936303066306231626337353637336165373136
39393239303335623332346236356335393836636533386432653164656334613738393533623764 65336233393538663634653962323633626461306430393434393536333262666132333936313039
36363136353034633934323066323335626138353763333537353761303930623930353062373932 30363737323965616463353534393930643330643730316262313264616431633339646333373765
30656339663333373431633763366433366266316563393332613334633966633339633230303166 61623237623231313863353261633830363562633838663534343764663038666231313435663936
61346264386134623962316532343664386637303738333835343036633038323137323961323837 66643532306231363766323538653534356135393631363031326462336337376138316366613565
33376431316465373165663338623538636136343538666235333334373664323463326336336334 37353464383662383663306130336234323534346661633235643065313130303236313530323831
32303361393134653338646563643636356361366133633634393731343332313437643731366634 35633761343161396361653430313266353264373433616435393065366232313865306131373433
30386466333965356135303732663433316363376438623764653464343564353835626435333230 37633666396135656233343330666332666432333464346566646161373966623266363230633137
30646238393266643137373037326136306337306130343739633933626134643364326534386464 36663366306334313762333661306462386333656335653161396266393238313366613339313861
65303531623335663766623037663630376366333631363165633762616564396538643866313465 30663566663633323733343531346430313266336663356437383038623936316238343263316362
35343265663336303537663962643536653937373839313435383337353036313239653263323061 62363336626564333138356463316336336139303131353835623238343836356436306461616463
63653865656461363334646466396135663338383065646464656631636666643030376363633333 34353539626535663735663130643962323630386138383130313932303534346236643437336664
30333331636438656238326534656165396233633131306562336263653330396366343964313434 65656232653065323462356631363363313530363164366630303031383231343438346264666161
66653862386531306236336339353935653335616638643831393430613533643533626135313835 39633466353632666564623138353565356633396532373562393631343834346566386435343232
64313065373564323132663531626436623465663766663566643964353361303336386464386463 30386336333064393739626332633135346266373630363834636466346338386531666439366130
38373036613536386436373535323664333231663437643962373339653236393339653064363530 35623737353664666366373366333438613939353761386138636461313433663236663338346431
61393835343230356234376630613230326637636534336564383139366663663136306665363363 34663938663233376631333432663335663238303762626463366430656635333332343230383965
66373237373530303062333935633634313766316461666439666433616236346434623535343531 32326435346537343964643165383438323861386138633037333738393536633336393333626663
30383264303536653236363533383561613636303662663935303761353065336631353735376365 61303932616531386233666365653736323934646633626431626630633262376333356530386331
63343162646663623736336638306465666233343031656137393037623035613236373930633131 62366666353935313762346333663739373134373339383131653132656635346233343162366238
36366633656131633563336561323835343766356131343038643761663966656364376430366636 65313034396532623439616665613737386461626131653437303837636166636130303234633131
36316633633736353436666539303039383231333437653666313435616536626434653833376532 36333238393031646238396339346362333261393634626436343239633465623831323031613131
66376130653339643564646139633238643266316633363137313038363061386163613863313733 39613336306337346337633835326433653433633439333635376231333562313462646166313237
66633665613537303834393233376463343965343664343564343832376238383064373262336162 64336536363130346161373133326334363762303366383862373836613631663861393364316631
61313163303632373261383563363964353731363739306337333161333130656235363631343761 64346134373132313861653833386230363333343333666663653964336362356235396637346535
61353265633338336466623830396466646233333039323065333636303035363563373366396334 36316235663136303663663439623939383536306562346236623830363162336164333532313961
37366637306430396262376539653134396536643931643563386666623364346635363138373937 31633761326562633538316337313464373763663464663063613035373063623031663865326662
61613232386666343033383031363439373335396362643130656235653066376537373062333363 37353031336663393762313539626339663638666263336637653862303665656632646333363332
39373737316136303835616639363162363839376635666237353064323433373961326338393263 31656161313739366638343332356463363031623564376265333036633662666531313164383963
34343162336336623530653531663136366136353139343561623532633139366533386263316364 64353532373230333637383937626433623531353637323666626234636637373765623233376138
36306134356666343230643639303766343466353562643130363063343330393232663161306266 37383632643134626437323337643639386465393634643434386233343062393862363231613934
66336435356265396330366566373137323265623431386535396665313335666332616233383664 33366132383061333832346136626336366235613431373435306561356438616364373138633539
63656663363366613431366632306230633265306663336439306263646132626631363663643861 36323033303736633562363137373164663032346430623561353761316637353463613832393333
30373330653637623733653165336132643965623232383839623535326336643239333133313030 62306132356465366135373563373038306335646338346263653137306233353662313834626635
32326634643238333163383562393134623532363561393364616430366532633862396438306433 35636433363036626539303463653762326139396533306236636636336535353061343235303962
33653235303639383333633035656533633165653137326130643961393965346266383861616333 35363431666335393730663433316435666562663462356532376232376665363337303262303839
37306266393231336666343333643530353230383239343931303838623335303262313130616162 32656238363264626464383261313534356233393939323865663561316138666639386237646165
65383962613965646438323065303962663965333231323139303438343631396363666330653330 32666261653465333130333635336532366666623739666663303565353234663833386632653538
61323839333863343034356363366433313039383963303063346237366261363861643839396362 66643338306662363634306331633737393834383264393361633139663163316262316534653861
31346637303032356463303564303562313639643563396261326538353834363737323235646430 35376631396361333239633930616133656130326166643366636338306462303839376264376634
64343230336539663237306235623662333062396238383135616231383837366339376633663938 37323263643137326535383565633930623464386131613236306363336662383731636465373463
65313739333065383335323437396232323564363733333437363133613766653334396431333036 39376165323031633739313135656565313163656564376634666464353766373361316464376164
38333038656339363132346362333863643261376335666536306231316630303437306231646565 62323066363566303338363739653862613337386663366462653365376235303437306264656363
61666334623736373832613366376438323664653531393938353234303030633532653561313665 32343435613232613865663732613963303765633536373330366633393933643764636564316135
63613064663564646235373234326661303562646139323330343330343139633462646131353038 32313230396430363739363735623264376363383565393863323766353937333661326264313665
62663535393738626432633564663564653663393937656634666137646363643365353930373266 32343063353335613236393231333761653835343530333734373631343838386465393131656663
66373162373165653533383862363835346133313234326162393331666566316439633133316633 35373631356666663032633734333562613862383864303262653063356436663261633964343931
66393733373333653630363334353833363565336338613361396335326166643630623133303466 62366661656536626137396432343038343935363130623266383061363664383531613064613432
31663037663766356531663039386232316138393266333035613364316539353837653763616666 39623738376634646636663332346364623834303736613231313863636537643063346332623864
32376431383965633138666536386532663761343537646266643566373132343762383966326233 34303539633434643137326537623663353630396137326666616231323239323231343635656138
38373766353962323362366330383564636236363961333535313064313039343933346439396237 37626230636337363564303666616233383936323335383234626134346339396562336561356530
66616631633539623537633164363665393239643633663338393765336434653930356662656164 64373635326563366132376539646331383239626131366230373461626532353065386131343631
65366533633336313832633166376265376634613635363563643866323730343139306537323863 31343733343863343339616361623636643936653131363762343966323233323430616633626133
61373461363237653634666331366436356335306265643639373034666131626238336632346632 35313539653939363033313736316331336562373162333035313837643832393633333136343363
34613062346532656530626364343938636162383862653538353563363035346339623839663261 32303731326335393833633063643533303161623262366433623938393165366265633034353337
39663438396362383866663336643035653833336466663037313764326434373061626232646333 35383864396164623963626333396335356431383662356261303137343565633863376233616664
63336336383366333538613331303863356430373764363930363061383036343836386561663362 36373432333432373265613837633831306266323330616532396236643463333231326165343035
63663232373563343461306131333263376437623534346562626536376138393939373064333231 35363965306133636539626436343437366462626632633931666236373864303465663239396330
31303464656332383036616661656565313063346231623634356638326239343536316162613335 63613434306362303338343937396566356163653338343463393435336165336137336665383461
34663232326438333966313663336465373833646634353934323361343833373661633265313239 35393332613038336264663233383233333731633432386133326361303436663963383833306564
62656533656338376562323861396665353166623732623139353431336439386263363235316132 32646635646535313366386534313461383037373761333030396166346330353134363330373364
35373933613236616362396363323031633166633837383634313638656430373634383563616463 33666632323036363739313362333333363030336330306236383438636336663939353063643363
38353738636631626639636135363561623935646365316161376166653461356430326362623738 31616566313934353133363234653563303036383863356665393338363361343532313738616333
64386537373230303239356334313663616336393439623431616639643233353662306265373232 32643661316362326265343161623639626165313534346162306435303464363564323265323065
39343066353564316433653361333766363535636533626338386434646531653432313034393134 61663632393839383464626135356331666664373563363434323437323564383830393034363639
62653733313636653331356363396531313136346136303661656466333138363366616530306536 32343037653736636333336338636537363666323633333735383736633735306362633131343234
66373532626230313739306432363433313736316261383837393737356333326236323261613965 6262643530656461613363616637623037393230303130316338
36373064636138373134373530363533613031376362386334393464383062663663313234643432
64363232376137613231313862386561313131376133376466393630383737306666393738613265
66646236646632313832633366333335313239363763326464326361326263346636326332376336
31306230373963636135643235306537623930636164346366623862303838653238373030653035
35653634393532653566323063323761643738616532376262623163393461346334393034643862
62653835363236303732386365626464346131363231336431316233643132383566356531346237
66333933386539396366333565653938396564643464663165323535386262623532666237393630
65336262636630386633626335636231616332353965356335666362313562643738306263376230
63323938633237363431386639613830633765353232313236336233363736363566346237616637
61656234376562323162656432393665393930313736313439316261363264333865356139343233
63636638646332626365383839373765383864346532383236386266656635653333343032313231
65626233313634333533653436626134373632363565653230656161613963323334613262646530
66636331396130613934363939653238343463396639363731393363643830663362373439646337
63396435376637666563333165623338386337613638366339656561366538366635363037366531
32306235666231303762356665613738323336306465613531313964626631313731373963353964
32616632376534316532643531386635386330313866326265393736376538616431323238333562
36373238656361323336383466363563623333306634373164366134376635373262353533653330
38643233363737356564653834316435336439663562343366353866336662356138323566363061
63313336323435343861393164313130346438343862366530363233643266393964316265663535
65323739306536373331326338326132383265343939663336303534633537393637353639636561
64656432313636366434313465626562626638613232653230373530363234306537363665646633
33326163663830353166643662386637323438366334386533303664356631653561323032666265
61333165363636363634353461613039313362373863663739323231663230643635663466323430
37393431333733313134326231313234353930663365646637386639643535316362626232323430
32363631353565323663393235343336663930373439663861613661636433356366633065343935
61356636323039656230353264646166626633316430653162383638336265653865373536643036
35653166333765366231636163666638383262613432646334663430323565333538626665343763
32646663356565646362646261343436383039623635666439643762616463656361386631313637
61616164383734353634306633636338623837356230626263653161616664613266356432653335
30646434346436383565343138623264386630333832386134666463313936383364333364383232
39393066333666653734616463343530643537613437623766313237353033623662336137356534
35303635623232333230363362353137656235373539316163653863326666383237303235316164
34623138346261366238303037653764366537333561623135656236663435316565303931353939
34663932303239393836363663343735313632333639633733323564343039346436343935373430
66313863643361306161373634373738383462313831643161333230646435313261383534396464
39663466643864666433366531323866333935373833663661323833623734646265393035613966
62393165653135643737343333346232356638646437326664396466333063666135653338623266
34663133636164386164636434666231643163343930353863306538333337643762616661366366
63646336613433623862356365633563633235396337356535376335636633636563333738383061
33326136393530353964666639633638643433653736376637386638336561643061323635373565
65393836613638313165313262376166643561623131363836363531616232663333333063393039
35643938626132383439393761623165303730396365323665613663643961663466393937333731
30643662663034616631343336343236613437376362366234343436376563303466633030323465
64626536333465626430333336353038336539313531303933633466333633336364363961353861
31636135303332343733313637326461643264636236313331643438613365393733383764653432
65346533616130396233613863633331613638316462366364346465353234373531393137336165
36666336333036396262663661343962663763316531393765346536646236613331626139383230
32623665353463326633646466376232343333666465616633333033663031643262663732323230
36363439613934643037393562333237636262306330356638666235333361376136623462313736
33373163336134316563353031616339336234623738373230323335623130376265386130333235
64616261633232316131633062623163333135323737376462383539663137366539656261396238
31363232356361376264373863663362346535346136313834623761333037343435326339633735
33656465376264326334356365346437343062343631663430346561656531653662646530316133
64396563376263306533306565623163316238326264306330393465333737303062363030343662
65333633643635643737323231343664613735336230393835346132613331366266336434623937
65616366633734373434333837326465613862633930626435623165633964313732373936346434
30643161633238343435623538316134616161313461616538653161383032313038666638376432
64646564626231656664306235633031356564373432626561386135653136313062383861323130
34393331316439613363636631666262343334393739303631633936623964343938373334623230
39343031663565333431333731363966623730666335346164623662373265643732306662393663
39336137326533643533623865313934336464633634613436616438373531636562313762383666
37386365333361626362

View file

@ -1,69 +0,0 @@
---
dhcpd__omapi_key:
algorithm: hmac-sha512
secret: 99XuJO0ofX3VAnWWlyixWbQ5YTagPfgxyh14IbLNBb3/JzEklkWopvQdj/PXVYbfb/sRyFJBhLexPag4dLh7PA==
dhcpd__interfaces:
- client0
- client1
- client2
- client3
- client4
dhcpd__dns_servers:
- 10.128.10.3
- 10.128.10.103
dhcpd__domain_search:
- isp.auro.re.
- auro.re.
dhcpd__subnets:
- network: 100.64.0.0/27
routers:
- 100.64.0.1
start: 100.64.0.4
end: 100.64.0.30
domain_name: client0.isp.auro.re
failover: true
- network: 100.64.0.32/27
routers:
- 100.64.0.31
start: 100.64.0.33
end: 100.64.0.63
domain_name: client1.isp.auro.re
failover: true
- network: 100.64.0.64/27
routers:
- 100.64.0.65
start: 100.64.0.67
end: 100.64.0.95
domain_name: client2.isp.auro.re
failover: true
- network: 100.64.0.96/27
routers:
- 100.64.0.97
start: 100.64.0.99
end: 100.64.0.127
domain_name: client3.isp.auro.re
failover: true
- network: 100.64.0.128/27
routers:
- 100.64.0.129
start: 100.64.0.131
end: 100.64.0.159
domain_name: client4.isp.auro.re
dhcpd__failover:
dhcp-1.isp.infra.auro.re: 10.210.1.1
dhcp-2.isp.infra.auro.re: 10.210.1.2
dhcpd__failover_address: "{{ dhcpd__failover[inventory_hostname] }}"
dhcpd__failover_peer_address: "{{ dhcpd__failover
| dict2items
| selectattr('key', '!=',
inventory_hostname)
| map(attribute='value')
| first }}"
...

View file

@ -1,24 +0,0 @@
---
kresd__listen:
- address: 0.0.0.0
port: 53
kind: dns
- address: "::"
port: 53
kind: dns
- address: 0.0.0.0
port: 853
kind: tls
- address: "::"
port: 853
kind: tls
- address: 0.0.0.0
port: 8453
kind: webmgmt
- address: "::"
port: 8453
kind: webmgmt
tls: false
kresd__cache_size: 512
...

View file

@ -1,21 +0,0 @@
---
keepalived__virtual_router_id: 81
keepalived__interface: back0
keepalived__virtual_addresses:
crans0:
- 185.230.79.254/29
- 2a0c:700:28::2/64
- fe80::1/10
zayo0:
- 2001:1b48:2:103::d7:2/126
- 83.167.52.69/31
- fe80::1/10
oti0:
- 2a00:a4c0:100c:1::b/127
- 77.95.70.11/31
- fe80::1/10
keepalived__main: "{{ inventory_hostname_short == 'edge-1' }}"
...

View file

@ -1,86 +0,0 @@
---
bird__kernel:
kernel:
learn: true
import: accept
export: accept
bird__ospf:
limits:
import: 4000
export: 4000
import: accept
export:
protos: kernel
areas:
0:
broadcast:
- back0
stub:
- monit0
- wifi0
- int0
- sw0
- bmc0
- pve0
- isp0
- ext0
- pub0
- th30
- ups0
1:
broadcast:
- vpn0
bird__bgp:
edge1:
local:
address: "{{ bird__bgp_addr.back }}"
as: "{{ bird__as.aurore }}"
neighbor:
address:
- 2a09:6840:203::1:1
- 10.203.1.1
as: "{{ bird__as.aurore }}"
import:
- pref_src: "{{ bird__pref_src_addr }}"
- accept
export: reject
edge2:
local:
address: "{{ bird__bgp_addr.back }}"
as: "{{ bird__as.aurore }}"
neighbor:
address:
- 2a09:6840:203::1:2
- 10.203.1.2
as: "{{ bird__as.aurore }}"
import:
- pref_src: "{{ bird__pref_src_addr }}"
- accept
export: reject
#wg1:
#local:
#address: "{{ bird__bgp_addr.vpn }}"
#as: "{{ bird__as.aurore }}"
#neighbor:
#address:
# - 2a09:6840:213::1:3
# - 10.213.1.3
#as: "{{ bird__as.aurore }}"
#rr_cluster_client: 10.203.1.1
#import: reject
#export: accept
#wg2:
#local:
#address: "{{ bird__bgp_addr.vpn }}"
#as: "{{ bird__as.aurore }}"
#neighbor:
#address:
# - 2a09:6840:213::1:4
# - 10.203.1.4
#as: "{{ bird__as.aurore }}"
#rr_cluster_client: 10.203.1.1
#import: reject
#export: accept
...

View file

@ -1,457 +0,0 @@
---
firewall__zones:
adm-legacy:
addrs:
- 2a09:6840:128::/64
- 10.128.0.0/16
ups:
addrs:
- 2a09:6840:201::/64
- 10.201.0.0/16
back:
addrs:
- 2a09:6840:203::/64
- 10.203.0.0/16
monit:
addrs:
- 2a09:6840:204::/64
- 10.204.0.0/16
wifi:
addrs:
- 2a09:6840:205::/64
- 10.205.0.0/16
int:
addrs:
- 2a09:6840:206::/64
- 10.206.0.0/16
sw:
addrs:
- 2a09:6840:207::/64
- 10.207.0.0/16
bmc:
addrs:
- 2a09:6840:208::/64
- 10.208.0.0/16
pve:
addrs:
- 2a09:6840:209::/64
- 10.209.0.0/16
isp:
addrs:
- 2a09:6840:210::/64
- 10.210.0.0/16
ext:
addrs:
- 2a09:6840:211::/64
- 10.211.0.0/16
pub:
addrs:
- 2a09:6840:215::/64
- 45.66.111.192/27
vpn-clients:
addrs:
- 2a09:6840:212::/64
- 10.212.0.0/16
vpn:
addrs:
- 2a09:6840:213::/64
- 10.213.0.0/16
infra:
zones:
- adm-legacy
- ups
- back
- monit
- wifi
- int
- sw
- bmc
- pve
- isp
- ext
- pub
- vpn
internet:
negate: true
addrs:
- 2a09:6840::/32
- 2a09:6841::/32
- 2a09:6842::/32
- 45.66.108.0/22
- 10.0.0.0/8
- 100.64.0.0/10
prometheus.int:
addrs:
- 2a09:6840:204::1:1
- 10.204.1.1
- 2a09:6840:204::1:2
- 10.204.1.2
grafana.adm:
addrs:
- 2a09:6840:128::98
- 10.128.0.98
re2o-ldap.adm:
addrs:
- 2a09:6840:128::21
- 10.128.0.21
ldap-replica-edc.adm:
addrs:
- 2a09:6840:128::4:249
- 10.128.4.249
nextcloud.adm:
addrs:
- 2a09:6840:128::58
- 10.128.0.58
dns.int:
addrs:
- 2a09:6840:206::1:1
- 10.206.1.1
- 2a09:6840:206::1:2
- 10.206.1.2
ntp.int:
addrs:
- 2a09:6840:206::1:5
- 10.206.1.5
- 2a09:6840:206::1:6
- 10.206.1.6
docker-ovh.adm:
addrs:
- 2a09:6840:128::150
- 10.128.0.150
mx.test:
addrs:
- 2a09:6840:211::1:5
- 45.66.111.208
- 10.128.1.5
proxy.pub:
addrs:
- 2a09:6840:215::1:1
- 45.66.111.206
collabora.ext:
addrs:
- 2a09:6840:211::1:1
- 10.211.1.1
grafana.ext:
addrs:
- 2a09:6840:211::1:7
- 10.211.1.7
ns-1.pub:
addrs:
- 2a09:6840:215::1:2
- 45.66.111.205
ns-2.pub:
addrs:
- 2a09:6840:215::1:3
- 45.66.111.207
ns-master.int:
addrs:
- 2a09:6840:206::1:7
- 10.206.1.7
tor.pub:
addrs:
- 45.66.111.215
- 2a09:6840:215::1:215
jitsi.pub:
addrs:
- 45.66.111.216
- 2a09:6840:215::1:216
log-1.int:
addrs:
- 10.206.1.9
- 2a09:6840:206::1:9
log-2.int:
addrs:
- 10.206.1.10
- 2a09:6840:206::1:10
firewall__input:
- iif:
- back0 # FIXME link-local
- vpn0
verdict: accept
- src:
- back
- vpn
verdict: accept
- src: monit
protocols:
tcp:
dport:
- 9100
- 9700
verdict: accept
- src: monit
protocols:
tcp:
dport: 9324
verdict: accept
- protocols:
icmp: true
verdict: accept
- protocols:
tcp:
dport: 22
verdict: accept
- verdict: drop
firewall__output:
- verdict: accept
firewall__forward:
- src: back
dst: infra
verdict: accept
- src: infra # FIXME: temporary
dst: internet
verdict: accept
- src: monit
dst: bmc
protocols:
icmp: true
verdict: accept
- dst: mx.test
protocols:
icmp: true
verdict: accept
- dst: mx.test
protocols:
tcp:
dport:
- 25
- 465
- 993
verdict: accept
# NS
- dst:
- ns-1.pub
- ns-2.pub
protocols:
tcp:
dport: 53
verdict: accept
- dst:
- ns-1.pub
- ns-2.pub
protocols:
udp:
dport: 53
verdict: accept
- src:
- ns-1.pub
- ns-2.pub
dst: ns-master.int
protocols:
udp:
dport: 53
verdict: accept
- src:
- ns-1.pub
- ns-2.pub
dst: ns-master.int
protocols:
tcp:
dport: 53
verdict: accept
# SNMP
- src: monit
dst:
- sw
- ups
- bmc
protocols:
udp:
dport: 161
verdict: accept
- src: monit
dst:
- sw
- ups
- bmc
protocols:
tcp:
dport: 161
verdict: accept
# Alertmanager
- src: monit
dst: docker-ovh.adm
protocols:
tcp:
dport: 9093
verdict: accept
- src: adm-legacy
dst: bmc
verdict: accept
# Prometheus for Grafana
- src: grafana.adm
dst: prometheus.int
protocols:
tcp:
dport: 9090
verdict: accept
# Prometheus for Grafana nixos
- src: grafana.ext
dst: prometheus.int
protocols:
tcp:
dport: 9090
verdict: accept
- src: grafana.ext
dst: re2o-ldap.adm
protocols:
tcp:
dport: 389
verdict: accept
- src: grafana.ext
dst: ldap-replica-edc.adm
protocols:
tcp:
dport: 389
verdict: accept
# Admin VPN clients
- src: vpn-clients
dst: infra
verdict: accept
# Prometheus node
- src: monit
dst: infra
protocols:
tcp:
dport:
- 9100
- 9700
verdict: accept
# Prometheus bird
- src: monit
dst: back
protocols:
tcp:
dport: 9324
verdict: accept
# Prometheus kresd
- src: monit
dst: dns.int
protocols:
tcp:
dport: 8453
verdict: accept
# Allow DNS from infra to dns-{1,2}
- src: infra
dst: dns.int
protocols:
udp:
dport: 53
verdict: accept
- src: infra
dst: dns.int
protocols:
tcp:
dport: 53
verdict: accept
# Allow NTP from infra to ntp-{1,2}
- src:
- infra
- pub
dst: ntp.int
protocols:
udp:
dport: 123
verdict: accept
# Admin Wireguard
- dst:
- 2a09:6840:211::1:1
- 45.66.111.204
- 10.211.1.1
protocols:
udp:
dport: 5121
verdict: accept
# Proxy web
- dst:
- jitsi.pub
- proxy.pub
protocols:
tcp:
dport:
- 80
- 443
verdict: accept
- src: proxy.pub
dst: grafana.adm
protocols:
tcp:
dport: 3000
verdict: accept
- src: proxy.pub
dst: grafana.ext
protocols:
tcp:
dport: 80
verdict: accept
- src: proxy.pub
dst: nextcloud.adm
protocols:
tcp:
dport: 8080
- src: proxy.pub
dst: adm-legacy
protocols:
tcp:
dport:
- 80
- 443
verdict: accept
# ICMP to public vlan
- dst: pub
protocols:
icmp: true
verdict: accept
# Proxy -> Collabora
- src: proxy.pub
dst: collabora.ext
protocols:
tcp:
dport: 9980
verdict: accept
# Collabora -> Proxy
- src: collabora.ext
dst: proxy.pub
protocols:
tcp:
dport:
- 80
- 443
verdict: accept
# Tor: SSH
- dst: tor.pub
protocols:
tcp:
dport:
- 22
- 4444
verdict: accept
# Jitsi UDP
- dst: jitsi.pub
protocols:
udp:
dport:
- 3478
- 10000
# Jitsi TCP
- dst: jitsi.pub
protocols:
tcp:
dport:
- 5349
firewall__nat:
- src: 10.0.0.0/8
dst: internet
protocols: null
snat:
addr: 45.66.111.200/30
#- src: monit
# dst: adm-legacy
# protocols: null
# snat:
# addr: 10.203.1.3/32
...

View file

@ -1,59 +0,0 @@
---
keepalived__virtual_router_id: 82
keepalived__interface: back0
keepalived__virtual_addresses:
ups0:
- 10.201.0.1/16
- 2a09:6840:201::1/64
- fe80::1/10
monit0:
- 10.204.0.1/16
- 2a09:6840:204::1/64
- fe80::1/10
wifi0:
- 10.205.0.1/16
- 2a09:6840:205::1/64
- fe80::1/10
int0:
- 10.206.0.1/16
- 2a09:6840:206::1/64
- fe80::1/10
sw0:
- 10.207.0.1/16
- 2a09:6840:207::1/64
- fe80::1/10
bmc0:
- 10.208.0.1/16
- 2a09:6840:208::1/64
- fe80::1/10
pve0:
- 10.209.0.1/16
- 2a09:6840:209::1/64
- fe80::1/10
isp0:
- 10.210.0.1/16
- 2a09:6840:210::1/64
- fe80::1/10
ext0:
- 10.211.0.1/16
- 2a09:6840:211::1/64
- fe80::1/10
th30:
- 10.126.0.6/24
- fe80::1/10
pub0:
- 2a09:6840:215::1/64
- 45.66.111.204/27
- fe80::1/10
#keepalived__virtual_routes:
# ext0:
# - 45.66.111.204/30
keepalived__virtual_blackholes:
- 45.66.111.200/30 # NAT
keepalived__main: "{{ inventory_hostname_short == 'infra-1' }}"
...

View file

@ -1,53 +0,0 @@
---
bird__kernel:
kernel:
learn: true
import: accept
export: accept
bird__ospf:
limits:
import: 4000
export: 4000
import: accept
export:
protos: kernel
areas:
0:
broadcast:
- back0
stub:
- client0
- client1
- client2
- client3
- client4
bird__bgp:
edge1:
local:
address: "{{ bird__bgp_addr.back }}"
as: "{{ bird__as.aurore }}"
neighbor:
address:
- 2a09:6840:203::1:1
- 10.203.1.1
as: "{{ bird__as.aurore }}"
import:
- pref_src: "{{ bird__pref_src_addr }}"
- accept
export: reject
bird__radv:
rdnss:
- 2a09:6840:206::1:1
- 2a09:6840:206::1:2
interfaces:
client0:
max_interval: 5
prefixes:
- 2a09:6841::/64
dnssl: client0.isp.auro.re
domain_search:
- auro.re
...

View file

@ -1,40 +0,0 @@
---
firewall__zones:
internet:
negate: true
addrs:
- 2a09:6840::/32
- 2a09:6841::/32
- 2a09:6842::/32
- 45.66.108.0/22
- 10.0.0.0/8
- 100.64.0.0/10
clients:
addrs:
- 100.64.0.0/10
non_clients:
negate: true
zones: clients
allowed_clients:
file:
path: /var/run/firewall/allowed_clients.yml
default: []
firewall__input:
- verdict: accept
firewall__output:
- verdict: accept
firewall__forward:
- src: allowed_clients
dst: non_clients
verdict: accept
firewall__nat:
- src: clients
dst: internet
protocols: null
snat:
addr: 45.66.111.220
...

View file

@ -1,32 +0,0 @@
---
keepalived__virtual_router_id: 80
keepalived__interface: back0
keepalived__virtual_addresses:
client0:
- 100.64.0.1/27
- 2a09:6841::1/56
- fe80::1/10
client1:
- 100.64.0.33/27
- 2a09:6841:0:1::1/64
- fe80::1/10
client2:
- 100.64.0.65/27
- 2a09:6841:0:2::1/64
- fe80::1/10
client3:
- 100.64.0.97/27
- 2a09:6841:0:3::1/64
- fe80::1/10
client4:
- 100.64.0.129/27
- 2a09:6841:0:4::1/64
- fe80::1/10
keepalived__virtual_blackholes:
- 45.66.111.220/32
keepalived__main: "{{ inventory_hostname_short == 'isp-1' }}"
...

View file

@ -1,71 +0,0 @@
---
knotd__listen:
- address: 0.0.0.0
- address: "::"
knotd__keys:
xfr:
algorithm: hmac-sha512
secret: "{{ vault_knotd_xfr_key }}"
knotd__remotes:
xfr-master:
address: 2a09:6840:206::1:7
key: xfr
knotd__acl:
notify-master:
address:
- 2a09:6840:206::1:7
- 10.206.1.7
key: xfr
action: notify
knotd__queryacl:
local:
addresses:
- 10.0.0.0/8
knotd__zones:
auro.re:
dnssec_validation: true
acl:
- notify-master
master: xfr-master
test.auro.re:
dnssec_validation: true
acl:
- notify-master
master: xfr-master
infra.auro.re:
dnssec_validation: true
acl:
- notify-master
#queryacl: local
master: xfr-master
108.66.45.in-addr.arpa:
dnssec_validation: false
acl:
- notify-master
master: xfr-master
109.66.45.in-addr.arpa:
dnssec_validation: false
acl:
- notify-master
master: xfr-master
110.66.45.in-addr.arpa:
dnssec_validation: false
acl:
- notify-master
master: xfr-master
111.66.45.in-addr.arpa:
dnssec_validation: false
acl:
- notify-master
master: xfr-master
0.4.8.6.9.0.a.2.ip6.arpa:
dnssec_validation: false
acl:
- notify-master
master: xfr-master
...

View file

@ -1,13 +0,0 @@
---
chronyd__allow_networks:
- 2a09:6840::/32
- 10.0.0.0/8
chronyd__pools:
- 0.pool.ntp.org
- 1.pool.ntp.org
- 2.pool.ntp.org
- 3.pool.ntp.org
chronyd__local_stratum: 10
...

View file

@ -1,144 +0,0 @@
---
prometheus__scraping_bird:
targets: "{{ groups.router }}"
address:
port: 9324
prometheus__rules_bird:
- record: bird:protocol_up:bgp_all
expr:
label_replace(
bird_protocol_up{proto="BGP"},
"group", "$1",
"instance", "^([^0-9\\.]+)-[0-9]+.*"
)
# FIXME: sessions en cours d'installation, pas encore monitorées
- record: bird:protocol_up:bgp
expr:
bird:protocol_up:bgp_all
unless bird:protocol_up:bgp_all{
group="edge",
name=~"^(viarezo|isp[12]|rezel)[46]$"
}
# Sessions qui ne sont volontairement pas redondées
# au sein d'un groupe
- record: bird:protocol_up:bgp:non_redundant
expr:
bird:protocol_up:bgp{
group="edge",
name=~"^(oti|crans|legacy|edge)[46]$"
}
# Sessions qui le sont
- record: bird:protocol_up:bgp:redundant
expr:
bird:protocol_up:bgp
unless
bird:protocol_up:bgp:non_redundant
- alert: BirdBGPRedundancyDegraded
expr:
(
count by (group, name) (
bird:protocol_up:bgp:redundant{state="Established"}
) + (
count by (group, name) (
bird:protocol_up:bgp:redundant{state!="Established"} * 0
)
)
) < 2
for: 0m
labels:
severity: warning
annotations:
Session: !unsafe "{{ $labels.name }}"
Count: !unsafe "{{ $value }}"
Group: !unsafe "{{ $labels.group }}"
- alert: BirdBGPDown
expr:
(
count by (group, name) (
bird:protocol_up:bgp{state="Established"}
) + (
count by (group, name) (
bird:protocol_up:bgp{state!="Established"} * 0
)
)
) == 0
for: 0m
labels:
severity: critical
annotations:
Session: !unsafe "{{ $labels.name }}"
Group: !unsafe "{{ $labels.group }}"
# TODO: warning pour redondant ?
- alert: BirdBGPNoExportedPrefixRedundant
expr:
bird_protocol_prefix_export_count{
export_filter!="REJECT",
} * on (instance, name) group_left (group) (
bird:protocol_up:bgp:redundant{state="Established"}
) == 0
for: 0m
labels:
severity: critical
annotations:
Session: !unsafe "{{ $labels.name }}"
Group: !unsafe "{{ $labels.group }}"
- alert: BirdBGPNoImportedPrefixRedundant
expr:
bird_protocol_prefix_import_count{
import_filter!="REJECT",
} * on (instance, name) group_left (group) (
bird:protocol_up:bgp:redundant{state="Established"}
) == 0
for: 0m
labels:
severity: critical
annotations:
Session: !unsafe "{{ $labels.name }}"
Group: !unsafe "{{ $labels.group }}"
- alert: BirdBGPNoExportedPrefixNonRedundant
expr:
sum by (group) (
bird_protocol_prefix_export_count{
export_filter!="REJECT",
} * on (instance, name) group_left (group) (
bird:protocol_up:bgp:non_redundant{state="Established"}
)
) == 0
for: 0m
labels:
severity: critical
annotations:
Session: !unsafe "{{ $labels.name }}"
Group: !unsafe "{{ $labels.group }}"
- alert: BirdBGPNoImportedPrefixNonRedundant
expr:
sum by (group) (
bird_protocol_prefix_import_count{
import_filter!="REJECT",
} * on (instance, name) group_left (group) (
bird:protocol_up:bgp:non_redundant{state="Established"}
)
) == 0
for: 0m
labels:
severity: critical
annotations:
Session: !unsafe "{{ $labels.name }}"
Group: !unsafe "{{ $labels.group }}"
- alert: BirdOSPFNeighboursChange
expr:
changes(bird_ospf_neighbor_count[5m]) > 0
or changes(bird_ospfv3_neighbor_count[5m]) > 0
for: 0m
labels:
severity: warning
- alert: BirdOSPFDown
expr:
bird_ospf_running == 0
for: 0m
labels:
severity: critical
annotations:
Instance: !unsafe "{{ $labels.name }}"
...

View file

@ -1,11 +0,0 @@
---
prometheus__rules_common:
- alert: CollectorDown
expr:
up == 0
for: 3m
labels:
severity: critical
annotations:
Job: !unsafe "{{ $labels.job }}"
...

View file

@ -1,11 +0,0 @@
---
prometheus__scraping_eaton:
targets: "{{ groups.eaton_ups }}"
address: 127.0.0.1:9116
path: /snmp
params:
module:
- eaton
prometheus__rules_eaton: {}
...

View file

@ -1,13 +0,0 @@
---
prometheus__scraping_ilo:
targets: "{{ groups.ilo }}"
address: 127.0.0.1:9116
path: /snmp
timeout: 180s
interval: 180s
params:
module:
- ilo
prometheus__rules_ilo: {}
...

View file

@ -1,6 +0,0 @@
---
prometheus__scraping_jitsi:
targets: ["jitsi.pub.infra.auro.re"]
address:
port: 9700
...

View file

@ -1,23 +0,0 @@
---
prometheus__rules_keepalived:
- alert: KeepalivedVrrpFault
expr:
keepalived_vrrp_state{state="fault"} > 0
for: 0m
labels:
severity: critical
annotations:
Instance: !unsafe "{{ $labels.instance }}"
- alert: KeepalivedMasterChange
expr:
changes(
keepalived_vrrp_state{
keepalived_vvrp_state="master"
}[1m]
) > 0
for: 0m
labels:
severity: warning
annotations:
Instance: !unsafe "{{ $labels.instance }}"
...

View file

@ -1,6 +0,0 @@
---
prometheus__scraping_kresd:
targets: "{{ groups.dns }}"
address:
port: 8453
...

View file

@ -1,28 +0,0 @@
---
prometheus__alertmanager_targets:
- docker-ovh.adm.auro.re:9093
prometheus__tsdb_retention_time: 90d
prometheus__scraping:
node: "{{ prometheus__scraping_node }}"
prometheus: "{{ prometheus__scraping_prometheus }}"
kresd: "{{ prometheus__scraping_kresd }}"
bird: "{{ prometheus__scraping_bird }}"
quanta: "{{ prometheus__scraping_quanta }}"
ilo: "{{ prometheus__scraping_ilo }}"
snmp: "{{ prometheus__scraping_snmp }}"
eaton: "{{ prometheus__scraping_eaton }}"
jitsi: "{{ prometheus__scraping_jitsi }}"
prometheus__rules:
common: "{{ prometheus__rules_common }}"
switch: "{{ prometheus__rules_switch }}"
prometheus: "{{ prometheus__rules_prometheus }}"
node: "{{ prometheus__rules_node }}"
keepalived: "{{ prometheus__rules_keepalived }}"
quanta: "{{ prometheus__rules_quanta }}"
#ilo: "{{ prometheus__rules_ilo }}"
bird: "{{ prometheus__rules_bird }}"
#eaton: "{{ prometheus__rules_eaton }}"
...

View file

@ -1,200 +0,0 @@
---
prometheus__scraping_node:
targets: "{{ groups.vm + groups.pve }}"
address:
port: 9100
prometheus__rules_node:
- alert: OutOfMemory
expr:
(
node_memory_MemFree_bytes
+ node_memory_Cached_bytes
+ node_memory_Buffers_bytes
) / node_memory_MemTotal_bytes < 0.1
for: 5m
labels:
severity: warning
annotations:
FreeMemory: !unsafe "{{ $value | humanizePercentage }}"
- alert: HostSwapIsFillingUp
expr:
(
1 - (
node_memory_SwapFree_bytes
/ node_memory_SwapTotal_bytes
)
) >= 0.5
for: 3m
labels:
severity: critical
annotations:
UsedSwap: !unsafe "{{ $value | humanizePercentage }}"
- alert: HostPhysicalComponentTooHot
expr:
node_hwmon_temp_celsius > 79
for: 3m
labels:
severity: critical
annotations:
Temperature: !unsafe "{{ $value | humanize }} °C"
Chip: !unsafe "{{ $labels.chip }}"
Sensor: !unsafe "{{ $labels.sensor }}"
- alert: HostNodeOvertemperatureAlarm
expr:
node_hwmon_temp_crit_alarm_celsius == 1
for: 0m
labels:
severity: critical
annotations:
Chip: !unsafe "{{ $labels.chip }}"
Sensor: !unsafe "{{ $labels.sensor }}"
- alert: HostRaidArrayGotInactive
expr:
node_md_state{state="inactive"} > 0
for: 0m
labels:
severity: critical
annotations:
Device: !unsafe "{{ $labels.device }}"
- alert: HostRaidDiskFailure
expr:
node_md_disks{state="failed"} > 0
for: 0m
labels:
severity: critical
annotations:
severity: !unsafe "{{ $labels.md_device }}"
- alert: HostOomKillDetected
expr:
increase(node_vmstat_oom_kill[1m]) > 0
for: 0m
labels:
severity: warning
annotations:
PID: !unsafe "{{ $value }}"
- alert: HostEdacCorrectableErrorsDetected
expr:
increase(node_edac_correctable_errors_total[1m]) > 0
for: 0m
labels:
severity: warning
annotations:
CorrectedErrors: !unsafe "{{ $value }}"
- alert: HostEdacUncorrectableErrorsDetected
expr:
increase(node_edac_uncorrectable_errors_total[1m]) > 0
for: 0m
labels:
severity: warning
annotations:
DetectedErrors: !unsafe "{{ $value }}"
- alert: OutOfDiskSpace
expr:
(
node_filesystem_free_bytes
/ node_filesystem_size_bytes < 0.1
)
and on (instance, device, mountpoint) (
node_filesystem_readonly
) == 0
for: 5m
labels:
severity: critical
annotations:
Mountpoint: !unsafe "{{ $labels.mountpoint }}"
FreeSpace: !unsafe "{{ $value | humanizePercentage }}"
- alert: HostConntrackLimit
expr:
(
node_nf_conntrack_entries
/ node_nf_conntrack_entries_limit
) > 0.8
for: 5m
labels:
severity: warning
annotations:
Filled: !unsafe "{{ $value | humanizePercentage }}"
- alert: HostClockSkew
expr:
(
node_timex_offset_seconds > 0.05
and deriv(node_timex_offset_seconds[5m]) >= 0
) or (
node_timex_offset_seconds < -0.05
and deriv(node_timex_offset_seconds[5m]) <= 0
)
for: 2m
labels:
severity: warning
- alert: HostClockNotSynchronising
expr:
min_over_time(node_timex_sync_status[1m]) == 0
and node_timex_maxerror_seconds >= 16
for: 2m
labels:
severity: warning
- alert: HostRequiresReboot
expr:
node_reboot_required > 0
for: 5m
labels:
severity: warning
- alert: OutOfInodes
expr:
node_filesystem_files_free
/ node_filesystem_files < 0.1
for: 3m
labels:
severity: warning
annotations:
Mountpoint: !unsafe "{{ $labels.mountpoint }}"
FreeInodes: !unsafe "{{ $value | humanizePercentage }}"
- alert: CpuUsage
expr:
(
1 - avg by (instance) (
irate(node_cpu_seconds_total{mode="idle"}[5m])
)
) > 0.75
for: 10m
labels:
severity: warning
annotations:
Usage: !unsafe "{{ $value | humanizePercentage }}"
- alert: SystemdServiceFailed
expr:
node_systemd_unit_state{state="failed"} == 1
for: 10m
labels:
severity: warning
annotations:
Service: !unsafe "{{ $labels.name }}"
- alert: LoadUsage
expr:
node_load1 > 5
for: 2m
labels:
severity: warning
annotations:
Load1: !unsafe "{{ $value | humanize }}"
- alert: UnhealthyDisk
expr:
smartmon_device_smart_healthy < 1
for: 10m
labels:
severity: critical
annotations:
Disk: !unsafe "{{ $labels.disk }}"
- alert: HostCpuStealNoisyNeighbor
expr:
avg by (instance) (
rate(node_cpu_seconds_total{mode="steal"}[5m])
) > 0.1
for: 5m
labels:
severity: warning
annotations:
Disk: !unsafe "{{ $labels.disk }}"
Steal: !unsafe "{{ $value | humanizePercentage }}"
...

View file

@ -1,14 +0,0 @@
---
prometheus__scraping_prometheus:
targets: "{{ groups.prom }}"
address:
port: 9090
prometheus__rules_prometheus:
- alert: PrometheusTsdbCompactionFailed
expr:
increase(prometheus_tsdb_compactions_failed_total[1m]) > 0
for: 0m
labels:
severity: critical
...

View file

@ -1,98 +0,0 @@
---
prometheus__scraping_quanta:
targets: "{{ groups.quanta }}"
address: 127.0.0.1:9116
path: /snmp
timeout: 180s
interval: 180s
params:
module:
- quanta
prometheus__rules_quanta:
- alert: QuantaQueueOverflow
expr:
snAgGblQueueOverflow == 1
for: 0m
labels:
severity: critical
- alert: QuantaCpuUsage
expr:
snAgGblCpuUtil1MinAvg > 50
for: 5m
labels:
severity: warning
annotations:
Usage: !unsafe "{{ $value }} %"
- alert: QuantaCpuUsage
expr:
snAgGblCpuUtil1MinAvg > 80
for: 5m
labels:
severity: critical
annotations:
Usage: !unsafe "{{ $value }} %"
- alert: QuantaMemoryUsage
expr:
100 * (1 - (snAgGblDynMemFree / snAgGblDynMemTotal)) > 50
for: 5m
labels:
severity: warning
annotations:
UsedMemory: !unsafe "{{ $value }} %"
- alert: QuantaMemoryUsage
expr:
100 * (1 - (snAgGblDynMemFree / snAgGblDynMemTotal)) > 80
for: 5m
labels:
severity: alert
annotations:
UsedMemory: !unsafe "{{ $value }} %"
- alert: QuantaFanHealth
expr:
snChasFanOperStatus{snChasFanOperStatus="normal"} == 0
for: 0m
labels:
severity: critical
annotations:
Description: !unsafe "{{ $labels.shChasFanDescription }}"
Status: !unsafe "{{ $labels.snChasFanOperStatus }}"
- alert: QuantaMissingIntakeTemp
expr:
count by (instance) (
snAgentTempValue
) - count by (instance) (
snAgentTempValue{snAgentTempSensorDescr=~".*Intake.*"}
) == 0
for: 0m
labels:
severity: critical
- alert: QuantaIntakeTemp
expr:
0.5 * snAgentTempValue{snAgentTempSensorDescr=~".*Intake.*"} > 60
for: 10m
keep_firing_for: 30m
labels:
severity: warning
annotations:
Temperature: !unsafe "{{ $value }} °C"
Description: !unsafe "{{ $labels.snAgentTempSensorDescr }}"
- alert: QuantaIntakeTemp
expr:
0.5 * snAgentTempValue{snAgentTempSensorDescr=~".*Intake.*"} > 70
for: 10m
keep_firing_for: 30m
labels:
severity: critical
annotations:
Temperature: !unsafe "{{ $value }} °C"
Description: !unsafe "{{ $labels.snAgentTempSensorDescr }}"
- alert: QuantaPowerRedundancyFailure
expr:
count by (instance) (
snChasPwrSupplyOperStatus{snChasPwrSupplyOperStatus="normal"}
) < 2
for: 0m
labels:
severity: warning
...

View file

@ -1,6 +0,0 @@
---
prometheus__scraping_snmp:
targets: "{{ groups.prom }}"
address:
port: 9116
...

View file

@ -1,91 +0,0 @@
---
prometheus__rules_switch:
- alert: SwitchPromiscuousChange
expr:
changes(ifPromiscuousMode[5m]) > 0
for: 0m
labels:
severity: warning
annotations:
Interface: !unsafe "{{ $labels.ifName }}
{{ if $labels.ifAlias }}- {{ $labels.ifAlias }}{{ end }}"
- alert: SwitchInterfaceUpChange
expr:
changes(ifOperStatus{ifOperStatus="up"}[5m]) > 0
for: 0m
labels:
severity: warning
annotations:
Interface: !unsafe "{{ $labels.ifName }}
{{ if $labels.ifAlias }}- {{ $labels.ifAlias }}{{ end }}"
- alert: SwitchInErrors
expr:
irate(ifInErrors[5m]) / (
irate(ifInUcastPkts[5m])
+ irate(ifInNUcastPkts[5m])
) > 0.0001
for: 0m
labels:
severity: warning
annotations:
ErrorRate: !unsafe "{{ $value | humanizePercentage }}"
Interface: !unsafe "{{ $labels.ifName }}
{{ if $labels.ifAlias }}- {{ $labels.ifAlias }}{{ end }}"
- alert: SwitchOutErrors
expr:
irate(ifOutErrors[5m]) / (
irate(ifOutUcastPkts[5m])
+ irate(ifOutNUcastPkts[5m])
) > 0.0001
for: 0m
labels:
severity: warning
annotations:
ErrorRate: !unsafe "{{ $value | humanizePercentage }}"
Interface: !unsafe "{{ $labels.ifName }}
{{ if $labels.ifAlias }}- {{ $labels.ifAlias }}{{ end }}"
- alert: SwitchInLinkUsage
expr:
rate(ifHCInOctets[5m]) / (ifHighSpeed * 1000000 / 8) > 0.5
for: 5m
keep_firing_for: 10m
labels:
severity: warning
annotations:
Usage: !unsafe "{{ $value | humanizePercentage }}"
Interface: !unsafe "{{ $labels.ifName }}
{{ if $labels.ifAlias }}- {{ $labels.ifAlias }}{{ end }}"
- alert: SwitchInLinkUsage
expr:
rate(ifHCInOctets[5m]) / (ifHighSpeed * 1000000 / 8) > 0.8
for: 5m
keep_firing_for: 10m
labels:
severity: critical
annotations:
Usage: !unsafe "{{ $value | humanizePercentage }}"
Interface: !unsafe "{{ $labels.ifName }}
{{ if $labels.ifAlias }}- {{ $labels.ifAlias }}{{ end }}"
- alert: SwitchOutLinkUsage
expr:
rate(ifHCOutOctets[5m]) / (ifHighSpeed * 1000000 / 8) > 0.5
for: 5m
keep_firing_for: 10m
labels:
severity: warning
annotations:
Usage: !unsafe "{{ $value | humanizePercentage }}"
Interface: !unsafe "{{ $labels.ifName }}
{{ if $labels.ifAlias }}- {{ $labels.ifAlias }}{{ end }}"
- alert: SwitchOutLinkUsage
expr:
rate(ifHCOutOctets[5m]) / (ifHighSpeed * 1000000 / 8) > 0.8
for: 5m
keep_firing_for: 10m
labels:
severity: warning
annotations:
Usage: !unsafe "{{ $value | humanizePercentage }}"
Interface: !unsafe "{{ $labels.ifName }}
{{ if $labels.ifAlias }}- {{ $labels.ifAlias }}{{ end }}"
...

View file

@ -1,40 +0,0 @@
---
prometheus_snmp__modules_eaton:
version: 1
auth:
community: "{{ vault_snmp_eaton_community }}"
walk:
- sysUpTime
#- upsBattery
- xupsInput
- xupsOutput
- xupsBypass
- xupsEnvironment
- xupsBattery
- xupsConfig
lookups:
- source_indexes:
- xupsInputPhase
lookup: xupsInputName
- source_indexes:
- xupsOutputPhase
lookup: xupsOutputName
- source_indexes:
- xupsBypassPhase
lookup: xupsBypassName
overrides:
upsBatteryStatus:
type: EnumAsStateSet
xupsInputId:
type: EnumAsStateSet
xupsOutputId:
type: EnumAsStateSet
xupsBypassId:
type: EnumAsStateSet
xupsOutputSource:
type: EnumAsStateSet
xupsBatteryAbmStatus:
type: EnumAsStateSet
xupsContactType:
type: EnumAsStateSet
...

View file

@ -1,19 +0,0 @@
---
prometheus_snmp__modules_ilo:
version: 3
timeout: 10s
retries: 10
auth:
security_level: authPriv
auth_protocol: SHA
username: aurore
password: "{{ vault_snmp_ilo_auth }}"
priv_protocol: AES
priv_password: "{{ vault_snmp_ilo_priv }}"
walk:
- sysUpTime
- cpqHeTemperatureTable
overrides:
cpqHeTemperatureThresholdType:
type: EnumAsStateSet
...

View file

@ -1,6 +0,0 @@
---
prometheus_snmp__modules:
quanta: "{{ prometheus_snmp__modules_quanta }}"
ilo: "{{ prometheus_snmp__modules_ilo }}"
eaton: "{{ prometheus_snmp__modules_eaton }}"
...

View file

@ -1,125 +0,0 @@
---
prometheus_snmp__modules_quanta:
auth:
community: "{{ vault_snmp_quanta_community }}"
timeout: 60s
retries: 3
walk:
- interfaces
- ifXTable
- snAgGblQueueOverflow
- snAgGblDynMemTotal
- snAgGblDynMemFree
- snAgGblCpuUtil1SecAvg
- snAgGblCpuUtil5SecAvg
- snAgGblCpuUtil1MinAvg
- sysUpTime
- snAgentCpuUtilPercent
- snAgent
- snChasFan
- snChasPwr
- snAgentTemp
- snAgentCpu
- snSwInfo
- snSwIfInfoTable
- dot3StatsTable
- dot3HCStatsTable
- dot3Errors
- dot3Tests
- dot3CollTable
- lldpLocChassisId
- lldpRemTable
- lldpLocPortTable
- dot1dBasePort
lookups:
- source_indexes:
- ifIndex
lookup: ifAlias
- source_indexes:
- ifIndex
lookup: ifDescr
- source_indexes:
- ifIndex
lookup: ifName
- source_indexes:
- snChasFanIndex
lookup: snChasFanDescription
- source_indexes:
- snAgentTempSlotNum
- snAgentTempSensorId
lookup: snAgentTempSensorDescr
- source_indexes:
- snSwIfInfoPortNum
lookup: snSwIfName
- source_indexes:
- snSwIfInfoPortNum
lookup: snSwIfDescr
- source_indexes:
- dot3StatsIndex
lookup: ifAlias
- source_indexes:
- dot3StatsIndex
lookup: ifDescr
- source_indexes:
- dot3StatsIndex
lookup: ifName
- source_indexes:
- lldpRemTimeMark
- lldpRemLocalPortNum
- lldpRemIndex
lookup: lldpRemChassisId
#- source_indexes:
# - lldpLocPortNum
# lookup: lldpLocPortIdSubtype
overrides:
ifIndex:
ignore: true
ifAlias:
ignore: true
ifDescr:
ignore: true
ifName:
ignore: true
ifOperStatus:
type: EnumAsStateSet
ifAdminStatus:
type: EnumAsStateSet
snChasFanIndex:
ignore: true
snChasFanDescription:
ignore: true
snChasPwrSupplyIndex:
ignore: true
snAgentTempSensorDescr:
ignore: true
snChasFanOperStatus:
type: EnumAsStateSet
snChasPwrSupplyOperStatus:
type: EnumAsStateSet
snSwIfName:
ignore: true
snSwIfDescr:
ignore: true
snSwIfVlanId:
ignore: true
snSwIfInfoPortNum:
ignore: true
snSwIfInfoMonitorMode:
type: EnumAsStateSet
snSwIfInfoMirrorPorts:
ignore: true
snSwIfInfoMediaType:
type: EnumAsInfo
ifType:
type: EnumAsInfo
dot3StatsIndex:
ignore: true
dot3StatsEtherChipSet:
ignore: true
dot3StatsDuplexStatus:
type: EnumAsStateSet
lldpLocPortIdSubtype:
type: EnumAsInfo
lldpRemPortIdSubtype:
type: EnumAsInfo
...

View file

@ -1,31 +0,0 @@
---
pve_auth__groups:
admin:
- Administrator
pve_auth__pam_users:
root:
enabled: false
pve_auth__users:
elkmaennchen:
password: "{{ vault_pve_passwords.elkmaennchen }}"
groups:
- admin
jeltz:
password: "{{ vault_pve_passwords.jeltz }}"
groups:
- admin
korenstin:
password: "{{ vault_pve_passwords.korenstin }}"
groups:
- admin
otthorn:
password: "{{ vault_pve_passwords.otthorn }}"
groups:
- admin
v-lafeychine:
password: "{{ vault_pve_passwords['v-lafeychine'] }}"
groups:
- admin
...

View file

@ -1,17 +0,0 @@
---
radiusd__guest_vlan: 1000
radiusd__clients:
localhost:
addr: 127.0.0.1
secret: abcdef
type: aurore
wifi-ap-v4:
addr: 10.102.0.0/16
secret: abcdef
type: aurore
wifi-ap-v6:
addr: 2a09:6840:102::/56
secret: abcdef
type: aurore
...

View file

@ -1,3 +0,0 @@
---
prometheus_keepalived__dest: /var/run/prometheus-node-exporter/keepalived.prom
...

View file

@ -1,12 +0,0 @@
---
glob_switch:
loop_protect:
port_disable_timer_in_seconds: 30
transmit_interval_in_seconds: 3
sntp:
operation_mode: SNTP_UNICAST_MODE
poll_interval: 720
servers:
- ip: 10.206.1.5
priority: 1
...

View file

@ -1,60 +0,0 @@
---
bird__tables:
- wg
bird__kernel:
kernel:
learn: true
import: accept
export: accept
vrf:
learn: true
import:
sources:
- "{{ iproute2__custom_protos.wireguard }}"
export: accept
table: wg
kernel: "{{ iproute2__custom_tables.wireguard }}"
bird__ospf:
limits:
import: 4000
export: 4000
table: wg
import: accept
export:
sources:
- "{{ iproute2__custom_protos.wireguard }}"
areas:
1:
broadcast:
- vpn0
bird__bgp:
infra1:
local:
address: "{{ bird__bgp_addr.vpn }}"
as: "{{ bird__as.aurore }}"
neighbor:
address:
- 2a09:6840:213::1:1
- 10.213.1.1
as: "{{ bird__as.aurore }}"
table: wg
import: accept
export: reject
next_hop_self: true
infra2:
local:
address: "{{ bird__bgp_addr.vpn }}"
as: "{{ bird__as.aurore }}"
neighbor:
address:
- 2a09:6840:213::1:2
- 10.213.1.2
as: "{{ bird__as.aurore }}"
table: wg
import: accept
export: reject
next_hop_self: true
...

View file

@ -1,16 +0,0 @@
---
ifupdown2__vrf:
wg-vrf:
table: "{{ iproute2__custom_tables.wireguard }}"
ifupdown2__wireguard:
wg0:
private_key: "{{ vault_wireguard_wg0_private }}"
listen_port: 5121
vrf: wg-vrf
table: "{{ iproute2__custom_tables.wireguard }}"
peer_allowed_addresses:
- 2a09:6840:212::1:1/128
- 10.212.1.1/32
peer_public_key: 0kP/XjaGOpu4p9KHTAoAhkLwXzC8wJUdPIdhdpgeKhY=
...

View file

@ -1,7 +0,0 @@
---
iproute2__custom_tables:
wireguard: 2000
iproute2__custom_protos:
wireguard: 200
...

View file

@ -1,22 +0,0 @@
---
systemd_link__links:
pub0: ae:ae:ae:2C:60:35
ifupdown2__interfaces:
pub0:
addresses:
- 2a09:6840:128::220/64
- 10.128.0.220/16
gateways: "{{ ifupdown2__gateways.adm }}"
collabora__server_name: office.auro.re
collabora__post_allow_addrs:
- 2a09:6840:215::1:1
- 45.66.111.206
collabora__wopi_groups:
- host: https://cloud.auro.re:443
aliases:
- https://nextcloud.auro.re:443
...

View file

@ -1,47 +0,0 @@
---
systemd_link__links:
isp0: 02:00:00:c6:3f:6f
trunk0: 02:00:00:b1:8d:d6
ifupdown2__interfaces:
isp0:
addresses:
- 2a09:6840:210::1:1/64
- 10.210.1.1/16
gateways: "{{ ifupdown2__gateways.isp }}"
trunk0:
ipv6_addrgen: false
clients0:
bridge_vlan_aware: true
bridge_ports:
- trunk0
bridge_vids:
- 1000-1004
bridge_disable_pvid: true
ipv6_addrgen: false
client0:
addresses:
- 100.64.0.2/27
vlan_id: 1000
vlan_raw_device: clients0
client1:
addresses:
- 100.64.0.34/27
vlan_id: 1001
vlan_raw_device: clients0
client2:
addresses:
- 100.64.0.66/27
vlan_id: 1002
vlan_raw_device: clients0
client3:
addresses:
- 100.64.0.98/27
vlan_id: 1003
vlan_raw_device: clients0
client4:
addresses:
- 100.64.0.130/27
vlan_id: 1004
vlan_raw_device: clients0
...

View file

@ -1,47 +0,0 @@
---
systemd_link__links:
isp0: 04:00:00:8c:d1:36
trunk0: 04:00:00:33:2c:3c
ifupdown2__interfaces:
isp0:
addresses:
- 2a09:6840:210::1:2/64
- 10.210.1.2/16
gateways: "{{ ifupdown2__gateways.isp }}"
trunk0:
ipv6_addrgen: false
clients0:
bridge_vlan_aware: true
bridge_ports:
- trunk0
bridge_vids:
- 1000-1004
bridge_disable_pvid: true
ipv6_addrgen: false
client0:
addresses:
- 100.64.0.3/27
vlan_id: 1000
vlan_raw_device: clients0
client1:
addresses:
- 100.64.0.35/27
vlan_id: 1001
vlan_raw_device: clients0
client2:
addresses:
- 100.64.0.67/27
vlan_id: 1002
vlan_raw_device: clients0
client3:
addresses:
- 100.64.0.99/27
vlan_id: 1003
vlan_raw_device: clients0
client4:
addresses:
- 100.64.0.131/27
vlan_id: 1004
vlan_raw_device: clients0
...

View file

@ -1,11 +0,0 @@
---
systemd_link__links:
int0: 02:00:00:9f:d9:f9
ifupdown2__interfaces:
int0:
addresses:
- 2a09:6840:206::1:1/64
- 10.206.1.1/16
gateways: "{{ ifupdown2__gateways.int }}"
...

View file

@ -1,11 +0,0 @@
---
systemd_link__links:
int0: 04:00:00:3c:c0:5a
ifupdown2__interfaces:
int0:
addresses:
- 2a09:6840:206::1:2/64
- 10.206.1.2/16
gateways: "{{ ifupdown2__gateways.int }}"
...

View file

@ -1,39 +0,0 @@
---
systemd_link__links:
adm0: 02:00:00:9E:3E:21
crans0: 02:00:00:A2:7C:68
zayo0: 02:00:00:35:89:82
rezel0: 02:00:00:8F:4A:AD
back0: 02:00:00:1C:3A:2E
viarezo0: 02:00:00:ED:70:64
router0: 02:00:00:5A:17:7C
oti0: 02:00:00:05:0E:A6
ifupdown2__interfaces:
adm0:
addresses:
- 2a09:6840:128::10:2/64
- 10.128.10.2/16
crans0:
ipv6_addrgen: false
zayo0:
ipv6_addrgen: false
rezel0:
addresses:
- 2a09:6842:19:9116::1/64
- 45.66.111.1/29
back0:
addresses:
- 2a09:6840:203::1:1/64
- 10.203.1.1/16
viarezo0:
addresses:
- 2a0c:b641:2ff::6/125
- 192.159.121.133/29
router0:
addresses:
- 2a09:6840:129::10:2/56
- 10.129.10.2/16
oti0:
ipv6_addrgen: false
...

View file

@ -1,39 +0,0 @@
---
systemd_link__links:
adm0: 04:00:00:F5:69:B9
crans0: 04:00:00:CF:E1:D0
zayo0: 04:00:00:67:7B:12
rezel0: 04:00:00:C6:05:B7
back0: 04:00:00:DE:22:E6
viarezo0: 04:00:00:45:FA:E6
router0: 04:00:00:AD:D7:71
oti0: 02:00:00:05:0E:A6
ifupdown2__interfaces:
adm0:
addresses:
- 2a09:6840:128::10:102/64
- 10.128.10.102/16
crans0:
ipv6_addrgen: false
zayo0:
ipv6_addrgen: false
rezel0:
addresses:
- 2a09:6842:19:9116::3/64
- 45.66.111.3/29
back0:
addresses:
- 2a09:6840:203::1:2/64
- 10.203.1.2/16
viarezo0:
addresses:
- 2a0c:b641:2ff::7/125
- 192.159.121.134/29
router0:
addresses:
- 2a09:6840:129::10:102/56
- 10.129.10.102/16
oti0:
ipv6_addrgen: false
...

View file

@ -1,63 +0,0 @@
---
systemd_link__links:
ups0: 02:00:00:fe:6f:0e
back0: 02:00:00:f8:93:22
monit0: 02:00:00:da:97:7f
wifi0: 02:00:00:8c:c5:bf
int0: 02:00:00:75:40:3e
sw0: 02:00:00:ca:e8:d1
bmc0: 02:00:00:47:d1:b9
pve0: 02:00:00:b3:35:e7
isp0: 02:00:00:6b:53:14
ext0: 02:00:00:32:86:60
vpn0: 02:00:00:52:5f:85
th30: 02:00:00:23:a7:d3
pub0: 02:00:00:7d:34:06
ifupdown2__interfaces:
back0:
addresses:
- 2a09:6840:203::1:3/64
- 10.203.1.3/16
- 45.66.111.210/32 # secondary
ups0:
ipv6_addrgen: false
monit0:
ipv6_addrgen: false
wifi0:
ipv6_addrgen: false
int0:
ipv6_addrgen: false
sw0:
ipv6_addrgen: false
bmc0:
ipv6_addrgen: false
pve0:
ipv6_addrgen: false
isp0:
ipv6_addrgen: false
ext0:
ipv6_addrgen: false
pub0:
ipv6_addrgen: false
vpn0:
addresses:
- 2a09:6840:213::1:1/64
- 10.213.1.1/16
th30:
ipv6_addrgen: false
bird__router_id: 10.203.1.3
bird__bgp_addr:
back:
- 2a09:6840:203::1:3
- 10.203.1.3
vpn:
- 2a09:6840:213::1:1
- 10.213.1.1
bird__pref_src_addr:
- 2a09:6840:203::1:3
- 45.66.111.210
...

View file

@ -0,0 +1,27 @@
---
network:
vlan111:
mac_addr: 96:5a:21:48:4a:e5
vlan128:
mac_addr: 9e:9a:f3:37:a6:2e
vlan129:
mac_addr: 46:dd:ed:55:70:2f
ipv4_addrs:
- 10.129.0.245/16
ipv6_addrs:
- 2a09:6840:129:0:245::/48
vlan130:
mac_addr: 8a:ad:f7:04:82:2e
vlan131:
mac_addr: 16:6d:4f:53:fc:28
vlan133:
mac_addr: 12:ad:28:d5:31:fa
vlan134:
mac_addr: 0e:54:e9:97:c0:5b
vlan135:
mac_addr: ea:f6:32:c3:8b:2c
ipv4_addrs:
- 10.135.0.1/16
ipv6_addrs:
- 2a09:6840:135:0:1::/48
...

View file

@ -1,63 +0,0 @@
---
systemd_link__links:
ups0: 04:00:00:6d:97:83
back0: 04:00:00:46:ba:f9
monit0: 04:00:00:72:0b:2d
wifi0: 04:00:00:ee:42:0f
int0: 04:00:00:21:fd:d0
sw0: 04:00:00:2e:5b:16
bmc0: 04:00:00:bb:5a:a6
pve0: 04:00:00:0b:2b:82
isp0: 04:00:00:f4:4c:5d
ext0: 04:00:00:1d:0e:83
vpn0: 04:00:00:02:ba:dd
th30: 04:00:00:9e:8d:4f
pub0: 04:00:00:f8:3b:9b
ifupdown2__interfaces:
back0:
addresses:
- 2a09:6840:203::1:4/64
- 10.203.1.4/16
- 45.66.111.211/32 # secondary
ups0:
ipv6_addrgen: false
monit0:
ipv6_addrgen: false
wifi0:
ipv6_addrgen: false
int0:
ipv6_addrgen: false
sw0:
ipv6_addrgen: false
bmc0:
ipv6_addrgen: false
pve0:
ipv6_addrgen: false
isp0:
ipv6_addrgen: false
ext0:
ipv6_addrgen: false
vpn0:
addresses:
- 2a09:6840:213::1:2/64
- 10.213.1.2/16
th30:
ipv6_addrgen: false
pub0:
ipv6_addrgen: false
bird__router_id: 10.203.1.4
bird__bgp_addr:
back:
- 2a09:6840:203::1:4
- 10.203.1.4
vpn:
- 2a09:6840:213:1:2
- 10.213.1.2
bird__pref_src_addr:
- 2a09:6840:203::1:4
- 45.66.111.211
...

View file

@ -0,0 +1,27 @@
---
network:
vlan111:
mac_addr: 02:ec:c1:23:5d:a3
vlan128:
mac_addr: a2:24:08:dc:b6:cc
vlan129:
mac_addr: 92:29:ba:00:26:e2
ipv4_addrs:
- 10.129.0.246/16
ipv6_addrs:
- 2a09:6840:129:0:246::/48
vlan130:
mac_addr: 4a:b6:84:e1:8e:4a
vlan131:
mac_addr: ca:10:8d:cc:87:9d
vlan133:
mac_addr: 1e:08:7c:41:1a:bd
vlan134:
mac_addr: 2e:5f:f9:55:07:d2
vlan135:
mac_addr: 6e:f2:b5:05:fc:c3
ipv4_addrs:
- 10.135.0.2/16
ipv6_addrs:
- 2a09:6840:135:0:2::/48
...

View file

@ -1,59 +0,0 @@
---
systemd_link__links:
adm0: 02:00:00:D8:37:45
back0: 02:00:00:BF:10:4C
trunk0: 02:00:00:E9:BA:15
ifupdown2__interfaces:
adm0:
addresses:
- 2a09:6840:128::10:5/64
- 10.128.10.5/16
gateways: "{{ ifupdown2__gateways.adm }}"
back0:
addresses:
- 2a09:6840:203::1:5/64
- 45.66.111.211/32
- 10.203.1.5/16
trunk0:
ipv6_addrgen: false
clients0:
bridge_vlan_aware: true
bridge_ports:
- trunk0
bridge_vids:
- 1000-1004
bridge_disable_pvid: true
ipv6_addrgen: false
client0:
vlan_id: 1000
vlan_raw_device: clients0
ipv6_addrgen: false
client1:
vlan_id: 1001
vlan_raw_device: clients0
ipv6_addrgen: false
client2:
vlan_id: 1002
vlan_raw_device: clients0
ipv6_addrgen: false
client3:
vlan_id: 1003
vlan_raw_device: clients0
ipv6_addrgen: false
client4:
vlan_id: 1004
vlan_raw_device: clients0
ipv6_addrgen: false
bird__router_id: 10.203.1.5
bird__bgp_addr:
back:
- 2a09:6840:203::1:5
- 10.203.1.5
bird__pref_src_addr:
- 2a09:6840:203::1:5
- 45.66.111.211
...

View file

@ -1,47 +0,0 @@
---
systemd_link__links:
adm0: 04:00:00:85:C3:5D
back0: 04:00:00:FE:2D:67
trunk0: 04:00:00:D8:F5:4D
ifupdown2__interfaces:
adm0:
addresses:
- 2a09:6840:128::10:105/64
- 10.128.10.105/16
gateways: "{{ ifupdown2__gateways.adm }}"
back0:
addresses:
- 2a09:6840:203::1:6/64
- 10.203.1.6/16
trunk0:
ipv6_addrgen: false
clients0:
bridge_vlan_aware: true
bridge_ports:
- trunk0
bridge_vids:
- 1000-1004
bridge_disable_pvid: true
ipv6_addrgen: false
client0:
vlan_id: 1000
vlan_raw_device: clients0
ipv6_addrgen: false
client1:
vlan_id: 1001
vlan_raw_device: clients0
ipv6_addrgen: false
client2:
vlan_id: 1002
vlan_raw_device: clients0
ipv6_addrgen: false
client3:
vlan_id: 1003
vlan_raw_device: clients0
ipv6_addrgen: false
client4:
vlan_id: 1004
vlan_raw_device: clients0
ipv6_addrgen: false
...

View file

@ -1,16 +0,0 @@
---
systemd_link__links:
adm0: 02:00:00:38:c2:52
int0: 02:00:00:fe:a8:54
ifupdown2__interfaces:
adm0:
addresses:
- 2a09:6840:128::10:8/64
- 10.128.10.8/16
int0:
addresses:
- 2a09:6840:206::1:3/64
- 10.206.1.7/16
gateways: "{{ ifupdown2__gateways.int }}"
...

View file

@ -1,16 +0,0 @@
---
systemd_link__links:
adm0: 04:00:00:f7:1c:47
int0: 04:00:00:e4:83:d2
ifupdown2__interfaces:
adm0:
addresses:
- 2a09:6840:128::10:108/64
- 10.128.10.108/16
int0:
addresses:
- 2a09:6840:206::1:4/64
- 10.206.1.8/16
gateways: "{{ ifupdown2__gateways.int }}"
...

View file

@ -1,38 +0,0 @@
---
dovecot__auth_default_realm: test.auro.re
dovecot__auth_users:
jeltz@test.auro.re: "{plain}password"
lafeych@test.auro.re: "{plain}password"
toto@test.auro.re: "{plain}password"
root@test.auro.re: "{plain}L9yXSrCbbafMlMls5q7WWMKC612XNbXL"
dovecot__lmtp_postmaster_address: postmaster@test.auro.re
ifupdown2__interfaces:
ext0:
addresses:
- 2a09:6840:211::1:5/64
- 10.211.1.5/16
- 45.66.111.208/30
gateways: "{{ ifupdown2__gateways.ext }}"
postfix__hostname: mx.test.auro.re
postfix__sasl_local_domain: test.auro.re
postfix__virtual_aliases:
postmaster@test.auro.re: root@test.auro.re
dmarc@test.auro.re: root@test.auro.re
postfix__virtual_mailbox_domains:
- infra.test.auro.re
- test.auro.re
postfix__virtual_mailboxes:
jeltz@test.auro.re: jeltz@test.auro.re
root@test.auro.re: root@test.auro.re
toto@test.auro.re: toto@test.auro.re
vincent.lafeychine@test.auro.re: lafeych@test.auro.re
systemd_link__links:
ext0: ae:ae:ae:1d:c8:b2
...

View file

@ -1,11 +0,0 @@
---
systemd_link__links:
pub0: 02:00:00:ad:62:64
ifupdown2__interfaces:
pub0:
addresses:
- 2a09:6840:215::1:2/64
- 45.66.111.205/27
gateways: "{{ ifupdown2__gateways.pub }}"
...

View file

@ -1,11 +0,0 @@
---
systemd_link__links:
pub0: 04:00:00:1b:0a:3a
ifupdown2__interfaces:
pub0:
addresses:
- 2a09:6840:215::1:3/64
- 45.66.111.207/27
gateways: "{{ ifupdown2__gateways.pub }}"
...

View file

@ -1,29 +0,0 @@
---
systemd_link__links:
adm0: 96:77:96:91:e3:6c
ovh0: 02:00:00:97:78:6d
ifupdown2__interfaces:
adm0:
addresses:
- 2a09:6840:128::109/64
- 10.128.0.109/16
ovh0:
addresses:
- 92.222.211.194/24
gateways: "{{ ifupdown2__gateways.ovh }}"
# TODO: remove as soon as the VPN works
knotd__remotes:
xfr-master:
address: 2a09:6840:128::110
key: xfr
knotd__acl:
notify-master:
address:
- 2a09:6840:128::110
- 10.128.0.110
key: xfr
action: notify
...

View file

@ -1,617 +0,0 @@
---
knotd__listen:
- address: 0.0.0.0
- address: "::"
knotd__keys:
xfr:
algorithm: hmac-sha512
secret: "{{ vault_knotd_xfr_key }}"
ksk-infra:
algorithm: hmac-sha512
secret: "{{ vault_knotd_ksk_infra_key }}"
update-acme-challenge:
algorithm: hmac-sha512
secret: "{{ vault_certbot_dns_secret }}"
knotd__remotes:
xfr-ns-1:
address: 2a09:6840:215::1:2
key: xfr
xfr-ns-2:
address: 2a09:6840:215::1:3
key: xfr
xfr-ns-3:
address: 10.128.0.109
key: xfr
ksk-infra:
address: ::1
key: ksk-infra
knotd__policies:
public:
algorithm: ECDSAP256SHA256
reproducible_signing: true
# Je n'ai pas trouvé de façon de pousser les records automatiquement
# sur .re, donc pour éviter d'oublier de le faire manuellement, la
# KSK n'expire pas
ksk_lifetime: 0
zsk_lifetime: 30d
nsec3: true
infra:
algorithm: ECDSAP256SHA256
ksk_lifetime: 365d
zsk_lifetime: 30d
nsec3: on
ds-push: ksk-infra
cds-cdnskey-publish: rollover
ksk-submission: infra
ripe:
algorithm: ECDSAP256SHA256
ksk_lifetime: 365d
zsk_lifetime: 30d
nsec3: on
ds-push: ksk-ripe
cds-cdnskey-publish: rollover
ksk-submission: ripe
knotd__acl:
xfr:
addresses:
- 2a09:6840:128::109
- 10.128.0.109
- 2a09:6840:215::1:2
- 45.66.111.205
- 2a09:6840:215::1:3
- 45.66.111.207
action: transfer
key: xfr
ksk-infra:
addresses:
- 127.0.0.1
- ::1
key: ksk-infra
action: update
update_types:
- DS
update_owner: name
update_owner_match: equal
update_owner_name:
- infra
update-acme-challenge:
addresses:
- 10.128.0.0/16
- 2a09:6840:128::/48
key: update-acme-challenge
action: update
update_types:
- TXT
update_owner: name
update_owner_match: equal
update_owner_name:
- _acme-challenge.auro.re.
knotd__queryacl:
local:
addresses:
- 10.0.0.0/8
knotd__soa_rname: root@auro.re.
knotd__hosts:
auro.re:
proxy-ovh:
- 92.222.211.195
horus:
- 92.23.218.136
ns-1:
- 45.66.111.205
- 2a09:6840:215::1:2
ns-2:
- 92.222.211.194
serge:
- 92.222.211.196
lama:
- 185.230.78.220
- 2a0c:700:12:0:67:e5ff:fee9:108
vpn-ovh:
- 92.222.211.197
passerelle:
- 45.66.111.254
- 2a09:6840:111::254
proxy:
- 45.66.111.61
- 2a09:6840:111::61
camelot:
- 45.66.111.59
- 2a09:6840:111::59
mail:
- 45.66.111.62
- 2a09:6840:111::62
galene:
- 45.66.111.65
- 2a09:6840:111::65
aclyas:
- 45.66.111.231
- 2a09:6840:111::231
jitsi:
- 45.66.111.55
- 2a09:6840:111::55
jitsi-ng:
- 45.66.111.216
- 2a09:6840:215::1:216
portail-fleming:
- 10.13.0.247
- 2a09:6840:13::247
portail-pacaterie:
- 10.23.0.247
- 2a09:6840:23::247
portail-rives:
- 10.33.0.247
- 2a09:6840:33::247
portail-edc:
- 10.43.0.247
- 2a09:6840:43::247
portail-gs:
- 10.53.0.247
- 2a09:6840:53::247
adh.auro.re:
paon:
- 45.66.110.10
- 2a09:6840:110:0:231:92ff:fe1b:ae22
lyshyga0:
- 45.66.110.113
- 2a09:6840:110:0:6af7:28ff:fe91:e8d9
pz28910:
- 45.66.110.114
vinsing0:
- 45.66.110.123
- 2a09:6840:110:0:1e1b:dff:fe90:7d81
osc-routeur:
- 45.66.110.125
- 2a09:6840:110:0:ba27:ebff:fe2d:c1a1
odroid:
- 45.66.110.154
- 2a09:6840:110:0:21e:6ff:fe49:e00
amau0:
- 45.66.110.164
- 2a09:6840:110:0:3e7c:3fff:fec3:27d1
regulus:
- 45.66.110.180
- 2a09:6840:110:0:2ef0:5dff:fe2a:1530
toaster:
- 45.66.110.188
- 2a09:6840:110:0:5246:5dff:fe9a:f70
rpijutax:
- 45.66.110.190
- 2a09:6840:110:0:ba27:ebff:fe76:a9bc
polaris:
- 45.66.110.245
- 2a09:6840:110:0:dea6:32ff:feb4:d033
lafeychine:
- 92.91.154.45
infra.auro.re:
services-1.ceph:
- 2a09:6840:214::1:1
- 10.214.1.1
services-2.ceph:
- 2a09:6840:214::1:2
- 10.214.1.2
services-3.ceph:
- 2a09:6840:209::1:3
- 10.214.1.3
services-1.pve:
- 2a09:6840:209::2:1
- 10.209.2.1
services-2.pve:
- 2a09:6840:209::2:2
- 10.209.2.2
network-1.pve:
- 2a09:6840:209::1:1
- 10.209.1.1
network-2.pve:
- 2a09:6840:209::1:2
- 10.209.1.2
services-3.pve:
- 2a09:6840:209::2:3
- 10.209.2.3
caradoc.bmc:
- 2a09:6840:208::1:1
- 10.208.1.1
services-1.bmc:
- 2a09:6840:208::1:2
- 10.208.1.2
services-2.bmc:
- 2a09:6840:208::1:3
- 10.208.1.3
services-3.bmc:
- 2a09:6840:208::1:4
- 10.208.1.4
perceval.bmc:
- 2a09:6840:208::1:5
- 10.208.1.5
chapalux.bmc:
- 2a09:6840:208::1:6
- 10.208.1.6
loki.bmc:
- 2a09:6840:208::1:7
- 10.208.1.7
network-1.bmc:
- 2a09:6840:208::1:8
- 10.208.1.8
network-2.bmc:
- 2a09:6840:208::1:9
- 10.208.1.9
escalope.bmc:
- 2a09:6840:208::1:10
- 10.208.1.10
edge-1.back:
- 2a09:6840:203::1:1
- 10.203.1.1
edge-2.back:
- 2a09:6840:203::1:2
- 10.203.1.2
isp-1.back:
- 2a09:6840:203::1:5
- 10.203.1.5
isp-2.back:
- 2a09:6840:203::1:6
- 10.203.1.6
infra-1.back:
- 2a09:6840:203::1:3
- 10.203.1.3
infra-2.back:
- 2a09:6840:203::1:4
- 10.203.1.4
ns-master.int:
- 2a09:6840:128:0::110
- 10.128.0.110
log-1.int:
- 2a09:6840:206::1:9
- 10.206.1.9
log-2.int:
- 2a09:6840:206::1:10
- 10.206.1.10
dns-1.int:
- 2a09:6840:206::1:1
- 10.206.1.1
dns-2.int:
- 2a09:6840:206::1:2
- 10.206.1.2
nis2.int:
- 2a09:6840:206::2:1
- 10.206.2.1
ldap-1.int:
- 10.128.10.8
- 2a09:6840:128::10:8
ldap-2.int:
- 10.128.10.108
- 2a09:6840:128::10:108
ntp-1.int:
- 2a09:6840:206::1:5
- 10.206.1.5
ntp-2.int:
- 2a09:6840:206::1:6
- 10.206.1.6
wg-1.vpn:
- 2a09:6840:213::1:3
- 10.213.1.3
wg-2.vpn:
- 2a09:6840:213::1:4
- 10.213.1.4
dhcp-1.isp:
- 2a09:6840:210::1:1
- 10.210.1.1
dhcp-2.isp:
- 2a09:6840:210::1:2
- 10.210.1.2
radius-1.isp:
- 2a09:6840:210::1:3
- 10.210.1.3
radius-2.isp:
- 2a09:6840:210::1:4
- 10.210.1.4
prometheus-1.monit:
- 2a09:6840:204::1:1
- 10.204.1.1
prometheus-2.monit:
- 2a09:6840:204::1:2
- 10.204.1.2
ff-1.core.sw:
- 10.207.1.1
ff-2.core.sw:
- 10.207.1.2
fl-1.core.sw:
- 10.207.1.3
fl-2.core.sw:
- 10.207.1.4
fd-1.core.sw:
- 10.207.1.5
ff-3.core.sw:
- 10.207.1.6
gk-1.core.sw:
- 10.207.2.1
eb-1.core.sw:
- 10.207.3.1
r3-1.core.sw:
- 10.207.4.1
eb-1.ups:
- 2a09:6840:201::3:1
- 10.201.3.1
ec-1.ups:
- 2a09:6840:201::3:2
- 10.201.3.2
mx.test:
- 2a09:6840:211::1:5
- 10.211.1.5
collabora.ext:
- 2a09:6840:211::1:1
- 10.211.1.1
grafana.ext:
- 2a09:6840:211::1:7
- 10.211.1.7
proxy.pub:
- 2a09:6840:215::1:1
- 45.66.111.206
ns-1.pub:
- 2a09:6840:215::1:2
- 45.66.111.205
ns-2.pub:
- 2a09:6840:215::1:3
- 45.66.111.207
ns-3.ovh:
- 92.222.211.194
tor.pub:
- 45.66.111.215
- 2a09:6840:215::1:215
jitsi.pub:
- 45.66.111.216
- 2a09:6840:215::1:216
knotd__zones:
auro.re:
dnssec_policy: public
notify:
- xfr-ns-1
- xfr-ns-2
- xfr-ns-3
acl:
- update-acme-challenge
- ksk-infra
- xfr
soa:
mname: ns-master.int.infra
ns:
- target:
- ns-1.pub.infra
- ns-2.pub.infra
- name: infra
target:
- ns-1.pub.infra
- ns-2.pub.infra
- name: test
target:
- ns-1.pub.infra
- ns-2.pub.infra
- name: adm
target:
- serge
- lama
- name: ups
target:
- serge
- lama
- name: switch
target:
- serge
- lama
- name: borne
target:
- serge
- lama
mx:
- exchange: mail
preference: 5
- exchange: proxy-ovh
preference: 10
txt:
- data: v=spf1 mx -all
a:
- address: 92.222.211.195
cname:
- name:
- gisti
- gistiti
target: jitsi
- name:
- element
- riot
- auth
- rss
- codimd
- hedgedoc
- grist
- kanboard
- www
- pad
- privatebin
- zero
- paste
target: proxy-ovh
- name:
- grafana
- grafana-ng
- nextcloud
- cloud
- office
target: proxy.pub.infra
- name:
- netbox
- wiki
- matrix
- drone
- gitea
- re2o
- vote
target: proxy
- name: intranet
target: re2o
- name:
- smtp
- imap
target: mail
- name:
- prometheus-paul.adh
- pma-paul.adh
- nextcloud-paul.adh
- grafana-paul.adh
- jellyfin.adh
- monitoring.adh
- beta-mpp.adh
- pz28.adh
target: lucepaul.myvnc.com.
- name:
- services-1.pve
target: services-1.pve.infra
- name:
- services-2.pve
target: services-2.pve.infra
- name:
- services-3.pve
target: services-3.pve.infra
hosts: "{{ knotd__hosts['auro.re']
| combine(knotd__hosts['adh.auro.re']
| add_origin_keys('adh.auro.re.')) }}"
test.auro.re:
dnssec_policy: public
notify:
- xfr-ns-1
- xfr-ns-2
- xfr-ns-3
acl:
- xfr
soa:
mname: ns-master.int.infra.auro.re.
txt:
- data: v=spf1 mx -all
- name: _dmarc
data: v=DMARC1;p=quarantine;pct=100;rua=mailto:postmaster@test.auro.re;ruf=mailto:postmaster@test.auro.re
ns:
- target:
- ns-1.pub.infra.auro.re.
- ns-2.pub.infra.auro.re.
mx:
- exchange: mx
preference: 5
cname:
- name:
- www1
- www2
- www3
target: proxy.pub.infra.auro.re.
hosts:
mx:
- 2a09:6840:211::1:5
- 45.66.111.205
infra.auro.re:
dnssec_policy: infra
notify:
- xfr-ns-1
- xfr-ns-2
- xfr-ns-3
acl:
- xfr
#queryacl: local
soa:
mname: ns-master.int
ns:
- target:
- ns-1.pub.infra.auro.re.
- ns-2.pub.infra.auro.re.
hosts: "{{ knotd__hosts['infra.auro.re'] }}"
108.66.45.in-addr.arpa:
dnssec_policy: ripe
notify:
- xfr-ns-1
- xfr-ns-2
- xfr-ns-3
acl:
- xfr
soa:
mname: ns-master.int.infra.auro.re.
ns:
- target:
- ns-1.pub.infra.auro.re.
- ns-2.pub.infra.auro.re.
109.66.45.in-addr.arpa:
dnssec_policy: ripe
notify:
- xfr-ns-1
- xfr-ns-2
- xfr-ns-3
acl:
- xfr
soa:
mname: ns-master.int.infra.auro.re.
ns:
- target:
- ns-1.pub.infra.auro.re.
- ns-2.pub.infra.auro.re.
110.66.45.in-addr.arpa:
dnssec_policy: ripe
notify:
- xfr-ns-1
- xfr-ns-2
- xfr-ns-3
acl:
- xfr
soa:
mname: ns-master.int.infra.auro.re.
ns:
- target:
- ns-1.pub.infra.auro.re.
- ns-2.pub.infra.auro.re.
reverse_hosts: "{{ knotd__hosts['adh.auro.re']
| ip_filter(['45.66.110.0/24'])
| add_origin_keys('adh.auro.re.') }}"
111.66.45.in-addr.arpa:
dnssec_policy: ripe
notify:
- xfr-ns-1
- xfr-ns-2
- xfr-ns-3
acl:
- xfr
soa:
mname: ns-master.int.infra.auro.re.
ns:
- target:
- ns-1.pub.infra.auro.re.
- ns-2.pub.infra.auro.re.
reverse_hosts: "{{ knotd__hosts['auro.re']
| ip_filter(['45.66.111.0/24'])
| add_origin_keys('auro.re.') }}"
0.4.8.6.9.0.a.2.ip6.arpa:
dnssec_policy: ripe
notify:
- xfr-ns-1
- xfr-ns-2
- xfr-ns-3
acl:
- xfr
soa:
mname: ns-master.int.infra.auro.re.
ns:
- target:
- ns-1.pub.infra.auro.re.
- ns-2.pub.infra.auro.re.
reverse_hosts: "{{ knotd__hosts['auro.re']
| ip_filter(['2a09:6840::/32'])
| add_origin_keys('auro.re.')
| combine(knotd__hosts['adh.auro.re']
| ip_filter(['2a09:6840::/32'])
| add_origin_keys('adh.auro.re.')) }}"
...

View file

@ -1,16 +0,0 @@
---
systemd_link__links:
int0: 02:00:00:e3:36:c8
adm0: 42:17:a7:d1:bd:6a
ifupdown2__interfaces:
adm0:
addresses:
- 2a09:6840:128::110/64
- 10.128.0.110/16
int0:
addresses:
- 2a09:6840:206::1:7/64
- 10.206.1.7/16
gateways: "{{ ifupdown2__gateways.int }}"
...

View file

@ -1,11 +0,0 @@
---
systemd_link__links:
int0: 02:00:00:74:71:83
ifupdown2__interfaces:
int0:
addresses:
- 2a09:6840:206::1:5/64
- 10.206.1.5/16
gateways: "{{ ifupdown2__gateways.int }}"
...

View file

@ -1,11 +0,0 @@
---
systemd_link__links:
int0: 04:00:00:31:be:50
ifupdown2__interfaces:
int0:
addresses:
- 2a09:6840:206::1:6/64
- 10.206.1.6/16
gateways: "{{ ifupdown2__gateways.int }}"
...

View file

@ -1,11 +0,0 @@
---
systemd_link__links:
monit0: 02:00:00:a8:6b:51
ifupdown2__interfaces:
monit0:
addresses:
- 2a09:6840:204::1:1/64
- 10.204.1.1/16
gateways: "{{ ifupdown2__gateways.monit }}"
...

View file

@ -1,11 +0,0 @@
---
systemd_link__links:
monit0: 04:00:00:a6:93:5a
ifupdown2__interfaces:
monit0:
addresses:
- 2a09:6840:204::1:2/64
- 10.204.1.2/16
gateways: "{{ ifupdown2__gateways.monit }}"
...

View file

@ -13,8 +13,6 @@ loc_reverseproxy:
to: auro.re to: auro.re
- from: 92.222.211.195 - from: 92.222.211.195
to: auro.re to: auro.re
- from: codimd.auro.re
to: hedgedoc.auro.re
reverseproxy_sites: reverseproxy_sites:
- from: phabricator.auro.re - from: phabricator.auro.re
@ -29,9 +27,6 @@ loc_reverseproxy:
- from: passbolt.auro.re - from: passbolt.auro.re
to: 10.128.0.53 to: 10.128.0.53
- from: auth.auro.re
to: 10.128.0.150:8089
- from: riot.auro.re - from: riot.auro.re
to: "10.128.0.150:8080" to: "10.128.0.150:8080"
- from: element.auro.re - from: element.auro.re
@ -39,6 +34,8 @@ loc_reverseproxy:
- from: chat.auro.re - from: chat.auro.re
to: "10.128.0.150:8080" to: "10.128.0.150:8080"
- from: codimd.auro.re
to: "10.128.0.150:8081"
- from: hedgedoc.auro.re - from: hedgedoc.auro.re
to: "10.128.0.150:8081" to: "10.128.0.150:8081"
@ -59,8 +56,6 @@ loc_reverseproxy:
- from: cas.auro.re - from: cas.auro.re
to: "10.128.0.150:8085" to: "10.128.0.150:8085"
- from: rss.auro.re
to: 10.128.0.150:8090
- from: status.auro.re - from: status.auro.re
to: "10.128.0.150:8086" to: "10.128.0.150:8086"
- from: "kanboard.auro.re" - from: "kanboard.auro.re"

View file

@ -70,6 +70,3 @@ loc_reverseproxy:
- from: grafana.auro.re - from: grafana.auro.re
to: "10.128.0.98:3000" to: "10.128.0.98:3000"
- from: office.auro.re
to: "10.128.0.220"

View file

@ -1,103 +0,0 @@
---
systemd_link__links:
pub0: ae:ae:ae:3a:71:0b
ifupdown2__interfaces:
pub0:
addresses:
- 2a09:6840:215::1:1/64
- 45.66.111.206/27
gateways: "{{ ifupdown2__gateways.pub }}"
caddy__matrix_headers:
access-control-allow-headers: "Origin, X-Requested-With, Content-Type, Accept, Authorization"
access-control-allow-methods: "GET, POST, PUT, DELETE, OPTIONS"
access-control-allow-origin: "*"
caddy__routes_https:
www1.test.auro.re:
- root: /var/www/auro.re
- path: /.well-known/matrix/server
headers: "{{ caddy__matrix_headers }}"
body: '{"m.server": "matrix.auro.re:8448"}'
status: 200
- path: /.well-known/matrix/client
headers: "{{ caddy__matrix_headers }}"
body: '{"m.homeserver": {"base_url": "https://matrix.auro.re"}}'
status: 200
www2.test.auro.re:
headers:
location: "https://auro.re{http.request.uri}"
status: 301
www3.test.auro.re:
reverse:
- "[2a09:6840:128::198]:3000"
- 10.128.0.198:3000
grafana.auro.re:
reverse:
- "[2a09:6840:128::98]:3000"
- 10.128.0.98:3000
grafana-ng.auro.re:
reverse:
- "[2a09:6840:211::1:7]:80"
- 10.211.1.7:80
office.auro.re:
reverse:
- "[2a09:6840:211::1:1]:9980"
- 10.211.1.1:9980
nextcloud.auro.re:
headers:
location: "https://cloud.auro.re{http.request.uri}"
status: 301
cloud.auro.re:
- path: /.well-known/carddav
headers:
location: /remote.php/dav/
status: 301
- path: /.well-known/caldav
headers:
location: /remote.php/dav/
status: 301
- path: /.well-known/webfinger
headers:
location: /index.php/.well-known/webfinger
status: 301
- path: /.well-known/nodeinfo
headers:
location: /index.php/.well-known/nodeinfo
status: 301
- path: /remote/*
rewrite: /remote.php
- path: /ocm-provider/*
rewrite: /index.php
- path: "*.mjs"
headers:
content-type: text/javascript
- reverse:
- "[2a09:6840:128::58]:8080"
- 10.128.0.58:8080
headers:
x-robots-tag: noindex, nofollow
referrer-policy: no-referrer
x-content-type-options: nosniff
x-frame-options: SAMEORIGIN
x-permitted-cross-domain-policies: none
x-xss-protection: "1; mode=block"
caddy__contact_email: tech.aurore@lists.crans.org
caddy__errors:
- root: "{{ caddy__error_dir }}"
- rewrite: /error.html
- file_server: true
templates: true
caddy__servers:
https:
listen: ":443"
routes: "{{ caddy__routes_https }}"
errors: "{{ caddy__errors }}"
http:
listen: ":80"
...

View file

@ -1,11 +0,0 @@
---
systemd_link__links:
isp0: 02:00:00:6a:3e:f4
ifupdown2__interfaces:
isp0:
addresses:
- 2a09:6840:210::1:3/64
- 10.210.1.3/16
gateways: "{{ ifupdown2__gateways.isp }}"
...

View file

@ -1,11 +0,0 @@
---
systemd_link__links:
isp0: 04:00:00:29:6d:c9
ifupdown2__interfaces:
isp0:
addresses:
- 2a09:6840:210::1:4/64
- 10.210.1.4/16
gateways: "{{ ifupdown2__gateways.isp }}"
...

View file

@ -1,93 +0,0 @@
---
switch_vars:
name: sw-ec-1
location: "Local_de_Brassage_EdC"
host: 10.130.4.11
port: 80
username: "{{ vault_switch.username }}"
password: "{{ vault_switch.password }}"
delete_vlans: []
vlans:
- id: 40
name: "Filaire_EDC"
tagged: "{{ '9-10,12,14,16,18,20,22-25' | range2list }}"
- id: 41
name: "Wifi_EDC"
tagged: "{{ '5-10,12,14,16,18,20,22-25' | range2list }}"
- id: 42
name: "Banni_EDC"
tagged: "{{ '5-10,12,14,16,18,20,22-25' | range2list }}"
- id: 43
name: "Accueil_EDC"
tagged: "{{ '5-10,12,14,16,18,20,22-25' | range2list }}"
- id: 110
name: "Adherents_IP_Publiques"
tagged: "{{ '9-10,12,14,16,18,20,22-25' | range2list }}"
- id: 111
name: "Serveurs_IP_Publiques"
tagged: "{{ '25' | range2list }}"
- id: 131
name: "Onduleurs"
tagged: [25]
- id: 144
name: "Bornes_Wifi_EDC"
tagged: [25]
untagged: "{{ '5-8,12,14,16,18,20,22-24' | range2list }}"
ports:
- id: 1
name: "Room_Ouest_363"
- id: 2
name: "Room_Ouest_364"
- id: 3
name: "Room_Principale_Foyer_1"
- id: 4
name: "Room_Principale_Foyer_2"
- id: 5
name: "Borne_Principale_0_1"
- id: 6
name: "Borne_Principale_1_1"
- id: 7
name: "Borne_Principale_1_2"
- id: 8
name: "Borne_Principale_1_3"
- id: 9
name: "Room_Ouest_352"
- id: 10
name: "Borne_Adh_Ouest_252"
- id: 11
name: "Room_Ouest_273"
- id: 12
name: "Borne_Adh_Est_231"
- id: 13
name: "Room_Ouest_261"
- id: 14
name: "Borne_Adh_Ouest_272"
- id: 15
name: "Room_Ouest_262"
- id: 16
name: "Room_Est_225"
- id: 17
name: "Room_Ouest_263"
- id: 18
name: "Room_Ouest_76"
- id: 19
name: "Room_Ouest_264"
- id: 20
name: "Borne_Adh_Ouest_58"
- id: 21
name: "Room_Ouest_265"
- id: 22
name: "Not_used"
- id: 23
name: "Room_Ouest_158"
- id: 24
name: "Borne_Adh_Ouest_267"
# id: 25
# name: "Uplink_sw-ec-core"
- id: 26
name: "Not_used"
- id: 27
name: "Not_used"
- id: 28
name: "Not_used"
...

View file

@ -1,228 +0,0 @@
---
switch_vars:
name: sw-ec-2
location: Local de Brassage EdC
host: 10.130.4.12
port: 80
username: "{{ vault_switch.username }}"
password: "{{ vault_switch.password }}"
delete_vlans: []
vlans:
- id: 40
name: "Filaire_edc"
tagged: [49]
- id: 41
name: "Wifi_edc"
tagged: [49]
- id: 42
name: "Banni_edc"
tagged: [49]
- id: 43
name: "Accueil_edc"
tagged: [49]
- id: 110
name: "Adherents_ip_publiques"
tagged: [49]
- id: 111
name: "Serveurs_ip_publiques"
tagged: [49]
- id: 131
name: "Onduleurs"
tagged: [49]
- id: 144
name: "Bornes_wifi_edc"
tagged: [49]
ports:
- id: 1
name: "Room_edc_Aile_Principale_115"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 2
name: "Room_edc_Aile_Principale_103"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 3
name: "Room_edc_Aile_Principale_114"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 4
name: "Room_edc_Aile_Principale_102"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 5
name: "Room_edc_Aile_Principale_113"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 6
name: "Room_edc_Aile_Principale_101"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 7
name: "Room_edc_Aile_Principale_112"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 8
name: "Room_edc_Aile_Principale_100"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 9
name: "Room_edc_Aile_Principale_111"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 10
name: "Room_edc_Aile_Principale_215"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 11
name: "Room_edc_Aile_Principale_110"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 12
name: "Room_edc_Aile_Principale_214"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 13
name: "Room_edc_Aile_Principale_207"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 14
name: "Room_edc_Aile_Est_24"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 15
name: "Room_edc_Aile_Principale_206"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 16
name: "Room_edc_Aile_Est_25"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 17
name: "Room_edc_Aile_Principale_205"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 18
name: "Room_edc_Aile_Est_26"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 19
name: "Room_edc_Aile_Principale_204"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 20
name: "Room_edc_Aile_Est_27"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 21
name: "Room_edc_Aile_Principale_203"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 22
name: "Room_edc_Aile_Est_28"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 23
name: "Room_edc_Aile_Principale_202"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 24
name: "Room_edc_Aile_Est_29"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 25
name: "Room_edc_Aile_Principale_201"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 26
name: "Room_edc_Aile_Est_30"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 27
name: "Room_edc_Aile_Principale_200"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 28
name: "Room_edc_Aile_Est_31"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 29
name: "Room_edc_Aile_Est_20"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 30
name: "Room_edc_Aile_Est_32"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 31
name: "Room_edc_Aile_Est_21"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 32
name: "Room_edc_Aile_Est_33"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 33
name: "Room_edc_Aile_Est_22"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 34
name: "Room_edc_Aile_Est_34"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 35
name: "Room_edc_Aile_Est_23"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 36
name: "Room_edc_Aile_Est_120"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 37
name: "Room_edc_Aile_Principale_109"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 38
name: "Room_edc_Aile_Principale_213"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 39
name: "Room_edc_Aile_Principale_108"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 40
name: "Room_edc_Aile_Principale_212"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 41
name: "Room_edc_Aile_Principale_107"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 42
name: "Room_edc_Aile_Principale_211"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 43
name: "Room_edc_Aile_Principale_106"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 44
name: "Room_edc_Aile_Principale_210"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 45
name: "Room_edc_Aile_Principale_105"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 46
name: "Room_edc_Aile_Principale_209"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 47
name: "Room_edc_Aile_Principale_104"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 48
name: "Room_edc_Aile_Principale_208"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
...

View file

@ -1,220 +0,0 @@
---
switch_vars:
name: sw-ec-3
location: Local de Brassage EdC
host: 10.130.4.13
port: 80
username: "{{ vault_switch.username }}"
password: "{{ vault_switch.password }}"
delete_vlans: []
vlans:
- id: 40
name: "Filaire_edc"
tagged: [49]
- id: 41
name: "Wifi_edc"
tagged: [49]
- id: 42
name: "Banni_edc"
tagged: [49]
- id: 43
name: "Accueil_edc"
tagged: [49]
- id: 110
name: "Adherents_ip_publiques"
tagged: [49]
- id: 111
name: "Serveurs_ip_publiques"
tagged: [49]
- id: 131
name: "Onduleurs"
tagged: [49]
- id: 144
name: "Bornes_wifi_edc"
tagged: [49]
ports:
- id: 1
name: "Room_edc_Aile_Est_121"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 2
name: "Room_edc_Aile_Est_133"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 3
name: "Room_edc_Aile_Est_122"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 4
name: "Room_edc_Aile_Est_134"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 5
name: "Room_edc_Aile_Est_123"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 6
name: "Room_edc_Aile_Est_135"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 7
name: "Room_edc_Aile_Est_124"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 8
name: "Room_edc_Aile_Est_136"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 9
name: "Room_edc_Aile_Est_125"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 10
name: "Room_edc_Aile_Est_137"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 11
name: "Room_edc_Aile_Est_126"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 12
name: "Room_edc_Aile_Est_138"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 14
name: "Room_edc_Aile_Est_237"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 15
name: "Room_edc_Aile_Est_226"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 16
name: "Room_edc_Aile_Est_238"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 17
name: "Room_edc_Aile_Est_227"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 18
name: "Room_edc_Aile_Est_239"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 19
name: "Room_edc_Aile_Est_228"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 20
name: "Room_edc_Aile_Est_333"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 21
name: "Room_edc_Aile_Est_229"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 22
name: "Room_edc_Aile_Est_332"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 24
name: "Room_edc_Aile_Est_331"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 25
name: "Room_edc_Aile_Est_231"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 26
name: "Room_edc_Aile_Est_330"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 27
name: "Room_edc_Aile_Est_232"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 28
name: "Room_edc_Aile_Est_329"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 29
name: "Room_edc_Aile_Est_233"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 30
name: "Room_edc_Aile_Est_328"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 31
name: "Room_edc_Aile_Est_234"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 32
name: "Room_edc_Aile_Est_327"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 33
name: "Room_edc_Aile_Est_235"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 34
name: "Room_edc_Aile_Est_326"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 35
name: "Room_edc_Aile_Est_236"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 36
name: "Room_edc_Aile_Est_325"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 37
name: "Room_edc_Aile_Est_127"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 38
name: "Room_edc_Aile_Est_139"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 39
name: "Room_edc_Aile_Est_128"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 40
name: "Room_edc_Aile_Est_220"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 41
name: "Room_edc_Aile_Est_129"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 42
name: "Room_edc_Aile_Est_221"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 43
name: "Room_edc_Aile_Est_130"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 44
name: "Room_edc_Aile_Est_222"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 45
name: "Room_edc_Aile_Est_131"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 46
name: "Room_edc_Aile_Est_223"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 47
name: "Room_edc_Aile_Est_132"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 48
name: "Room_edc_Aile_Est_224"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
...

View file

@ -1,224 +0,0 @@
---
switch_vars:
name: sw-ec-4
location: Local de Brassage EdC
host: 10.130.4.14
port: 80
username: "{{ vault_switch.username }}"
password: "{{ vault_switch.password }}"
delete_vlans: []
vlans:
- id: 40
name: "Filaire_edc"
tagged: [49]
- id: 41
name: "Wifi_edc"
tagged: [49]
- id: 42
name: "Banni_edc"
tagged: [49]
- id: 43
name: "Accueil_edc"
tagged: [49]
- id: 110
name: "Adherents_ip_publiques"
tagged: [49]
- id: 111
name: "Serveurs_ip_publiques"
tagged: [49]
- id: 131
name: "Onduleurs"
tagged: [49]
- id: 144
name: "Bornes_wifi_edc"
tagged: [49]
ports:
- id: 1
name: "Room_edc_Aile_Est_324"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 2
name: "Room_edc_Aile_Ouest_57"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 3
name: "Room_edc_Aile_Est_323"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 4
name: "Not_used"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 5
name: "Room_edc_Aile_Est_322"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 6
name: "Room_edc_Aile_Ouest_59"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 7
name: "Room_edc_Aile_Est_321"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 8
name: "Room_edc_Aile_Ouest_60"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 9
name: "Room_edc_Aile_Est_320"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 10
name: "Room_edc_Aile_Ouest_61"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 11
name: "Room_edc_Aile_Ouest_50"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 12
name: "Room_edc_Aile_Ouest_62"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 13
name: "Room_edc_Aile_Ouest_69"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 14
name: "Room_edc_Aile_Ouest_153"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 15
name: "Room_edc_Aile_Ouest_70"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 16
name: "Room_edc_Aile_Ouest_154"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 17
name: "Room_edc_Aile_Ouest_71"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 18
name: "Room_edc_Aile_Ouest_155"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 19
name: "Room_edc_Aile_Ouest_72"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 20
name: "Room_edc_Aile_Ouest_156"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 21
name: "Room_edc_Aile_Ouest_73"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 22
name: "Room_edc_Aile_Ouest_157"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 23
name: "Room_edc_Aile_Ouest_74"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 25
name: "Room_edc_Aile_Ouest_75"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 26
name: "Room_edc_Aile_Ouest_159"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 27
name: "Room_edc_Aile_Ouest_76"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 28
name: "Room_edc_Aile_Ouest_160"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 29
name: "Room_edc_Aile_Ouest_77"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 30
name: "Room_edc_Aile_Ouest_161"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 31
name: "Room_edc_Aile_Ouest_150"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 32
name: "Room_edc_Aile_Ouest_162"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 33
name: "Room_edc_Aile_Ouest_151"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 34
name: "Room_edc_Aile_Ouest_163"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 35
name: "Room_edc_Aile_Ouest_152"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 36
name: "Room_edc_Aile_Ouest_164"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 37
name: "Room_edc_Aile_Ouest_51"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 38
name: "Room_edc_Aile_Ouest_63"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 39
name: "Room_edc_Aile_Ouest_52"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 40
name: "Room_edc_Aile_Ouest_64"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 41
name: "Room_edc_Aile_Ouest_53"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 42
name: "Room_edc_Aile_Ouest_65"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 43
name: "Room_edc_Aile_Ouest_54"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 44
name: "Room_edc_Aile_Ouest_66"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 45
name: "Room_edc_Aile_Ouest_55"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 46
name: "Room_edc_Aile_Ouest_67"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 47
name: "Room_edc_Aile_Ouest_56"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 48
name: "Room_edc_Aile_Ouest_68"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
...

View file

@ -1,224 +0,0 @@
---
switch_vars:
name: sw-ec-5
location: Local de Brassage EdC
host: 10.130.4.15
port: 80
username: "{{ vault_switch.username }}"
password: "{{ vault_switch.password }}"
delete_vlans: []
vlans:
- id: 40
name: "Filaire_edc"
tagged: [49]
- id: 41
name: "Wifi_edc"
tagged: [49]
- id: 42
name: "Banni_edc"
tagged: [49]
- id: 43
name: "Accueil_edc"
tagged: [49]
- id: 110
name: "Adherents_ip_publiques"
tagged: [49]
- id: 111
name: "Serveurs_ip_publiques"
tagged: [49]
- id: 131
name: "Onduleurs"
tagged: [49]
- id: 144
name: "Bornes_wifi_edc"
tagged: [49]
ports:
- id: 1
name: "Room_edc_Aile_Ouest_165"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 2
name: "Room_edc_Aile_Ouest_177"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 3
name: "Room_edc_Aile_Ouest_166"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 4
name: "Room_edc_Aile_Ouest_250"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 5
name: "Room_edc_Aile_Ouest_167"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 6
name: "Room_edc_Aile_Ouest_251"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 7
name: "Room_edc_Aile_Ouest_168"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 8
name: "Not_used"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 9
name: "Room_edc_Aile_Ouest_169"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 10
name: "Machine_ups-ec-2.ups.auro.re"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 11
name: "Room_edc_Aile_Ouest_170"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 12
name: "Room_edc_Aile_Ouest_254"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 13
name: "Room_edc_Aile_Ouest_357"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 14
name: "Room_edc_Aile_Est_230"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 15
name: "Room_edc_Aile_Ouest_358"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 16
name: "Room_edc_Aile_Ouest_274"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 17
name: "Room_edc_Aile_Ouest_359"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 18
name: "Room_edc_Aile_Ouest_275"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 19
name: "Room_edc_Aile_Ouest_360"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 20
name: "Room_edc_Aile_Ouest_276"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 21
name: "Room_edc_Aile_Ouest_361"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 22
name: "Room_edc_Aile_Ouest_277"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 23
name: "Room_edc_Aile_Ouest_362"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 24
name: "Room_edc_Aile_Ouest_350"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 25
name: "Not_used"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 26
name: "Room_edc_Aile_Ouest_351"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 27
name: "Room_edc_Aile_Ouest_268"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 28
name: "Room_edc_Aile_Ouest_253"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 29
name: "Room_edc_Aile_Ouest_269"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 30
name: "Room_edc_Aile_Ouest_353"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 31
name: "Room_edc_Aile_Ouest_270"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 32
name: "Room_edc_Aile_Ouest_354"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 33
name: "Room_edc_Aile_Ouest_271"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 34
name: "Room_edc_Aile_Ouest_355"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 36
name: "Room_edc_Aile_Ouest_356"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 37
name: "Room_edc_Aile_Ouest_171"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 38
name: "Room_edc_Aile_Ouest_255"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 39
name: "Room_edc_Aile_Ouest_172"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 40
name: "Room_edc_Aile_Ouest_256"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 41
name: "Room_edc_Aile_Ouest_173"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 42
name: "Room_edc_Aile_Ouest_257"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 43
name: "Room_edc_Aile_Ouest_174"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 44
name: "Room_edc_Aile_Ouest_258"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 45
name: "Room_edc_Aile_Ouest_175"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 46
name: "Room_edc_Aile_Ouest_259"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 47
name: "Room_edc_Aile_Ouest_176"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 48
name: "Room_edc_Aile_Ouest_260"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
...

View file

@ -1,54 +0,0 @@
---
switch_vars:
name: sw-fa-1
location: Fleming
host: 10.130.1.51
port: 80
username: "{{ vault_switch.username }}"
password: "{{ vault_switch.password }}"
delete_vlans: []
vlans:
- id: 10
name: "Filaire_fleming"
tagged: [25]
- id: 11
name: "Wifi_fleming"
tagged: "{{ '1-5,25' | range2list }}"
- id: 12
name: "Banni_fleming"
tagged: "{{ '1-5,25' | range2list }}"
- id: 13
name: "Accueil_fleming"
tagged: "{{ '1-5,25' | range2list }}"
- id: 110
name: "Adherents_ip_publiques"
tagged: [25]
- id: 131
name: "Onduleurs"
tagged: [25]
- id: 141
name: "Bornes_fleming"
tagged: [25]
untagged: "{{ '1-5' | range2list }}"
ports:
- id: 1
name: "Machine_fa-0-1.borne.auro.re"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 2
name: "Machine_fa-1-1.borne.auro.re"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 3
name: "Machine_fa-2-1.borne.auro.re"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 4
name: "Machine_fa-3-1.borne.auro.re"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 5
name: "Machine_fa-4-1.borne.auro.re"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
...

View file

@ -1,145 +0,0 @@
---
switch_vars:
name: sw-fa-2
location: Fleming
host: 10.130.1.52
port: 80
username: "{{ vault_switch.username }}"
password: "{{ vault_switch.password }}"
delete_vlans: []
vlans:
- id: 10
name: "Filaire_fleming"
tagged: [49]
- id: 11
name: "Wifi_fleming"
tagged: [49]
- id: 12
name: "Banni_fleming"
tagged: [49]
- id: 13
name: "Accueil_fleming"
tagged: [49]
- id: 110
name: "Adherents_ip_publiques"
tagged: [49]
- id: 131
name: "Onduleurs"
tagged: [49]
- id: 141
name: "Bornes_fleming"
tagged: [49]
ports:
- id: 1
name: "Room_Fleming_Village_1_Bat_11A_409"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 2
name: "Room_Fleming_Village_1_Bat_11A_410"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 3
name: "Room_Fleming_Village_1_Bat_11A_411"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 4
name: "Room_Fleming_Village_1_Bat_11A_412"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 5
name: "Room_Fleming_Village_1_Bat_11A_001"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 6
name: "Room_Fleming_Village_1_Bat_11A_002"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 7
name: "Room_Fleming_Village_1_Bat_11A_002"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 8
name: "Room_Fleming_Village_1_Bat_11A_003"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 9
name: "Room_Fleming_Village_1_Bat_11A_004"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 10
name: "Room_Fleming_Village_1_Bat_11A_005"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 11
name: "Room_Fleming_Village_1_Bat_11A_006"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 12
name: "Room_Fleming_Village_1_Bat_11A_007"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 13
name: "Room_Fleming_Village_1_Bat_11A_008"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 14
name: "Room_Fleming_Village_1_Bat_11A_009"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 15
name: "Room_Fleming_Village_1_Bat_11A_010"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 16
name: "Room_Fleming_Village_1_Bat_11A_011"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 19
name: "Room_Fleming_Village_1_Bat_11A_J02"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 20
name: "Room_Fleming_Village_1_Bat_11A_J02"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 21
name: "Room_Fleming_Village_1_Bat_11A_J03"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 22
name: "Room_Fleming_Village_1_Bat_11A_J04"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 23
name: "Room_Fleming_Village_1_Bat_11A_J05"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 24
name: "Room_Fleming_Village_1_Bat_11A_J06"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 25
name: "Room_Fleming_Village_1_Bat_11A_J07"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 26
name: "Room_Fleming_Village_1_Bat_11A_J08"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 27
name: "Room_Fleming_Village_1_Bat_11A_J09"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 28
name: "Room_Fleming_Village_1_Bat_11A_J10"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 29
name: "Room_Fleming_Village_1_Bat_11A_J11"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 30
name: "Room_Fleming_Village_1_Bat_11A_J01"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
...

View file

@ -1,225 +0,0 @@
---
switch_vars:
name: sw-fa-3
location: Fleming
host: 10.130.1.53
port: 80
username: "{{ vault_switch.username }}"
password: "{{ vault_switch.password }}"
delete_vlans: []
vlans:
- id: 10
name: "Filaire_fleming"
tagged: [49]
- id: 11
name: "Wifi_fleming"
tagged: [49]
- id: 12
name: "Banni_fleming"
tagged: [49]
- id: 13
name: "Accueil_fleming"
tagged: [49]
- id: 110
name: "Adherents_ip_publiques"
tagged: [49]
- id: 131
name: "Onduleurs"
tagged: [49]
- id: 141
name: "Bornes_fleming"
tagged: [49]
ports:
- id: 1
name: "Room_Fleming_Village_1_Bat_11A_101"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 2
name: "Room_Fleming_Village_1_Bat_11A_102g"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 3
name: "Room_Fleming_Village_1_Bat_11A_102d"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 4
name: "Room_Fleming_Village_1_Bat_11A_103"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 5
name: "Room_Fleming_Village_1_Bat_11A_104"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 6
name: "Room_Fleming_Village_1_Bat_11A_105"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 7
name: "Room_Fleming_Village_1_Bat_11A_106"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 8
name: "Room_Fleming_Village_1_Bat_11A_107"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 9
name: "Room_Fleming_Village_1_Bat_11A_108"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 10
name: "Room_Fleming_Village_1_Bat_11A_109"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 11
name: "Room_Fleming_Village_1_Bat_11A_110"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 12
name: "Room_Fleming_Village_1_Bat_11A_111"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 13
name: "Room_Fleming_Village_1_Bat_11A_112"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 14
name: "Room_Fleming_Village_1_Bat_11A_201"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 15
name: "Room_Fleming_Village_1_Bat_11A_202g"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 16
name: "Room_Fleming_Village_1_Bat_11A_202d"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 17
name: "Room_Fleming_Village_1_Bat_11A_203"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 18
name: "Room_Fleming_Village_1_Bat_11A_204"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 19
name: "Room_Fleming_Village_1_Bat_11A_205"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 20
name: "Room_Fleming_Village_1_Bat_11A_206"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 21
name: "Room_Fleming_Village_1_Bat_11A_207"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 22
name: "Room_Fleming_Village_1_Bat_11A_208"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 23
name: "Room_Fleming_Village_1_Bat_11A_209"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 24
name: "Room_Fleming_Village_1_Bat_11A_210"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 25
name: "Room_Fleming_Village_1_Bat_11A_211"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 26
name: "Room_Fleming_Village_1_Bat_11A_212"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 27
name: "Room_Fleming_Village_1_Bat_11A_301"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 28
name: "Room_Fleming_Village_1_Bat_11A_302g"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 29
name: "Room_Fleming_Village_1_Bat_11A_302d"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 30
name: "Room_Fleming_Village_1_Bat_11A_303"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 31
name: "Room_Fleming_Village_1_Bat_11A_304"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 32
name: "Room_Fleming_Village_1_Bat_11A_305"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 33
name: "Room_Fleming_Village_1_Bat_11A_306"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 34
name: "Room_Fleming_Village_1_Bat_11A_307"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 35
name: "Room_Fleming_Village_1_Bat_11A_308"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 36
name: "Room_Fleming_Village_1_Bat_11A_309"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 37
name: "Room_Fleming_Village_1_Bat_11A_310"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 38
name: "Room_Fleming_Village_1_Bat_11A_311"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 39
name: "Room_Fleming_Village_1_Bat_11A_312"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 40
name: "Room_Fleming_Village_1_Bat_11A_401"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 41
name: "Room_Fleming_Village_1_Bat_11A_402g"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 42
name: "Room_Fleming_Village_1_Bat_11A_402d"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 43
name: "Room_Fleming_Village_1_Bat_11A_403"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 44
name: "Room_Fleming_Village_1_Bat_11A_404"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 45
name: "Room_Fleming_Village_1_Bat_11A_405"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 46
name: "Room_Fleming_Village_1_Bat_11A_406"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 47
name: "Room_Fleming_Village_1_Bat_11A_407"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 48
name: "Room_Fleming_Village_1_Bat_11A_408"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
...

View file

@ -1,118 +0,0 @@
---
switch_vars:
name: sw-fb-1
location: Fleming
host: 10.130.1.61
port: 80
username: "{{ vault_switch.username }}"
password: "{{ vault_switch.password }}"
delete_vlans: []
vlans:
- id: 10
name: "Filaire_fleming"
tagged: [25]
- id: 11
name: "Wifi_fleming"
tagged: "{{ '17-21,25' | range2list }}"
- id: 12
name: "Banni_fleming"
tagged: "{{ '17-21,25' | range2list }}"
- id: 13
name: "Accueil_fleming"
tagged: "{{ '17-21,25' | range2list }}"
- id: 110
name: "Adherents_ip_publiques"
tagged: [25]
- id: 131
name: "Onduleurs"
tagged: [25]
- id: 141
name: "Bornes_fleming"
tagged: [25]
untagged: "{{ '17-21' | range2list }}"
ports:
- id: 1
name: "Room_Fleming_Village_1_Bat_12B_409"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 2
name: "Room_Fleming_Village_1_Bat_12B_410"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 3
name: "Room_Fleming_Village_1_Bat_12B_411"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 4
name: "Room_Fleming_Village_1_Bat_12B_412"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 5
name: "Room_Fleming_Village_1_Bat_12B_001"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 6
name: "Room_Fleming_Village_1_Bat_12B_002g"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 7
name: "Room_Fleming_Village_1_Bat_12B_002d"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 8
name: "Room_Fleming_Village_1_Bat_12B_003"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 9
name: "Room_Fleming_Village_1_Bat_12B_004"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 10
name: "Room_Fleming_Village_1_Bat_12B_005"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 11
name: "Room_Fleming_Village_1_Bat_12B_006"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 12
name: "Room_Fleming_Village_1_Bat_12B_007"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 13
name: "Room_Fleming_Village_1_Bat_12B_008"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 14
name: "Room_Fleming_Village_1_Bat_12B_009"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 15
name: "Room_Fleming_Village_1_Bat_12B_010"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 16
name: "Room_Fleming_Village_1_Bat_12B_011"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 17
name: "Machine_fb-0-1.borne.auro.re"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 18
name: "Machine_fb-1-1.borne.auro.re"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 19
name: "Machine_fb-2-1.borne.auro.re"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 20
name: "Machine_fb-3-1.borne.auro.re"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 21
name: "Machine_fb-4-1.borne.auro.re"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
...

View file

@ -1,225 +0,0 @@
---
switch_vars:
name: sw-fb-2
location: Fleming
host: 10.130.1.62
port: 80
username: "{{ vault_switch.username }}"
password: "{{ vault_switch.password }}"
delete_vlans: []
vlans:
- id: 10
name: "Filaire_fleming"
tagged: [49]
- id: 11
name: "Wifi_fleming"
tagged: [49]
- id: 12
name: "Banni_fleming"
tagged: [49]
- id: 13
name: "Accueil_fleming"
tagged: [49]
- id: 110
name: "Adherents_ip_publiques"
tagged: [49]
- id: 131
name: "Onduleurs"
tagged: [49]
- id: 141
name: "Bornes_fleming"
tagged: [49]
ports:
- id: 1
name: "Room_Fleming_Village_1_Bat_12B_101"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 2
name: "Room_Fleming_Village_1_Bat_12B_102g"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 3
name: "Room_Fleming_Village_1_Bat_12B_102d"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 4
name: "Room_Fleming_Village_1_Bat_12B_103"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 5
name: "Room_Fleming_Village_1_Bat_12B_104"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 6
name: "Room_Fleming_Village_1_Bat_12B_105"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 7
name: "Room_Fleming_Village_1_Bat_12B_106"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 8
name: "Room_Fleming_Village_1_Bat_12B_107"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 9
name: "Room_Fleming_Village_1_Bat_12B_108"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 10
name: "Room_Fleming_Village_1_Bat_12B_109"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 11
name: "Room_Fleming_Village_1_Bat_12B_110"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 12
name: "Room_Fleming_Village_1_Bat_12B_111"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 13
name: "Room_Fleming_Village_1_Bat_12B_112"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 14
name: "Room_Fleming_Village_1_Bat_12B_201"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 15
name: "Room_Fleming_Village_1_Bat_12B_202g"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 16
name: "Room_Fleming_Village_1_Bat_12B_202d"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 17
name: "Room_Fleming_Village_1_Bat_12B_203"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 18
name: "Room_Fleming_Village_1_Bat_12B_204"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 19
name: "Room_Fleming_Village_1_Bat_12B_205"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 20
name: "Room_Fleming_Village_1_Bat_12B_206"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 21
name: "Room_Fleming_Village_1_Bat_12B_207"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 22
name: "Room_Fleming_Village_1_Bat_12B_208"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 23
name: "Room_Fleming_Village_1_Bat_12B_209"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 24
name: "Room_Fleming_Village_1_Bat_12B_210"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 25
name: "Room_Fleming_Village_1_Bat_12B_211"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 26
name: "Room_Fleming_Village_1_Bat_12B_212"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 27
name: "Room_Fleming_Village_1_Bat_12B_301"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 28
name: "Room_Fleming_Village_1_Bat_12B_302g"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 29
name: "Room_Fleming_Village_1_Bat_12B_302d"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 30
name: "Room_Fleming_Village_1_Bat_12B_303"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 31
name: "Room_Fleming_Village_1_Bat_12B_304"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 32
name: "Room_Fleming_Village_1_Bat_12B_305"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 33
name: "Room_Fleming_Village_1_Bat_12B_306"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 34
name: "Room_Fleming_Village_1_Bat_12B_307"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 35
name: "Room_Fleming_Village_1_Bat_12B_308"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 36
name: "Room_Fleming_Village_1_Bat_12B_309"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 37
name: "Room_Fleming_Village_1_Bat_12B_310"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 38
name: "Room_Fleming_Village_1_Bat_12B_311"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 39
name: "Room_Fleming_Village_1_Bat_12B_312"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 40
name: "Room_Fleming_Village_1_Bat_12B_401"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 41
name: "Room_Fleming_Village_1_Bat_12B_402g"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 42
name: "Room_Fleming_Village_1_Bat_12B_402d"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 43
name: "Room_Fleming_Village_1_Bat_12B_403"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 44
name: "Room_Fleming_Village_1_Bat_12B_404"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 45
name: "Room_Fleming_Village_1_Bat_12B_405"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 46
name: "Room_Fleming_Village_1_Bat_12B_406"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 47
name: "Room_Fleming_Village_1_Bat_12B_407"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 48
name: "Room_Fleming_Village_1_Bat_12B_408"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
...

View file

@ -1,106 +0,0 @@
---
switch_vars:
name: sw-fc-1
location: Fleming
host: 10.130.1.71
port: 80
username: "{{ vault_switch.username }}"
password: "{{ vault_switch.password }}"
delete_vlans: []
vlans:
- id: 10
name: "Filaire_fleming"
tagged: [25]
- id: 11
name: "Wifi_fleming"
tagged: "{{ '15-19,25' | range2list }}"
- id: 12
name: "Banni_fleming"
tagged: "{{ '15-19,25' | range2list }}"
- id: 13
name: "Accueil_fleming"
tagged: "{{ '15-19,25' | range2list }}"
- id: 110
name: "Adherents_ip_publiques"
tagged: [25]
- id: 131
name: "Onduleurs"
tagged: [25]
- id: 141
name: "Bornes_fleming"
tagged: [25]
untagged: "{{ '15-19' | range2list }}"
ports:
- id: 1
name: "Room_Fleming_Village_Bat13C_401"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 2
name: "Room_Fleming_Village_Bat13C_402g"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 3
name: "Room_Fleming_Village_Bat13C_402d"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 4
name: "Room_Fleming_Village_Bat13C_403"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 5
name: "Room_Fleming_Village_Bat13C_404"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 6
name: "Room_Fleming_Village_Bat13C_405"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 7
name: "Room_Fleming_Village_Bat13C_406"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 8
name: "Room_Fleming_Village_Bat13C_407"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 9
name: "Room_Fleming_Village_Bat13C_408"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 10
name: "Room_Fleming_Village_Bat13C_409"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 11
name: "Room_Fleming_Village_Bat13C_410"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 12
name: "Room_Fleming_Village_Bat13C_411"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 13
name: "Room_Fleming_Village_Bat13C_412"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 15
name: "Machine_fc-0-1.borne.auro.re"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 16
name: "Machine_fc-1-1.borne.auro.re"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 17
name: "Machine_fc-2-1.borne.auro.re"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 18
name: "Machine_fc-3-1.borne.auro.re"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 19
name: "Machine_fc-4-1.borne.auro.re"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
...

View file

@ -1,225 +0,0 @@
---
switch_vars:
name: sw-fc-2
location: Fleming
host: 10.130.1.72
port: 80
username: "{{ vault_switch.username }}"
password: "{{ vault_switch.password }}"
delete_vlans: []
vlans:
- id: 10
name: "Filaire_fleming"
tagged: [49]
- id: 11
name: "Wifi_fleming"
tagged: [49]
- id: 12
name: "Banni_fleming"
tagged: [49]
- id: 13
name: "Accueil_fleming"
tagged: [49]
- id: 110
name: "Adherents_ip_publiques"
tagged: [49]
- id: 131
name: "Onduleurs"
tagged: [49]
- id: 141
name: "Bornes_fleming"
tagged: [49]
ports:
- id: 1
name: "Room_Fleming_Village_1_Bat_13C_001"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 2
name: "Room_Fleming_Village_1_Bat_13C_002"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 3
name: "Room_Fleming_Village_1_Bat_13C_003"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 4
name: "Room_Fleming_Village_1_Bat_13C_004"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 5
name: "Room_Fleming_Village_1_Bat_13C_005"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 6
name: "Room_Fleming_Village_1_Bat_13C_006"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 7
name: "Room_Fleming_Village_1_Bat_13C_007"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 8
name: "Room_Fleming_Village_1_Bat_13C_008"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 9
name: "Room_Fleming_Village_1_Bat_13C_009"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 10
name: "Room_Fleming_Village_1_Bat_13C_101"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 11
name: "Room_Fleming_Village_1_Bat_13C_102g"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 12
name: "Room_Fleming_Village_1_Bat_13C_102d"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 13
name: "Room_Fleming_Village_1_Bat_13C_103"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 14
name: "Room_Fleming_Village_1_Bat_13C_104"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 15
name: "Room_Fleming_Village_1_Bat_13C_105"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 16
name: "Room_Fleming_Village_1_Bat_13C_106"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 17
name: "Room_Fleming_Village_1_Bat_13C_107"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 18
name: "Room_Fleming_Village_1_Bat_13C_108"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 19
name: "Room_Fleming_Village_1_Bat_13C_109"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 20
name: "Room_Fleming_Village_1_Bat_13C_110"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 21
name: "Room_Fleming_Village_1_Bat_13C_111"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 22
name: "Room_Fleming_Village_1_Bat_13C_112"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 23
name: "Room_Fleming_Village_1_Bat_13C_201"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 24
name: "Room_Fleming_Village_1_Bat_13C_202g"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 25
name: "Room_Fleming_Village_1_Bat_13C_202d"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 26
name: "Room_Fleming_Village_1_Bat_13C_203"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 27
name: "Room_Fleming_Village_1_Bat_13C_204"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 28
name: "Room_Fleming_Village_1_Bat_13C_205"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 29
name: "Room_Fleming_Village_1_Bat_13C_206"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 30
name: "Room_Fleming_Village_1_Bat_13C_207"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 31
name: "Room_Fleming_Village_1_Bat_13C_208"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 32
name: "Room_Fleming_Village_1_Bat_13C_209"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 33
name: "Room_Fleming_Village_1_Bat_13C_210"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 34
name: "Room_Fleming_Village_1_Bat_13C_211"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 35
name: "Room_Fleming_Village_1_Bat_13C_212"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 36
name: "Room_Fleming_Village_1_Bat_13C_301"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 37
name: "Room_Fleming_Village_1_Bat_13C_302g"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 38
name: "Room_Fleming_Village_1_Bat_13C_302d"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 39
name: "Room_Fleming_Village_1_Bat_13C_303"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 40
name: "Room_Fleming_Village_1_Bat_13C_304"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 41
name: "Room_Fleming_Village_1_Bat_13C_305"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 42
name: "Room_Fleming_Village_1_Bat_13C_306"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 43
name: "Room_Fleming_Village_1_Bat_13C_307"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 44
name: "Room_Fleming_Village_1_Bat_13C_308"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 45
name: "Room_Fleming_Village_1_Bat_13C_309"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 46
name: "Room_Fleming_Village_1_Bat_13C_310"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 47
name: "Room_Fleming_Village_1_Bat_13C_311"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 48
name: "Room_Fleming_Village_1_Bat_13C_312"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
...

View file

@ -1,114 +0,0 @@
---
switch_vars:
name: sw-fd-1
location: Fleming
host: 10.130.1.81
port: 80
username: "{{ vault_switch.username }}"
password: "{{ vault_switch.password }}"
delete_vlans: []
vlans:
- id: 10
name: "Filaire_fleming"
tagged: [25]
- id: 11
name: "Wifi_fleming"
tagged: "{{ '19-22,25' | range2list }}"
- id: 12
name: "Banni_fleming"
tagged: "{{ '19-22,25' | range2list }}"
- id: 13
name: "Accueil_fleming"
tagged: "{{ '19-22,25' | range2list }}"
- id: 110
name: "Adherents_ip_publiques"
tagged: [25]
- id: 131
name: "Onduleurs"
tagged: [25]
- id: 141
name: "Bornes_fleming"
tagged: [25]
untagged: "{{ '19-22' | range2list }}"
ports:
- id: 1
name: "Room_Fleming_Village_1_Bat_14D_310"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 2
name: "Room_Fleming_Village_1_Bat_14D_311"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 3
name: "Room_Fleming_Village_1_Bat_14D_312"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 4
name: "Room_Fleming_Village_1_Bat_14D_401"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 5
name: "Room_Fleming_Village_1_Bat_14D_402g"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 6
name: "Room_Fleming_Village_1_Bat_14D_402d"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 7
name: "Room_Fleming_Village_1_Bat_14D_403"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 8
name: "Room_Fleming_Village_1_Bat_14D_404"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 9
name: "Room_Fleming_Village_1_Bat_14D_405"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 10
name: "Room_Fleming_Village_1_Bat_14D_406"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 11
name: "Room_Fleming_Village_1_Bat_14D_407"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 12
name: "Room_Fleming_Village_1_Bat_14D_408"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 13
name: "Room_Fleming_Village_1_Bat_14D_409"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 14
name: "Room_Fleming_Village_1_Bat_14D_410"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 15
name: "Room_Fleming_Village_1_Bat_14D_411"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 16
name: "Room_Fleming_Village_1_Bat_14D_412"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 19
name: "Machine: fd-0-1.borne.auro.re"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 20
name: "Machine: fd-1-1.borne.auro.re"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 21
name: "Machine: fd-2-1.borne.auro.re"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 22
name: "Machine: fd-3-1.borne.auro.re"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
...

View file

@ -1,225 +0,0 @@
---
switch_vars:
name: sw-fd-2
location: Fleming
host: 10.130.1.72
port: 80
username: "{{ vault_switch.username }}"
password: "{{ vault_switch.password }}"
delete_vlans: []
vlans:
- id: 10
name: "Filaire_fleming"
tagged: [49]
- id: 11
name: "Wifi_fleming"
tagged: [49]
- id: 12
name: "Banni_fleming"
tagged: [49]
- id: 13
name: "Accueil_fleming"
tagged: [49]
- id: 110
name: "Adherents_ip_publiques"
tagged: [49]
- id: 131
name: "Onduleurs"
tagged: [49]
- id: 141
name: "Bornes_fleming"
tagged: [49]
ports:
- id: 1
name: "Room_Fleming_Village_1_Bat_14D_001"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 2
name: "Room_Fleming_Village_1_Bat_14D_002"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 3
name: "Room_Fleming_Village_1_Bat_14D_003"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 4
name: "Room_Fleming_Village_1_Bat_14D_004"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 5
name: "Room_Fleming_Village_1_Bat_14D_005"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 6
name: "Room_Fleming_Village_1_Bat_14D_006"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 7
name: "Room_Fleming_Village_1_Bat_14D_007"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 8
name: "Room_Fleming_Village_1_Bat_14D_008"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 9
name: "Room_Fleming_Village_1_Bat_14D_009"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 10
name: "Room_Fleming_Village_1_Bat_14D_010"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 11
name: "Room_Fleming_Village_1_Bat_14D_Salon"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 12
name: "Room_Fleming_Village_1_Bat_14D_101"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 13
name: "Room_Fleming_Village_1_Bat_14D_102g"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 14
name: "Room_Fleming_Village_1_Bat_14D_102d"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 15
name: "Room_Fleming_Village_1_Bat_14D_103"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 16
name: "Room_Fleming_Village_1_Bat_14D_104"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 17
name: "Room_Fleming_Village_1_Bat_14D_105"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 18
name: "Room_Fleming_Village_1_Bat_14D_105prime"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 19
name: "Room_Fleming_Village_1_Bat_14D_106"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 20
name: "Room_Fleming_Village_1_Bat_14D_107"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 21
name: "Room_Fleming_Village_1_Bat_14D_108"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 22
name: "Room_Fleming_Village_1_Bat_14D_109"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 23
name: "Room_Fleming_Village_1_Bat_14D_110"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 24
name: "Room_Fleming_Village_1_Bat_14D_111"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 25
name: "Room_Fleming_Village_1_Bat_14D_Salon1"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 26
name: "Room_Fleming_Village_1_Bat_14D_201"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 27
name: "Room_Fleming_Village_1_Bat_14D_202d"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 28
name: "Room_Fleming_Village_1_Bat_14D_202g"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 29
name: "Room_Fleming_Village_1_Bat_14D_203"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 30
name: "Room_Fleming_Village_1_Bat_14D_204"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 31
name: "Room_Fleming_Village_1_Bat_14D_205"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 32
name: "Room_Fleming_Village_1_Bat_14D_206"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 33
name: "Room_Fleming_Village_1_Bat_14D_207"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 34
name: "Room_Fleming_Village_1_Bat_14D_208"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 35
name: "Room_Fleming_Village_1_Bat_14D_209"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 36
name: "Room_Fleming_Village_1_Bat_14D_210"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 37
name: "Room_Fleming_Village_1_Bat_14D_211"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 38
name: "Room_Fleming_Village_1_Bat_14D_212"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 39
name: "Room_Fleming_Village_1_Bat_14D_301"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 40
name: "Room_Fleming_Village_1_Bat_14D_302d"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 41
name: "Room_Fleming_Village_1_Bat_14D_302g"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 42
name: "Room_Fleming_Village_1_Bat_14D_303"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 43
name: "Room_Fleming_Village_1_Bat_14D_304"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 44
name: "Room_Fleming_Village_1_Bat_14D_305"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 45
name: "Room_Fleming_Village_1_Bat_14D_306"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 46
name: "Room_Fleming_Village_1_Bat_14D_307"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 47
name: "Room_Fleming_Village_1_Bat_14D_308"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
- id: 48
name: "Room_Fleming_Village_1_Bat_14D_309"
lldp: "LPAS_TX_AND_RX"
loop_protect: true
...

Some files were not shown because too many files have changed in this diff Show more