feat(documentation): Document networking on krz01 and add a registry for our IP prefixes
Some checks failed
lint / check (push) Successful in 23s
build configuration / build_krz01 (push) Has been cancelled

This commit is contained in:
sinavir 2024-11-07 13:46:36 +01:00
parent 922c49e83c
commit 4a88031612
No known key found for this signature in database
2 changed files with 86 additions and 0 deletions

47
NETWORKING.md Normal file
View file

@ -0,0 +1,47 @@
# `krz01`
Le réseau est en IPv6 only grâce au /48 mwan
On a aussi un `/29` en v4 à utiliser avec parcimonie. (Il faudra déployer un sni-proxy un jour pour utiliser encore moins d'ip).
## Architecture du réseau
### Bridges (switchs virtuels)
- `vmbr0`: bridge pas vlan-aware, connecté à l'uplink ens. Le tunnel GRE milky wan passe par ce bridge
- `vmbr1`: bridge vlan-aware pour le LAN. Actuellement on a que 2 vlans:
- 2520: DMZ milky-wan
- 2530: DMZ Hurricane Electric
- Ne pas hésiter à en proposer d'autres
### Le routeur
Le routeur fait de la traduction d'addresses stateless pour nos v4 publiques (comprendre si le routeur reçoit un paquet à destination de `45.13.104.24/29` il traduira le paquet en IPv6 sur le préfixe `2a0e:e701:1120:1000:ffff::45.13.104.24/125`). Pour plus d'informations [https://nicmx.github.io/Jool/en/intro-xlat.html](https://nicmx.github.io/Jool/en/intro-xlat.html)
On utilise la NAT64 de milkywan pour pouvoir communiquer avec l'internet legacy. Il faut pour cela un DNS récursif spécial, le DNS64 (déployé sur `labcore01`). Plus d'infos sur [https://nicmx.github.io/Jool/en/dns64.html](https://nicmx.github.io/Jool/en/dns64.html) et sur internet.
### Affectation des préfixes
Cf [/registry.md](/registry.md)
Par défaut le /48 entier n'est pas routé, uniquement les sous-préfixes en utilisation. C'est à nous d'ajouter proprement les routes sur le routeur.
## Tuto
### Connecter une machine en IPv6 only
Il suffit d'ajouter une intarface sur `vmbr1` avec le vlan 2520.
Normalment le routeur annonce le info suivante:
- Préfixe SLAAC `2a0e:e701:1120:1000::/64`
- IP du routeur (gateway): `2a0e:e701:1120:1000::1`
- DNS: `2a0e:e701:1120:1000::f:1` (labcore01)
### Utiliser une ipv4 publique
On a un `/29` offert par mwan. Les étapes sont les suivantes:
1. Ajouter une entrée dans [/registry.md](/registry.md).
2. Ajouter l'ip `2a0e:e701:1120:1000:ffff::45.13.104.XXX` (ou `45.13.104.XXX` est l'ip attribuée dans le registre) à la machine (pour les routes c'est pareil que en v6 only)
3. C'est tout, le routeur se charge de la traduction grâce à SIIT ([rfc7915](https://datatracker.ietf.org/doc/html/rfc7915))
> Remarque. Les paquets venant du legacy-world seront traduit avec le préfixe `2a0e:e701:1120:ffff::/96` (on peut pas prendre le même préfixe que la NAT64 parce que sinon ça va clasher)

39
REGISTRY.md Normal file
View file

@ -0,0 +1,39 @@
# Registre des IP milkywan et Hurricane Electric
## HE
On a un `/64` uniquement routé via un tunnel 6in4:
- IP de lien local: `2001:470:1f12:187::2/64`
- IP de lien Remote: `2001:470:1f12:187::1/64`
- Endpoint ipv4: `216.66.84.42`/`129.199.146.230`
| Préfixe | Attribution |
|-|-|
| `2001:470:1f13:187::/64` | he-dmz, vlan 2530 |
## MWAN
### IPv4
#### `45.13.104.24/29`
Routé via SIIT sur le vlan mwan-siit (2520)
| IP | Attribution | Mainteneur |
|----|-------------|------------|
| `.25` | `labcore01` | Maurice |
| `.26` | | |
| `.27` | | |
| `.28` | | |
| `.29` | | |
| `.30` | | |
#### `2a0e:e701:1120::/48`
| Préfixe | Attribution | Mainteneur |
|---------|-------------|------------|
| `2a0e:e701:1120::/64` | IPv6 pour les routeurs, sur les interfaces du GRE | Maurice |
| `2a0e:e701:1120:1000::/64` | DMZ mwan sur le vlan 2520 mwan-siit | Maurice |
| `2a0e:e701:1120:ffff::/96` | pool6 du siit | Maurice |