| commit 5: | 0a549da557af |
| parent 4: | 4f42eed27b14 |
| branch: | default |
pian piano verso l'autoconfigurazione... ma che fatica!
- View nolith's profile
-
nolith's public repos »
- redmine-mq-issue4455
- redmine-hg
- evetrader
- hgredmine
- hgredmine-patch
- dns_gen
- yubiruby
- ipv6 - fine del mondo
- redirector
- habtm-with-deferred-save
- avahiserve
- darkcast
- geany-stata
- intro_ipv6
- eveberry-bis
- redmine-bitbucket
- About Me
- home_dir
- ruby-beamer
- CaptureMJPEG
- PortableNotary
- test
- ldap
- macports
- about-me-dev
- Send message
9 months ago
Changed (Δ9.2 KB):
raw changeset »
Presentazione.tex (203 lines added, 2 lines removed)
Up to file-list Presentazione.tex:
24 |
24 |
titleline=true,% Show a line below the frame title. |
25 |
25 |
alternativetitlepage=true,% Use the fancy title page. |
26 |
26 |
titlepagelogo=logo-lart,% Logo for the first page. |
27 |
watermark=licenza_small,% Watermark used in every page. |
|
28 |
watermarkheight=5px,% Height of the watermark. |
|
27 |
% watermark=licenza_small,% Watermark used in every page. |
|
28 |
% watermarkheight=5px,% Height of the watermark. |
|
29 |
29 |
%watermarkheightmult=4,% The watermark image is 4 times bigger |
30 |
30 |
% than watermarkheight. |
31 |
31 |
]{Torino} |
| … | … | @@ -679,8 +679,209 @@ Indirizzo destinazione del datagramma. |
679 |
679 |
Quindi saranno a tutti gli effetti parte del dato trasportato a meno che il nodo in transito non sia interessato alla specifica estensione, che è indicata dal campo \texttt{Next Header} |
680 |
680 |
\end{colorblock} |
681 |
681 |
\end{frame} |
682 |
||
683 |
\begin{frame}\frametitle{1 interfaccia $\Leftrightarrow$ N indirizzi} |
|
684 |
In IPv6 la relazione interfaccia - indirizzo è di tipo 1:N. Non esiste un indirizzo predefinito ed altri secondari, sono tutti allo stesso livello di importanza. \pause |
|
685 |
\begin{colorblock}{Vantaggi?} |
|
686 |
\pause |
|
687 |
Se consideramo la tipica infrastruttura di hosting web con qualche decina di siti per ogni singolo server, con un solo indirizzo IPv4, è evidente che è un problema fornire il supporto per SSL, perch\'e la trasmissione del certificato per istaurare il tunnel sicuro avviene prima di comunicare quale sito vogliamo raggiungere. Con IPv6 basterà assegnare alla stessa macchina un indirizzo per ogni sito ed a ognuno di questi uno specifico certificato per SSL. |
|
688 |
\end{colorblock} |
|
689 |
\end{frame} |
|
682 |
690 |
% section ipv6_nel_dettaglio (end) |
683 |
691 |
|
692 |
\section{Automatismi e routing} % (fold) |
|
693 |
\label{sec:automatismi_e_routing} |
|
694 |
||
695 |
\begin{frame}\frametitle{Autoconfigurazione} |
|
696 |
Una delle novità introdotte da IPv6 è l'autoconfigurazione dei nodi di rete, che anche in assenza |
|
697 |
di un router sono in grado di generare autonomamente un indirizzo link-local unicast per garantire la |
|
698 |
comunicazione fra i nodi interconnessi. |
|
699 |
||
700 |
La generazione di questo tipo di indirizzo è il primo passo da eseguire per poter ottenere |
|
701 |
un indirizzo global unicast. |
|
702 |
||
703 |
Con gli indirizzi link-local unicast e con il protocollo ICMPv6 si va di fatto a spostare più in |
|
704 |
alto di un livello il compito di ARP, rendendolo indipendente dalla |
|
705 |
tecnologia utilizzata per il livello due della rete. |
|
706 |
\end{frame} |
|
707 |
||
708 |
\begin{frame}\frametitle{Indirizzo link-local unicast autoconfigurato} |
|
709 |
\begin{colorblock}{Global Routing Prefix} |
|
710 |
Gli indirizzi link-local sono tutti nel prefix \texttt{FE80::/10}. |
|
711 |
||
712 |
All'interno di questo prefix è stato riservato il GRP \texttt{FE80::/64} per gli indirizzi |
|
713 |
link-local unicast autoconfigurati. |
|
714 |
\end{colorblock} \pause |
|
715 |
\vspace{0.5cm} |
|
716 |
\begin{colorblock}{Interface ID} |
|
717 |
Per assegnare la interface ID si utilizza l'EUI-64, un campo di 64 bit generato a partire |
|
718 |
dall'indirizzo MAC dell'interfaccia di rete. |
|
719 |
\end{colorblock} |
|
720 |
\end{frame} |
|
721 |
||
722 |
\begin{frame}[fragile]\frametitle{Extended Unique Identifier (EUI-64) - Algoritmo} |
|
723 |
||
724 |
%\setlength{\byteheight}{4ex} |
|
725 |
\settowidth{\bitwidth}{\tiny 9i} |
|
726 |
\begin{bytefield}{64} |
|
727 |
\bitheader{0,8,16,24,32,40,48,56,64} \\ |
|
728 |
\wordgroupr{\tiny{MAC}} |
|
729 |
\bitbox{8}{MAC[0]} & \bitbox{8}{MAC[1]} &\bitbox{8}{MAC[2]} &\bitbox{8}{MAC[3]} &\bitbox{8}{MAC[4]} &\bitbox{8}{MAC[5]} |
|
730 |
\endwordgroupr \\ |
|
731 |
\wordbox[]{1}{$\Downarrow$ \\[1ex]} \\ \pause |
|
732 |
\bitbox{8}{MAC[0]} & \bitbox{8}{MAC[1]} &\bitbox{8}{MAC[2]} & |
|
733 |
\colorbitbox{chameleongreen2}{16}{\texttt{0xFF FE}} & |
|
734 |
\bitbox{8}{MAC[3]} & \bitbox{8}{MAC[4]} &\bitbox{8}{MAC[5]} \\ |
|
735 |
\wordbox[]{1}{$\Downarrow$ \\[1ex]} \\ \pause |
|
736 |
\wordgroupr{\tiny{EUI-64}} |
|
737 |
\colorbitbox{chameleongreen2}{8}{\texttt{0x02}} & \bitbox{8}{MAC[1]} &\bitbox{8}{MAC[2]} & |
|
738 |
\bitbox{16}{\texttt{0xFF FE}} & |
|
739 |
\bitbox{8}{MAC[3]} & \bitbox{8}{MAC[4]} &\bitbox{8}{MAC[5]} |
|
740 |
\endwordgroupr |
|
741 |
\end{bytefield} |
|
742 |
||
743 |
\end{frame} |
|
744 |
||
745 |
\begin{frame}[fragile]\frametitle{EUI-64 - esempio} |
|
746 |
Vediamo un esempio pratico con l'indirizzo MAC \texttt{00:16:cb:8c:de:8b} \pause |
|
747 |
||
748 |
\vspace{0.5cm} |
|
749 |
||
750 |
%\setlength{\byteheight}{4ex} |
|
751 |
\settowidth{\bitwidth}{\tiny 9i} |
|
752 |
\begin{bytefield}{64} |
|
753 |
\bitheader{0,8,16,24,32,40,48,56,64} \\ |
|
754 |
\wordgroupr{\tiny{MAC}} |
|
755 |
\bitbox{8}{\texttt{0x00}} & \bitbox{8}{\texttt{0x16}} &\bitbox{8}{\texttt{0xcb}} |
|
756 |
&\bitbox{8}{\texttt{0x8c}} &\bitbox{8}{\texttt{0xde}} &\bitbox{8}{\texttt{0x8b}} |
|
757 |
\endwordgroupr \\ |
|
758 |
\wordbox[]{1}{$\Downarrow$ \\[1ex]} \\ \pause |
|
759 |
\bitbox{8}{\texttt{0x00}} & \bitbox{8}{\texttt{0x16}} &\bitbox{8}{\texttt{0xcb}} & |
|
760 |
\colorbitbox{chameleongreen2}{16}{\texttt{0xff fe}} & \bitbox{8}{\texttt{0x8c}} & |
|
761 |
\bitbox{8}{\texttt{0xde}} & |
|
762 |
\bitbox{8}{\texttt{0x8b}} \\ |
|
763 |
\wordbox[]{1}{$\Downarrow$ \\[1ex]} \\ \pause |
|
764 |
\wordgroupr{\tiny{EUI-64}} |
|
765 |
\colorbitbox{chameleongreen2}{8}{\texttt{0x02}} & \bitbox{8}{\texttt{0x16}} & |
|
766 |
\bitbox{8}{\texttt{0xcb}} & |
|
767 |
\bitbox{16}{\texttt{0xff fe}} & \bitbox{8}{\texttt{0x8c}} &\bitbox{8}{\texttt{0xde}} & |
|
768 |
\bitbox{8}{\texttt{0x8b}} \\ |
|
769 |
\endwordgroupr |
|
770 |
\end{bytefield} |
|
771 |
\pause |
|
772 |
||
773 |
\vspace{0.25cm} |
|
774 |
||
775 |
L'indirizzo link-local EUI-64 è \texttt{fe80::2:16:cb:ff:fe:8c:de:8b} |
|
776 |
\end{frame} |
|
777 |
||
778 |
\begin{frame}[allowframebreaks]\frametitle{Configurazione stateless - Definizioni} % (fold) |
|
779 |
\label{sub:configurazione_stateless} |
|
780 |
La configurazione stateless offre la possibilità di ottenere un indirizzo global unicast e un router |
|
781 |
verso cui instradare i pacchetti in modo automatico. |
|
782 |
||
783 |
Il procedimento fa uso di pacchetti ICMPv6 dedicati a questo scopo. |
|
784 |
||
785 |
\vspace{0.25cm} |
|
786 |
\textbf{Definizioni:} |
|
787 |
%\subsubsection{Definizioni} % (fold) |
|
788 |
%\label{ssub:definizioni} |
|
789 |
\begin{description} |
|
790 |
\item[tentative address] (indirizzo incerto) un indirizzo di cui si sta verificando l'unicità sul link, |
|
791 |
ancora non è stato assegnato all'interfaccia. |
|
792 |
\item[preferred address] (indirizzo preferito) un indirizzo assegnato all'interfaccia che può essere usato dai |
|
793 |
protocolli di livello superiore senza alcuna restrizione. Può figurare come |
|
794 |
indirizzo di sorgente o di destinazione. |
|
795 |
\item[deprecated address] (indirizzo deprecato) un indirizzo assegnato all'interfaccia il cui uso è |
|
796 |
scoraggiato, ma non proibito. I pacchetti inviati e ricevuti con questo indirizzo sono trattati |
|
797 |
normalmente, ma le nuove comunicazioni non dovrebbero utilizzarlo. |
|
798 |
Un indirizzo deprecato può essere ancora utilizzato per quei protocolli in cui cambiare in favore |
|
799 |
di un nuovo indirizzo preferito causerebbe problemi alla connessione (ad esempio una sessione |
|
800 |
TCP attiva.) |
|
801 |
\item[valid address] (indirizzo valido) un indirizzo deprecato o preferito. |
|
802 |
\item[invalid address] (indirizzo non valido) un indirizzo che non è assegnato a nessuna interfaccia. |
|
803 |
Un indirizzo valido diventa non valido quando il suo \emph{valid~lifetime} scade. |
|
804 |
Gli indirizzi non validi non devono essere utilizzati come indirizzo di sorgente o di destinazione. |
|
805 |
\item[preferred lifetime] il periodo di tempo in cui l'indirizzo deve essere considerato preferito. |
|
806 |
Alla scadenza l'indirizzo diventa deprecato. |
|
807 |
\item[valid lifetime] il periodo di tempo in cui l'indirizzo deve essere considerato valido. Questo |
|
808 |
valore deve essere maggiore o uguale del \emph{preferred~lifetime}. Alla sua scadenza l'indirizzo diventa |
|
809 |
non valido. |
|
810 |
\end{description} |
|
811 |
\end{frame} |
|
812 |
% subsubsection definizioni (end) |
|
813 |
||
814 |
\begin{frame}\frametitle{Configurazione stateless - Procedimento} |
|
815 |
\begin{colorblock}{Indirizzo link-local} |
|
816 |
\begin{itemize} |
|
817 |
\item<+-> generazione di un \emph{tentative address} link-local con il metodo EUI-64 |
|
818 |
\item<+-> invio di un pacchetto ICMPv6 Neighbor Solicitation con campo \texttt{Target Address} impostato sull'indirizzo da verificare |
|
819 |
\item<+-> se un nodo utilizza questo indirizzo risponde con un pacchetto ICMPv6 Neighbor Advertisement avvisando che l'indirizzo è già in uso. |
|
820 |
\item<+-> se non si ricevono Neighbor Advertisement l'indirizzo diventa \emph{valid address} |
|
821 |
\end{itemize} |
|
822 |
\end{colorblock} |
|
823 |
\vspace{.5cm} |
|
824 |
\uncover<5->{Il fallimento di questa procedura obbliga ad una configurazione manuale dell'host.} |
|
825 |
\end{frame} |
|
826 |
||
827 |
\begin{frame}\frametitle{Configurazione stateless - Procedimento (cont.)} % (fold) |
|
828 |
\begin{colorblock}{Indirizzo global} |
|
829 |
\begin{itemize} |
|
830 |
\item<+-> Una volta ottenuto un indirizzo link-local valido, un host cerca di determinare la presenza di router sul proprio link. |
|
831 |
\item<+-> I router inviano periodicamente dei pacchetti multicast di Router Advertisement in cui annunciano i prefix di loro competenza |
|
832 |
\begin{itemize} |
|
833 |
\item<+-> Router Solicitation all'indirizzo \texttt{FF02::2} per forzare l'invio |
|
834 |
\end{itemize} |
|
835 |
\item<+-> il pacchetto di Router Advertisement contiene le istruzioni per ottenre un indirizzo |
|
836 |
\begin{itemize}[<5->] |
|
837 |
\item \emph{autonomous address-configuration} (flag~A) |
|
838 |
\item \emph{managed address configuration} (flag~M) |
|
839 |
\item \emph{other statefull configuration} (flag~O) |
|
840 |
\end{itemize} |
|
841 |
\end{itemize} |
|
842 |
\end{colorblock} |
|
843 |
\end{frame} |
|
844 |
||
845 |
\begin{frame}\frametitle{Configurazione stateless - Procedimento (cont.)} |
|
846 |
\begin{colorblock}{\emph{autonomous address-configuration} (flag~A)} |
|
847 |
Se il nodo è riuscito a |
|
848 |
completare in modo automatico l'assegnazione di un indirizzo link-local, allora può assegnarsi |
|
849 |
come \emph{preferred address} un indirizzo composto dal prefix annunciato e dalla interface ID calcolata secondo lo standard EUI-64. |
|
850 |
||
851 |
\vspace{.5cm} |
|
852 |
||
853 |
\begin{tabular}{| x{5cm} | x{5cm} |} |
|
854 |
\hline |
|
855 |
Prefix annunciato & EUI-64 \tnhl |
|
856 |
\multicolumn{1}{c}{64 bit} & |
|
857 |
\multicolumn{1}{c}{64 bit} |
|
858 |
\end{tabular} |
|
859 |
||
860 |
\vspace{.5cm} |
|
861 |
||
862 |
Altrimenti registra l'indirizzo come \emph{tentative address} e lo verifica con i pacchetti ICMPv6. |
|
863 |
\end{colorblock} |
|
864 |
\end{frame} |
|
865 |
||
866 |
\begin{frame}\frametitle{Configurazione stateless - Procedimento (cont.)} |
|
867 |
\begin{colorblock}{\emph{managed address configuration} (flag~M) - statefull DHCP} |
|
868 |
Indica la presenza di un server DHCPv6. |
|
869 |
\end{colorblock} |
|
870 |
||
871 |
\vspace{.5cm} \pause |
|
872 |
||
873 |
\begin{colorblock}{\emph{other statefull configuration} (flag~O) - stateless DHCP} |
|
874 |
Indica la presenza di un server DHCPv6 per la richiesta di parametri \underline{diversi dall'indirizzo IP}. |
|
875 |
\end{colorblock} |
|
876 |
\end{frame} |
|
877 |
||
878 |
%In tutti gli altri casi è necessario che l'indirizzo sia segnato come \emph{tentative address} e |
|
879 |
%verificato con i pacchetti ICMP. |
|
880 |
%\end{frame} |
|
881 |
% subsubsection procedimento (end) |
|
882 |
% subsection configurazione_stateless (end) |
|
883 |
% section automatismi_e_routing (end) |
|
884 |
||
684 |
885 |
\section{Come fare} |
685 |
886 |
|
686 |
887 |
\subsection{Tunnel Broker} |
