Outils pour utilisateurs

Outils du site


Panneau latéral

Vie de l'asso

Outils de travail

Bureau

Communication

Adminsys

Réseau

Services

ADSL/VDSL

WiFi

VPN

Hébergement de machines

Législatif et politique

Matériels

Transparence

Café vie privée

projets:demenagement_dc

Résumé du projet de déménagement du réseau de FAImaison

ATTENTION : une grande partie des infos ci-dessous n'est plus pertinente.

Quoi ?

Suite au rachat de Network Consulting par Oceanet et à la fermeture du datacenter à Rezé, FAImaison va déménager dans le datacenter de Cogent sur l'île de Nantes.

FAImaison profite de ce déménagement pour remplacer une partie de son cœur de réseau.

Pour l'instant, FAImaison utilise un routeur (zephyr) et un switch (HP Pro Curve 2510). Ces machines vont êtres remplacées par du matériel plus récent.

Nous remplaçons le routeur par deux APU1 et le switch HP par deux switches Cisco 3750G (24 ports Giga cuivre + 4 SFP).

Combien ça coûte et rapporte ?

Le matériel nous a été offert par un membre. Merci à lui ! Les nouvelles machines consomment d'avantage d’électricité que les machines actuelles. Les coûts de revient des services vont donc augmenter.

Systèmes affectés (modifiés, supprimés, nouveaux)

  • routeurs, switches
  • tous les serveurs qui font du routage (les hyperviseurs et les serveurs VPN)

L'ancien routeur et l'ancien switch seront décommissionnés et pourront servir pour des tests et si le nouveau matériel lâche.

Personnes nécessairement touchées par les changements

Les adminsys devront apprendre à utiliser et configurer les nouvelles machines.

Processus modifiés

NOPE

Documentation

Configuration des APU1

Convention de nommage

  • APU1 noir : camber
  • APU1 gris argenté : fresk

Pour l'instant les APU1 sont sous BSD Router Project. On va installer par des Debian futures-stables (strech).

Connexion via le port série

root# cu -l cuaU0 -s 115200

Installation de Debian via PXE

  1. Être branché sur le port série pendant le démarrage.
  2. Setup PXE

Au préalable, il faut configurer l'image Debian pour activer la sortie console, sinon rien ne s'affiche.

De base il n'y a pas d'accès en console sur les ISO à installer via clé USB. On boot donc sur un programme servi via le réseau.

Côté machine serveur PXE

openbsd dhcpd.conf :

option  domain-name "wxcvbn.org";                       
option  domain-name-servers 10.64.64.1;                 

subnet 10.64.0.0 netmask 255.255.255.0 {                
        not authoritative;                              
        option routers 10.64.0.1;                       
        range 10.64.0.32 10.64.0.127;                   
        filename "pxelinux.0";                          
}   

Dans /tftpboot, télécharger http://ftp.nl.debian.org/debian/dists/stretch/main/installer-amd64/current/images/netboot/netboot.tar.gz

Selon le post "Installing Debian Jessie on Alix & APU (PXE)", les étapes suivantes sont :

  • extraire (tar xzf)
  • vi debian-installer/amd64/boot-screens/txt.cfg
  • s/vga=whatever/console=ttyS0,115200,n8/

Ensuite pour ajouter le firmware à initramfs, il faut lancer les commandes :

Cote APU1

Il faut activer le support PXE/Network boot dans la configuration de l'APU1 (F10 → 2 Payload (setup) → N → E)

Installation de Debian sur les APU1

Une fois que l'APU boot sur l'image, rien ne s'affiche. C'est normal. Il faut appuyer sur “Entrée” une fois (attendre quelques secondes), et l'installation commence !

  • Layout des partitions sur le disque de 16GB (pas de chiffrement sur le disque) :
    swap  2.1GB
    /tmp  2GB
    /var  3GB
    /     8.9 GB
  • Sélection des paquets : ([X] SSH Server, [ ] Standard system utilities)

Post-installation

!!! AVANT REBOOT FINAL !!!

  • Lancer un shell
  • Préparer l'env pour chroot
install# mount --bind /dev /target/dev
install# mount --bind /dev/pts /target/dev/pts
install# mount --bind /proc /target/proc
install# mount --bind /sys /target/sys
install# chroot /target

target# export TERM=vt220
target# apt install firmware-realtek (check me)
target# nano /etc/default/grub

serial=115200
GRUB_CMDLINE_LINUX="console=ttyS0,115200,n8"
GRUB_SERIAL_....=".... --speed=115200 ..."

target# update-grub
target# exit

install# sync; sync; sync;

PULL THE PLUG!

!!! Quand grub se lance !!!

  • 'e'
  • C-n (next-line)
  • C-f (next-char)
  • Trouver la ligne avec root=sdb8 et remplacer par sda8
  • C-x (save & load)

Se logger sous root et lancer cette commande pour checker :

update-grub && reboot

C'EST FINI !!! pour l'installation de base des APU1

Configuration des APU1 comme routeurs

  • Lancement du role debian-base sur les deux routeurs
  • Installation de quagga
router# apt install quagga

L'ordre de démarrage des daemons est maintenant géré par systemd lors de l'installation des paquets.

!!! ATTENTION !!! La dépendance zebra → {ospfd, bgpd} ne fonctionne que dans un sens. Si on stop le service zebra, les services ospfd et bgpd seront arrêtés. En revanche, si on start zebra, les services ospfd et bgpd ne seront pas lancés.

Configuration des interfaces VLAN

  • Se connecter aux APU1 en ethernet
  • Activer l'interface + désactiver la configuration par défaut
auto enp1s0
iface enp1s0 inet manual
  • Configurer une interface VLAN dans le fichier /etc/network/interfaces de la manière suivante :
auto enp1s0.<VLAN>
iface enp1s0.<VLAN> inet static
  address ADDRESS/NETMASK

VLAN

fresk (argenté) 149.11.52.82
Port 0 : vlan 174 → COGENT, 1100 → MANAGEMENT, 1200→BACKBONE, 1300 → ADHERENTS
Port 1 :
Port 2 :

camber (noir) 149.11.52.83
Port 0 : vlan 174 → COGENT, 1100 → MANAGEMENT, 1200→BACKBONE, 1300 → ADHERENTS
Port 1 :
Port 2 :

→ On ne change rien au niveau attribution VLAN / ports

Configuration sysctl fonctionnelle pour rp_filter, forwarding et ipv6

Liens : Linux Advanced Routing & Traffic Control HOWTO : Reverse Path Filtering et Documentation Kernel.org : ip-sysctl

Fichier /etc/sysctl.conf

 #net.ipv4.conf.default.rp_filter=1
 #net.ipv4.conf.all.rp_filter=1
net.ipv4.conf.default.rp_filter=0
net.ipv4.conf.all.rp_filter=0
...
 # Uncomment the next line to enable packet forwarding for IPv4
 #net.ipv4.ip_forward=1
net.ipv4.ip_forward=1
...
net.ipv6.conf.all.accept_ra = 0
net.ipv6.conf.default.accept_ra = 0

Test de la configuration OSPF des APU1

Test de la configuration BGP des APU1

Ces tests ont été réalisés avec bgpd (OpenBSD). L'objectif est de répliquer la configuration côté Cogent.

Sur mon laptop :

  • Configurer bgpd
/etc/bgpd.conf
AS 174
listen on 149.11.52.81

group "FAImaison AS203432" {
        remote-as 203432
        announce default-route
        neighbor 149.11.52.82 {
                descr "APU1 fresk"
        }
        neighbor 149.11.52.83 {
                descr "APU1 camber" 
        }
}
  • Enable forwarding + add NAT → OK
  • Test

Configuration des switches

Convention de nommage (MAC qui se trouve aux dos des switches) :

  • switch 10:8c:cf:62:5e:00 : tantad
  • switch d8:24:bd:7d:36:00 : pete-culasse

Connexion via le port série

Sous OpenBSD :

cu -l cuaU0 [-s 9600]

Sous Linux :

screen /dev/ttyUSB0 <vitesse>

Dump de conf via tftp

    apt install tftpd-hpa
    vi /etc/default/tftpd-hpa
    
      TFTP_USERNAME="tftp"
      TFTP_DIRECTORY="/srv/tftp"
      TFTP_ADDRESS="10.10.10.6:69"
      TFTP_OPTIONS="--secure"

Pour sauvegarder la conf du switch tantad :

      touch /srv/tftp/tantad-confg
      chown tftp /srv/tftp/tantad-confg
      chmod a+w /srv/tftp/tantad-confg

Depuis tantad :

      copy running-config tftp://10.10.10.6/

Glossaire

Routeurs : Ils permettent de faire transiter des paquets. Dans la documentation les routeurs sont désignés comme APU.

Switches : Ils permettent l'interconnexion de machines reliées à un même réseau physique.

PXE : Pre-boot eXecution Environment. Cela permet de démarrer depuis le réseau en récupérant une ISO qui se trouve sur un serveur.

Quagga : C'est un logiciel de routage qui utilise, entre autres, les protocoles OSPF et BGP dont nous avons besoin pour la configuration.

OSPF : Open Shortest Path First. C'est un protocole de routage dynamique.

BGP : Border Gateway Protocol. C'est un protocole d'échange de routes. BGPD est un daemon.

TFTP : Trivial File Transfer Protocol. C'est un protocole simplifié de transfert de fichiers.

projets/demenagement_dc.txt · Dernière modification: 2019/07/13 18:23 par jca