Finish until ex4

This commit is contained in:
flyingscorpio@clevo 2022-11-27 11:29:58 +01:00
parent c86623a1cb
commit 1d61c20550
6 changed files with 221 additions and 3 deletions

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 93 KiB

Binary file not shown.

Binary file not shown.

View file

@ -129,7 +129,7 @@ L'dientifiant d'interface dans IPv6 à 64 bits est dérivé de l'EUI-64 en inver
En effet, pour la construction des adresses IPv6, on a préféré utiliser 1 pour marquer l'unicité mondiale.
Cette inversion de la sémantique du bit permet de garder la valeur 0 pour une numérotation manuelle, autorisant à numéroter simplement les interfaces locales à partir de 1.
Voici un schéma qui décrit comment déduire l'\emph{interface ID} à partir d'une adresse MAC~:
Voici un schéma qui décrit comment déduire l'\texttt{interface ID} à partir d'une adresse MAC~:
\begin{center}
\includegraphics[width=0.8\linewidth]{./img/eui-mac.png}
@ -140,9 +140,32 @@ Voici un schéma qui décrit comment déduire l'\emph{interface ID} à partir d'
\item Configurer l'adresse IPv6 d'un routeur Cisco en utilisant le standard EUI-64.
Vérifier la bonne prise en compte de votre configuration.
\emph{On commence par chercher l'adresse MAC de notre interface à configurer~:}
\begin{lstlisting}[gobble=12]
R1(config-if)# ipv6 address autoconfig
R1#show int g0/1 | include address
Hardware is CN Gigabit Ethernet, address is 0060.708b.2402 (bia 0060.708b.2402)
\end{lstlisting}
\emph{On a donc deux 6 groupes de deux nombres hexadécimaux~: \texttt{00 60 70 8b 24 02}.}
\emph{On peut maintenant inverser le bit \texttt{u} dans le premier octet~:}
\emph{$00 \rightarrow 00000000 \rightarrow 00000010 \rightarrow 02$.}
\emph{Après avoir inséré les octets \texttt{FF} et \texttt{FE} au milieu de l'adresse MAC, on obtient alors l'adresse IPv6 suivante~:}
\emph{\texttt{02:60:70:ff:fe:8b:24:02}.}
\emph{Affectons-là à l'interface du routeur~:}
\begin{lstlisting}[gobble=12]
R1(config-if)# ipv6 address 02:60:70:ff:fe:8b:24:02/64
R1(config-if)# do show ipv6 int brief
GigabitEthernet0/0 [up/up]
FE80::260:70FF:FE8B:2401
2001:828:105:1::1
GigabitEthernet0/1 [up/up]
FE80::260:70FF:FE8B:2402
2:60:70:FF:FE:8B:24:2
\end{lstlisting}
\end{enumerate}
@ -160,11 +183,206 @@ Soit la maquette suivante~:
\item Configurer l'adresse IPv6 du routeur R2 statiquement.
\begin{lstlisting}[gobble=12]
R1(config-if)# ipv6 address 2001:2:3:4:2/64
R2(config-if)# ipv6 address 2001:2:3:4::2/64
\end{lstlisting}
\item Activer le mode debug des messages Neighbor Discovery de IPv6 sur R1 et R2.
\begin{lstlisting}[gobble=12]
R1# debug ipv6 nd
R2# debug ipv6 nd
\end{lstlisting}
\item Configurer maintenant R1 pour qu'il obtienne une adresse IPv6 automatiquement.
\begin{lstlisting}[gobble=12]
R1(config)# int g0/0/0
R1(config-if)# no shut
R1(config-if)# ipv6 address autoconfig
\end{lstlisting}
\item Analyser les messages affichés.
\begin{lstlisting}[gobble=12]
*Mar 1 00:18:09.337: ICMPv6-ND: (GigabitEthernet0/0/0) IPv6 Opr Disabled
*Mar 1 00:18:09.337: ICMPv6-ND: Finished with ND context on (GigabitEthernet0/0/0) [6]
*Mar 1 00:18:09.337: ICMPv6-ND: Free ND context on (GigabitEthernet0/0/0) [6]
*Mar 1 00:18:09.337: ICMPv6-ND: (Null0) L3 going down
*Mar 1 00:18:09.337: ICMPv6-ND: (Null0) L3 down
*Mar 1 00:18:09.337: ICMPv6-ND: [default] Delete all routers on Null0
*Mar 1 00:18:09.337: ICMPv6-ND: (Null0, FE80::1) Linklocal Down
*Mar 1 00:18:09.337: ICMPv6-ND: (Null0) IPv6 Opr Dis
*Mar 1 00:18:09.337: ICMPv6-ND: Finished with ND context on Null0[1]
*Mar 1 00:18:09.337: ICMPv6-ND: Free ND context on Null0[1]
*Mar 1 00:18:09.337: ICMPv6-ND: Module shutdown.
*Mar 1 00:18:09.337: ICMPv6-ND: Shutdown OL prefix database
*Mar 1 00:18:09.337: ICMPv6-ND: Cleanup OL prefix database
*Mar 1 00:18:09.337: ICMPv6-ND: Destroyed ND RA Desc Chunk pool
R1# show ipv6 int b
GigabitEthernet0/0/0 [up/up]
FE80::201:43FF:FEE4:2A01
\end{lstlisting}
\end{enumerate}
\section{Tunnel statique}
Soit la topologie suivante~:
\begin{center}
\includegraphics[width=0.7\linewidth]{./img/ex4.png}
\end{center}
Nous voulons connecter le routeur Futura avec le routeur Destiny en IPv6 sans pour autant configurer IPv6 sur Cryo.
Effectuer cette configuration en utilisant les tunnels statiques.
\paragraph{Étapes à suivre}
\begin{enumerate}
\item Configuration des adresses IP
\begin{lstlisting}[gobble=12]
Futura(config)# int g0/0/0
Futura(config-if)# ip address 192.168.12.1 255.255.255.0
Futura(config-if)# no shutdown
Futura(config)# int loopback 0
Futura(config-if)# ipv6 address 2001::1/128
Futura(config-if)# no shutdown
Cryo(config)# int g0/0/0
Cryo(config-if)# ip address 192.168.12.2 255.255.255.0
Cryo(config-if)# no shutdown
Cryo(config-if)# int g0/0/1
Cryo(config-if)# ip address 192.168.23.2 255.255.255.0
Cryo(config-if)# no shutdown
Destiny(config)# int g0/0/0
Destiny(config-if)# ip address 192.168.23.3 255.255.255.0
Destiny(config-if)# no shutdown
Destiny(config)# int loopback 0
Destiny(config-if)# ipv6 address 2001::3/128
Destiny(config-if)# no shutdown
\end{lstlisting}
\item Configuration du routage IPv4 et création des loopback IPv4 pour la stabilité des tunnels.
\begin{lstlisting}[gobble=12]
Futura(config)# int loopback 0
Futura(config-int)# ip address 1.1.1.1 255.255.255.0
Futura(config-int)# exit
Futura(config)# router eigrp 123
Futura(config-router)# no auto-summary
Futura(config-router)# network 192.168.12.0
Futura(config-router)# network 1.1.1.0
Cryo(config)# int loopback 0
Cryo(config-int)# ip address 2.2.2.2 255.255.255.0
Cryo(config-int)# exit
Cryo(config)# router eigrp 123
Cryo(config-router)# no auto-summary
Cryo(config-router)# network 192.168.12.0
Cryo(config-router)# network 192.168.23.0
Cryo(config-router)# network 2.2.2.0
Destiny(config)# int loopback 0
Destiny(config-int)# ip address 3.3.3.3 255.255.255.0
Destiny(config-int)# exit
Destiny(config)# router eigrp 123
Destiny(config-router)# no auto-summary
Destiny(config-router)# network 192.168.23.0
Destiny(config-router)# network 3.3.3.0
\end{lstlisting}
\item Créer les interfaces tunnel.
\begin{lstlisting}[gobble=12]
Futura(config)# int tunnel 0
Futura(config-int)# tunnel source loopback 0
Futura(config-int)# tunnel destination 3.3.3.3
Futura(config-int)# tunnel mode ipv6ip
Destiny(config)# int tunnel 0
Destiny(config-int)# tunnel source loopback 0
Destiny(config-int)# tunnel destination 1.1.1.1
Destiny(config-int)# tunnel mode ipv6ip
\end{lstlisting}
\item Vérification de l'établissement du tunnel~:
\begin{lstlisting}[gobble=12]
Futura# show interfaces tunnel 0
Tunnel0 is up, line protocol is up (connected)
Destiny# show interfaces tunnel 0
Tunnel0 is up, line protocol is up (connected)
\end{lstlisting}
\item Activation du routage IPv6 sur \texttt{loopback 0} et \texttt{tunnel 0} sur Futura et Destiny.
\begin{lstlisting}[gobble=12]
Futura(config)# ipv6 unicast-routing
Futura(config)# ipv6 router rip RIPNG
Futura(config-rtr)# exit
Futura(config)# int loopback 0
Futura(config-if)# ipv6 rip RIPNG enable
Futura(config-if)# exit
Futura(config)# int tunnel 0
Futura(config-if)# ipv6 enable
Futura(config-if)# ipv6 rip RIPNG enable
Destiny(config)# ipv6 unicast-routing
Destiny(config)# ipv6 router rip RIPNG
Destiny(config-rtr)# exit
Destiny(config)# int loopback 0
Destiny(config-if)# ipv6 rip RIPNG enable
Destiny(config-if)# exit
Destiny(config)# int tunnel 0
Destiny(config-if)# ipv6 enable
Destiny(config-if)# ipv6 rip RIPNG enable
\end{lstlisting}
\item Vérification de la route~: la route IPv6 vers 2001::3 doit apparaître.
\begin{lstlisting}[gobble=12]
Futura# show ipv6 route
R 2001::3/128 [120/2]
via FE80::2D0:58FF:FEE1:40E1, Tunnel0
\end{lstlisting}
\item Faire un ping à partir de Futura, conclusion.
\begin{lstlisting}[gobble=12]
Futura#ping 2001::3
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 2001::3, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 0/0/0 ms
\end{lstlisting}
\emph{Le succès du ping montre une connexion en IPv6 entre Futura et Destiny.}
\emph{Comme aucun cable ne les relie, cette connexion passe forcément par Cryo, qui n'est configuré qu'en IPv4.}
\emph{Un premier routage IPv4 a été fait grâce à EIGRP pour que Futura et Destiny puissent se joindre en IPv4.}
\emph{Ensuite, un tunnel IPv6 $\rightarrow$ IPv4 a été monté, sur lequel a été déployé un routage IPv6 avec RIPNG\@.}
\emph{Ceci permet à Futura de router les paquets à destination de l'adresse IPv6 de Destiny par le tunnel.}
\emph{Grâce à ce tunnel, Cryo peut router ces paquets sans avoir pour autant implémenté IPv6.}
\end{enumerate}
\section{Tunnel dynamique}
Cette technique est applée dynamique parce que la détermination des adresses IPv4 de la destination du tunnel se fait dynamiquement.
L'inconvénient est que cette technique ne supporte pas les protocoles de routage internes.
Nous serons donc obligés d'utiliser soit le routage statique, soit BGP\@.
Il existe deux technique~: \texttt{automatic 6to4} et \texttt{ISATAP}.
Le préfixe 2002::/16 est réservé à \texttt{6to4}.
Voici comment les adresses sont constituées~:
\begin{center}
\includegraphics[width=0.7\linewidth]{./img/6to4-prefix.png}
\end{center}
\end{document}