diff --git a/report/figs/part1_verif.png b/report/figs/part1_verif.png new file mode 100644 index 0000000000000000000000000000000000000000..43586250e357918e8a4899132d49dcf0dab81bc6 Binary files /dev/null and b/report/figs/part1_verif.png differ diff --git a/report/figs/r3_r2_setup.png b/report/figs/r3_r2_setup.png new file mode 100644 index 0000000000000000000000000000000000000000..0b163930acfc31e479d7ebe57c87db4cebb83b43 Binary files /dev/null and b/report/figs/r3_r2_setup.png differ diff --git a/report/figs/r3_r2_tcpdump_ns2.png b/report/figs/r3_r2_tcpdump_ns2.png new file mode 100644 index 0000000000000000000000000000000000000000..e1179529a59323c4f809c13d3abb8b1f98aa1833 Binary files /dev/null and b/report/figs/r3_r2_tcpdump_ns2.png differ diff --git a/report/report.qmd b/report/report.qmd index 913e8e32dc0b11a465bc4a7b4f3df2a3aadb9920..ab97ed3a44752e9df880379b266d3180f97446c9 100644 --- a/report/report.qmd +++ b/report/report.qmd @@ -17,13 +17,16 @@ format: colorlinks: true --- -# Topologie +# Repo GitLab + +Les scripts `bash` mis en place pour ce laboratoire sont tous disponibles +au lien suivant sous le répertoire `/scripts/` : <https://githepia.hesge.ch/isc3/vres/namespaces> -## Préparation du routeur +# Topologie -### Script `bash` +## Script `bash` de préparation du routeur -```{bash} +```bash #!/usr/bin/env bash echo "======= R1: Activating IP forwarding =======" @@ -55,11 +58,19 @@ ssh R1 apt update ssh R1 apt install -y tcpdump ``` +## Vérification du bon fonctionnement + +L'image ci-dessous permet de vérifier via un `traceroute` que H1 arrive +correctement à pinger la destination 1.1.1.1 en passant par l'interface eth1 +de R1. + + + # Routeur virtuel routé -### Script `bash` +## Préparation du script `bash` d'un routeur virtuel -```{bash} +```bash #!/usr/bin/env bash echo "======= R1: Creating ns2 namespace =======" @@ -107,7 +118,7 @@ scp ./r2_nat.ruleset root@R1:/root ssh R1 ip netns exec ns2 nft -f ./r2_nat.ruleset ``` -### Vérification +## Vérification du bon fonctionnement  @@ -127,9 +138,9 @@ pas rapport à lorsqu’il n'est pas utilisé (valeur 54), expliquez pourquoi ? # Routeur virtuel bridgé -### Script `bash` +## Préparation du script `bash` d'un routeur virtuel bridgé -```{bash} +```bash #!/usr/bin/env bash echo "======= R1: Creating ns2 namespace =======" @@ -188,7 +199,7 @@ echo "======= H1: Setting default route via R1 (i.e. 10.0.0.2) =======" ssh H1 ip route add default via 10.0.0.2 ``` -## Vérification +## Vérification du bon fonctionnement  @@ -203,9 +214,18 @@ de routeurs que si le namespace n'existait pas. # Instanciation de plusieurs routeurs virtuels sur R1 -### Script `bash` +## Représentation schématique + +Le schéma ci-dessous représente la manière dont le script `bash` qui suit mettra +en place les routeurs R3 et R2 via leur namespace respectif ns3 et ns2 ainsi +que la manière dont les interfaces seront adressées et bridgées aux interfaces +br0 et br1. + + -```{bash} +## Préparation du script `bash` pour plusieurs routeurs virtuels bridgés + +```bash #!/usr/bin/env bash echo "======= R1: Creating ns2 and ns3 namespaces =======" @@ -299,6 +319,15 @@ l'implémentation des deux routeurs virtuels est fonctionnelle.  +En exécutant `tcpdump` sur l'interface ns2-veth1 du namespace ns2 et en lançant +un même `traceroute` vers 1.1.1.1 depuis H1, la figure ci-dessous illustre +clairement que les paquets ICMP passent initialement par l'interface ns3-veth0 +ayant comme IP 192.168.0.1 du ns3, puis celui-ci transite vers l'interface +ns2-veth1 (IP 192.168.0.2) du ns2. De ce fait, ceci confirme que la mise en +place des routeurs R3 et R2 via les namespaces est correcte. + + + Au niveau du TTL lors d'un ping, l'image ci-dessous illustre le fait que celui-ci fut décrémenté d'une valeur en plus (53 à présent) comparé à la @fig-ping-baseline (_baseline_ de la topologie de la partie 1 du laboratoire) du fait que le ping