====== 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 ====== https://pad.faimaison.net/p/doc-demenagement-dc-2017 ===== Configuration des APU1 ===== **Convention de nommage** * APU1 noir : camber * APU1 gris argenté : fresk Pour l'instant les APU1 sont sous [[http://bsdrp.net|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==== - Être branché sur le port série pendant le démarrage. - 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 [[http://pcengines.info/forums/?page=post&id=7EB648B7-49D3-4FC9-ABC2-C72BF4094E17|"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 [[https://wiki.debian.org/fr/DebianInstaller/NetbootFirmware#La_solution:_ajoutez_le_firmware_.2BAOA_initramfs|ajouter le firmware à initramfs]], il faut lancer les commandes : * cd debian-installer/amd64/ * ftp http://cdimage.debian.org/cdimage/unofficial/non-free/firmware/stretch/current/firmware.cpio.gz * cp debian-installer/amd64/initrd.gz debian-installer/amd64/initrd.gz.orig * cat firmware.cpio.gz initrd.gz > a && mv a initrd.gz ===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. iface enp1s0. 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 : [[http://www.tldp.org/HOWTO/Adv-Routing-HOWTO/lartc.kernel.rpf.html|Linux Advanced Routing & Traffic Control HOWTO : Reverse Path Filtering]] et [[https://www.kernel.org/doc/Documentation/networking/ip-sysctl.txt|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 ====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.