Alessio Caiazza is sharing code with you

Bitbucket is a code hosting site. Unlimited public and private repositories. Free for small teams.

Don't show this again

nolith / intro_ipv6

Presentazione beamer su IPv6.

Clone this repository (size: 2.1 MB): HTTPS / SSH
hg clone https://bitbucket.org/nolith/intro_ipv6
hg clone ssh://hg@bitbucket.org/nolith/intro_ipv6

intro_ipv6 / Presentazione.tex

commit
0ae04ada4dba
parent
2b419538e634
branch
default

AYIYA e editing in emacs

1
ef7af8537f95
%!TEX root = /Users/nolith/Documents/Projects/presen/intro_ipv6/ipv6.slides.tex
2
f6c754e3eeb6
3
f6c754e3eeb6
%decommentare per stampare + slide su una sola pagina
4
f6c754e3eeb6
%\usepackage{pgfpages}
5
f6c754e3eeb6
%\pgfpagesuselayout{4 on 1}[a4paper,border shrink=5mm]
6
f6c754e3eeb6
7
f6c754e3eeb6
% =-> Tema Beamer.
8
f6c754e3eeb6
%\usetheme{Warsaw} % {progressbar} o altro...
9
f6c754e3eeb6
%\usecolortheme{progressbar} % {progressbar} or {dolphin} or {wolverine} or {whale} or {crane} or {seagull}
10
f6c754e3eeb6
%\usefonttheme{professionalfonts} % {progressbar} or {structureitalicserif} or {serif}
11
f6c754e3eeb6
12
f6c754e3eeb6
%\useinnertheme{}
13
f6c754e3eeb6
%\useoutertheme{}
14
f6c754e3eeb6
% Progress Bar
15
f6c754e3eeb6
%\useinnertheme{progressbar}
16
f6c754e3eeb6
%\useoutertheme{progressbar}
17
f6c754e3eeb6
%
18
f6c754e3eeb6
\setbeamercovered{dynamic}
19
f6c754e3eeb6
% o altro (possibly just delete it)
20
f6c754e3eeb6
21
f6c754e3eeb6
\usetheme[pageofpages=di,% String used between the current page and the
22
f6c754e3eeb6
                         % total page count.
23
f6c754e3eeb6
          bullet=circle,% Use circles instead of squares for bullets.
24
f6c754e3eeb6
          titleline=true,% Show a line below the frame title.
25
f6c754e3eeb6
          alternativetitlepage=true,% Use the fancy title page.
26
ef7af8537f95
          titlepagelogo=logo-lart,% Logo for the first page.
27
0a549da557af
%          watermark=licenza_small,% Watermark used in every page.
28
0a549da557af
%          watermarkheight=5px,% Height of the watermark.
29
f6c754e3eeb6
          %watermarkheightmult=4,% The watermark image is 4 times bigger
30
f6c754e3eeb6
                                % than watermarkheight.
31
f6c754e3eeb6
          ]{Torino}
32
f6c754e3eeb6
33
f6c754e3eeb6
%colori per i box
34
f6c754e3eeb6
\setbeamercolor{lowercolor}{fg=black,bg=white}
35
f6c754e3eeb6
\setbeamercolor{uppercolor}{fg=black,bg=chameleongreen2}
36
f6c754e3eeb6
37
f6c754e3eeb6
\newenvironment{colorblock}
38
f6c754e3eeb6
{\begin{beamerboxesrounded}[upper=uppercolor,lower=lowercolor,shadow=true]}
39
f6c754e3eeb6
{\end{beamerboxesrounded}}
40
f6c754e3eeb6
41
f6c754e3eeb6
\newenvironment{tl_itm_year}[1]
42
f6c754e3eeb6
{\begin{colorblock}{#1}\begin{itemize}}
43
f6c754e3eeb6
{\end{itemize}\end{colorblock}}
44
f6c754e3eeb6
45
b0824ccd5f09
\newcommand{\tlelement}[3] {\only<presentation:#1>{\begin{tl_itm_year}{#2} #3 \end{tl_itm_year}}}
46
f6c754e3eeb6
47
e16e32db07d5
48
e16e32db07d5
\usepackage{multirow}
49
e16e32db07d5
\usepackage{array}
50
e16e32db07d5
\newcolumntype{x}[1]{%
51
e16e32db07d5
>{\centering\hspace{0pt}}p{#1}}%
52
e16e32db07d5
\newcommand{\tn}{\tabularnewline}
53
e16e32db07d5
\newcommand{\tnhl}{\tabularnewline\hline}
54
e16e32db07d5
55
f6c754e3eeb6
%\beamertemplatetransparentcoveredhigh
56
f6c754e3eeb6
% =-> Package relativi alla gestione della Lingua.
57
f6c754e3eeb6
\usepackage[italian]{babel}
58
f6c754e3eeb6
59
f6c754e3eeb6
\usepackage[utf8]{inputenc}
60
f6c754e3eeb6
%\usepackage{lmodern} % <- Aggiunta nel caso si abiliti T1 e siano assenti i Font Cm-Super.
61
f6c754e3eeb6
%\usepackage[T1]{fontenc}  % <---- Aggiunta Consigliata.
62
f6c754e3eeb6
% O altro. Ricorda che 'encoding' e 'font' dovrebbero combaciare.
63
f6c754e3eeb6
% Se T1 non risulta ottimo, prova a cancellare la riga con fontenc.
64
f6c754e3eeb6
65
f6c754e3eeb6
% Package relativi all'uso di materiale matematico.
66
f6c754e3eeb6
%\usepackage{amsmath}
67
f6c754e3eeb6
%\usepackage{amsfonts}
68
f6c754e3eeb6
%\usepackage{amssymb}
69
f6c754e3eeb6
% Per costruzione Tabelle.
70
f6c754e3eeb6
%\usepackage{booktabs}
71
f6c754e3eeb6
%Per gestione "figure in testo"
72
f6c754e3eeb6
%\usepackage{wrapfig}
73
f6c754e3eeb6
% Per gestione url.
74
f6c754e3eeb6
\usepackage{url}
75
f6c754e3eeb6
% Package relativi all'uso di codice di programmazione [alternativa a verbatim].
76
f6c754e3eeb6
% \usepackage{listings}
77
f6c754e3eeb6
% Package per la gestione "frecce".
78
f6c754e3eeb6
%\usepackage{pifont}
79
f6c754e3eeb6
\usepackage{bytefield}
80
e16e32db07d5
%definiamo i bitbox colorati
81
e16e32db07d5
\newcommand{\colorbitbox}[3]{% 
82
e16e32db07d5
\rlap{\bitbox{#2}{\color{#1}\rule{\width}{\height}}}% 
83
e16e32db07d5
\bitbox{#2}{#3}}
84
f6c754e3eeb6
\usepackage{tikz}
85
f6c754e3eeb6
\usetikzlibrary{fit,arrows,calc,chains,positioning}
86
f6c754e3eeb6
87
f6c754e3eeb6
%immagini per tikz
88
f6c754e3eeb6
\pgfdeclareimage{schermo}{immagini/schermo}
89
f6c754e3eeb6
\pgfdeclareimage{case}{immagini/case}
90
f6c754e3eeb6
\pgfdeclareimage{router}{immagini/router}
91
f6c754e3eeb6
\pgfdeclareimage{nuvola}{immagini/nuvola}
92
f6c754e3eeb6
\pgfdeclareimage{firewall}{immagini/firewall}
93
f6c754e3eeb6
94
f6c754e3eeb6
95
f6c754e3eeb6
%stili per tikz
96
f6c754e3eeb6
\tikzstyle{subnet}+=[rectangle,very thin,draw=gray]
97
f6c754e3eeb6
\tikzstyle{olink}+=[color=chameleongreen1,thick]
98
f6c754e3eeb6
99
f6c754e3eeb6
100
f6c754e3eeb6
%corregge il warning sulla dimensione dei font
101
f6c754e3eeb6
\renewcommand{\fontsubfuzz}{1pt}
102
f6c754e3eeb6
103
f6c754e3eeb6
% Directory ove sono presenti le Immagini.
104
f6c754e3eeb6
\graphicspath{{immagini/}}
105
f6c754e3eeb6
106
f6c754e3eeb6
107
f6c754e3eeb6
% Titolo !
108
ef7af8537f95
\title{Introduzione a IPv6}
109
f6c754e3eeb6
110
f6c754e3eeb6
\author{Alessio Caiazza}
111
f6c754e3eeb6
112
f6c754e3eeb6
\institute{
113
f6c754e3eeb6
\scriptsize
114
ef7af8537f95
%Relatori: \\
115
ef7af8537f95
%Ing. Tommaso Pecorella \\
116
ef7af8537f95
%Prof. Romano Fantacci \\
117
ef7af8537f95
%\vspace{0.25in}
118
ef7af8537f95
Gestione e sicurezza delle reti di telecomunicazione \\
119
f6c754e3eeb6
Università degli Studi di Firenze \\ 
120
ef7af8537f95
Facoltà di Ingegneria%\\Dipartimento di Informatica
121
f6c754e3eeb6
}
122
f6c754e3eeb6
123
ef7af8537f95
\date{\today}
124
ef7af8537f95
%\date{28 settembre 2009}
125
f6c754e3eeb6
126
f6c754e3eeb6
% Per inserire il Logo dell'Univ.
127
f6c754e3eeb6
\pgfdeclareimage[height=1.15cm]{LogoUniF}{immagini/LogoUniF}
128
f6c754e3eeb6
\logo{\pgfuseimage{LogoUniF}}
129
f6c754e3eeb6
130
b0824ccd5f09
% Utilizza l'outline
131
b0824ccd5f09
%\AtBeginSection[]
132
b0824ccd5f09
%{
133
b0824ccd5f09
%   \begin{frame}
134
b0824ccd5f09
%       \frametitle{Outline}
135
b0824ccd5f09
%       \tableofcontents[currentsection]
136
b0824ccd5f09
%   \end{frame}
137
b0824ccd5f09
%}
138
b0824ccd5f09
\AtBeginSubsection[] 
139
b0824ccd5f09
{ 
140
b0824ccd5f09
\begin{frame}<beamer> 
141
b0824ccd5f09
\frametitle{Sommario} 
142
35a9caac5cef
\tableofcontents[subsectionstyle=show/shaded/hide] 
143
b0824ccd5f09
\end{frame} 
144
b0824ccd5f09
} 
145
b0824ccd5f09
146
f6c754e3eeb6
147
f6c754e3eeb6
148
f6c754e3eeb6
% Inizio Presentazione.
149
f6c754e3eeb6
\begin{document}
150
f6c754e3eeb6
151
f6c754e3eeb6
% Prima pagina
152
f6c754e3eeb6
\begin{frame}[t,plain]
153
f6c754e3eeb6
\titlepage
154
f6c754e3eeb6
\end{frame}
155
f6c754e3eeb6
% Indice
156
f6c754e3eeb6
%\frame{\tableofcontents}
157
f6c754e3eeb6
158
f6c754e3eeb6
\section{Perch\'e IPv6}
159
f6c754e3eeb6
160
35a9caac5cef
\subsection{IPv6}
161
35a9caac5cef
\begin{frame}\frametitle{IPv6}
162
35a9caac5cef
IPv6 \`e la nuova versione del protocollo IP, \`e stato progettato per risolvere le debolezze di IPv4 e per esaltarne i punti di forza.
163
35a9caac5cef
164
35a9caac5cef
%\begin{itemize}[<+->]
165
35a9caac5cef
%	\item Un indirizzo IPv6 \texttt{2001:0db8:85a3:08d3:1319:8a2e:0370:7344}
166
35a9caac5cef
%	\item la notazione CIDR per i prefix
167
35a9caac5cef
%\end{itemize}
168
35a9caac5cef
169
35a9caac5cef
\vspace{1.5cm}
170
35a9caac5cef
171
35a9caac5cef
\pause
172
35a9caac5cef
\begin{colorblock}{Vantaggi di IPv6}
173
35a9caac5cef
\begin{itemize}
174
35a9caac5cef
\item Maggior spazio di indirizzamento
175
35a9caac5cef
\item Abolizione dei NAT
176
35a9caac5cef
\item Header semplificato
177
35a9caac5cef
\item Autoconfigurazione
178
35a9caac5cef
\end{itemize}
179
35a9caac5cef
\end{colorblock}
180
35a9caac5cef
\end{frame}
181
35a9caac5cef
182
35a9caac5cef
183
f6c754e3eeb6
\subsection{Timeline}
184
f6c754e3eeb6
\begin{frame}[t]\frametitle{Gli indirizzi IP stanno finendo?}
185
f6c754e3eeb6
\begin{tikzpicture}[timeline/.style={->,color=chameleongreen1,thick},
186
f6c754e3eeb6
                     every text node/.style={tiny text},
187
f6c754e3eeb6
                     year label/.style={anchor=south west,rotate=45},
188
f6c754e3eeb6
                     today/.style={<-,very thick,draw,color=chameleongreen3},
189
f6c754e3eeb6
                     fact label/.style={anchor=east,yshift=-.7cm,rotate=45},]
190
f6c754e3eeb6
	\draw[timeline] (-.5,0) -- (11.5,0);
191
f6c754e3eeb6
	%red line
192
f6c754e3eeb6
	\setbeamercovered{invisible}
193
b0824ccd5f09
	\uncover<presentation:8->{ \draw[timeline,color=red] (8,0) -- (11.5,0);}
194
b0824ccd5f09
	\uncover<presentation:11->{
195
f6c754e3eeb6
	\draw (9,0) node[year label] (2011) {\small \color{red}{2011}} +(0,-3pt) -- +(0,3pt);
196
f6c754e3eeb6
	\draw (9.5,0) node[year label] (2012) {\small \color{red}{2012}} +(0,-3pt) -- +(0,3pt);
197
f6c754e3eeb6
	\path[today,color=red] (2011) -- +(0,+1cm);
198
f6c754e3eeb6
	\path[today,color=red] (2012) -- +(0,+1cm);
199
f6c754e3eeb6
	}
200
f6c754e3eeb6
	\setbeamercovered{dynamic}
201
f6c754e3eeb6
	\draw (0,0) node[year label] (1993) {\small 1993} +(0,-3pt) -- +(0,3pt);
202
f6c754e3eeb6
	\draw (1,0) node[year label] (1995) {\small 1995} +(0,-3pt) -- +(0,3pt);
203
f6c754e3eeb6
	\draw (2,0) node[year label] (1997) {\small 1997} +(0,-3pt) -- +(0,3pt);
204
f6c754e3eeb6
	\draw (3,0) node[year label] (1999) {\small 1999} +(0,-3pt) -- +(0,3pt);
205
f6c754e3eeb6
	\draw (3.5,0) node[year label] (2000) {\small 2000} +(0,-3pt) -- +(0,3pt);
206
f6c754e3eeb6
	\draw (5,0) node[year label] (2003) {\small 2003} +(0,-3pt) -- +(0,3pt);
207
f6c754e3eeb6
	\draw (5.5,0) node[year label] (2004) {\small 2004} +(0,-3pt) -- +(0,3pt);
208
f6c754e3eeb6
	\draw (6,0) node[year label] (2005) {\small 2005} +(0,-3pt) -- +(0,3pt);
209
f6c754e3eeb6
	\draw (6.5,0) node[year label] (2006) {\small 2006} +(0,-3pt) -- +(0,3pt);
210
f6c754e3eeb6
	\draw (7.5,0) node[year label] (2008) {\small 2008} +(0,-3pt) -- +(0,3pt);
211
f6c754e3eeb6
	\draw (8,0) node[year label] (2009) {\small 2009} +(0,-3pt) -- +(0,3pt);
212
f6c754e3eeb6
	\draw (11,0) node[year label] (2016) {\small 2016} +(0,-3pt) -- +(0,3pt);
213
f6c754e3eeb6
	%freccie today
214
b0824ccd5f09
	\only<presentation:1>{\path[today] (1993) -- +(0,+1cm);}
215
b0824ccd5f09
	\only<presentation:2>{\path[today] (1995) -- +(0,+1cm);}
216
b0824ccd5f09
	\only<presentation:3>{\path[today] (1997) -- +(0,+1cm);}
217
b0824ccd5f09
	\only<presentation:4>{\path[today] (1999) -- +(0,+1cm);}
218
b0824ccd5f09
	\only<presentation:5>{\path[today] (2000) -- +(0,+1cm);}
219
b0824ccd5f09
	\only<presentation:6>{\path[today] (2003) -- +(0,+1cm);}
220
b0824ccd5f09
	\only<presentation:7>{\path[today] (2004) -- +(0,+1cm);}
221
b0824ccd5f09
	\only<presentation:8>{\path[today] (2005) -- +(0,+1cm);}
222
b0824ccd5f09
	\only<presentation:9>{\path[today] (2006) -- +(0,+1cm);}
223
b0824ccd5f09
	\only<presentation:10>{\path[today] (2008) -- +(0,+1cm);}
224
b0824ccd5f09
	\only<presentation:11>{\path[today] (2009) -- +(0,+1cm);}
225
f6c754e3eeb6
	%fatti
226
f6c754e3eeb6
	\draw (1993) node[fact label] {\tiny CIDR}; 
227
b0824ccd5f09
	\uncover<presentation:2->{ \draw (1995) node[fact label] {\tiny IPv6}; }
228
b0824ccd5f09
	\uncover<presentation:3->{ \draw (1997) node[fact label] {\tiny SURFNet}; }
229
b0824ccd5f09
	\uncover<presentation:4->{ \draw (1999) node[fact label] {\tiny IPv6 Forum}; }
230
b0824ccd5f09
	\uncover<presentation:5->{ \draw (2000) node[fact label] {\tiny SixXS}; }
231
b0824ccd5f09
	\uncover<presentation:6->{ \draw (2003) node[fact label] {\tiny Parte 6bone - Asia}; }
232
b0824ccd5f09
	\uncover<presentation:7->{ \draw (2004) node[fact label] {\tiny Supporto a IPv6 dai vendor}; }
233
b0824ccd5f09
	\uncover<presentation:8->{ \draw (2005) node[fact label] {\tiny USA};}
234
b0824ccd5f09
	\uncover<presentation:9->{ \draw (2006) node[fact label] {\tiny Termina 6bone}; }
235
b0824ccd5f09
	\uncover<presentation:10->{ \draw (2008) node[fact label] {\tiny Root DNS - UE - Beijing}; }
236
b0824ccd5f09
	\uncover<presentation:11->{ \draw (2009) node[fact label] {\tiny OGGI}; }
237
f6c754e3eeb6
\end{tikzpicture}
238
f6c754e3eeb6
239
f6c754e3eeb6
\tlelement{1}{1993}{\item Viene introdotto CIDR per arginare il problema della fine degli indirizzi IP.}
240
f6c754e3eeb6
\tlelement{2}{1995}{\item Nasce ufficialmente IPv6 (RFC 1752).}
241
f6c754e3eeb6
\tlelement{3}{1997}{\item SURFNet, maintainer della rete accademica olandese, migra a IPv6.}
242
f6c754e3eeb6
\tlelement{4}{1999}{\item Nascita di IPv6Forum e delle task force regionali.}
243
f6c754e3eeb6
\tlelement{5}{2000}{\item Nasce SixXS, uno dei più grandi tunnel broker.}
244
f6c754e3eeb6
\tlelement{6}{2003}{\item Parte il testbed 6bone\item Giappone, Cina e Corea del Sud annunciano di voler diventare leader nel settore IPv6.}
245
f6c754e3eeb6
\tlelement{7}{2004}{\item La maggior parte degli apparati di rete supportano IPv6.}
246
f6c754e3eeb6
\tlelement{8}{2005}{\item Il governo USA richiede che tutti i backbone delle agenzie federali migrino a IPv6 entro il 2008.\item Sify, ISP indiano, fornisce connettività IPv6 end-user.\item Tony Hain di Cisco Systems pubblica uno studio stimando la fine degli indirizzi IPv4 tra il 2009 e il 2016.}
247
f6c754e3eeb6
\tlelement{9}{2006}{\item Viene dichiarata conclusa con successo la sperimentazione 6bone.}
248
f6c754e3eeb6
\tlelement{10}{2008}{\item I root DNS sono raggiungibili anche in IPv6.\item La Comunità Europea richiede l'adozione di IPv6 per almeno il 25\% della popolazione comunitaria entro il 2010.\item La Cina, con le olimpiadi di Beijing, fa il più grande uso mai visto di tecnologia IPv6.}
249
f6c754e3eeb6
\tlelement{11}{2009} {\item A oggi gli studi di Geoff Huston individuano la fine degli indirizzi IPv4 fra agosto 2011 e giugno 2012.}
250
f6c754e3eeb6
\end{frame}
251
f6c754e3eeb6
252
35a9caac5cef
\subsection{Vantaggi principali}
253
f6c754e3eeb6
\begin{frame}[plain]
254
f6c754e3eeb6
\setbeamercovered{invisible}
255
f6c754e3eeb6
\tikzstyle{every picture}+=[remember picture]
256
f6c754e3eeb6
\tikzstyle{v6 arrow}+=[<<-,ultra thick,draw]
257
f6c754e3eeb6
\tikzstyle{ipv4}+=[rectangle,minimum size=1cm,fill=chameleongreen1,draw=chameleongreen3]
258
f6c754e3eeb6
\tikzstyle{na} = [baseline=-.5ex]
259
f6c754e3eeb6
260
f6c754e3eeb6
\vspace{12em}
261
f6c754e3eeb6
262
f6c754e3eeb6
\begin{itemize}
263
f6c754e3eeb6
\item<2-> Spazio di indirizzamento IPv4 \tikz[na] \node[coordinate] (ipv4_text) {};
264
f6c754e3eeb6
  \begin{itemize}
265
f6c754e3eeb6
  \item<3-> $2^{32} = 4`294`967`296 $ indirizzi
266
f6c754e3eeb6
  \end{itemize}
267
f6c754e3eeb6
\item<4-> Spazio di indirizzamento IPv6 \tikz[na] \node[coordinate] (ipv6_text) {};
268
f6c754e3eeb6
  \begin{itemize}
269
f6c754e3eeb6
  \item<5-> $2^{128} = 340`282`366`920`938`463`463`374`607`431`768`211`456$ indirizzi
270
f6c754e3eeb6
  \item<6-> Per mantenere le proporzioni dovremmo colorare di bianco l'intera superficie del Sistema Solare!
271
f6c754e3eeb6
  \item<7-> Pi\`u di $6.66 \cdot 10^{23}$ indirizzi per metro quadrato della superficie terrestre (cioè 666 mila miliardi di miliardi).
272
f6c754e3eeb6
  \end{itemize}
273
35a9caac5cef
\end{itemize} 
274
35a9caac5cef
275
35a9caac5cef
\begin{tikzpicture}[remember picture,overlay]
276
35a9caac5cef
  \node at ($(current page.center) + (0,2cm) $) [ipv4] (ipv4) {} ;
277
35a9caac5cef
  \coordinate (ipv6) at ($ (ipv4) + (2cm,-.5cm) $);
278
35a9caac5cef
279
35a9caac5cef
  \path[->]<2-> (ipv4_text) edge [bend right] (ipv4);
280
35a9caac5cef
  \path[->]<4-> (ipv6_text) edge [bend right] (ipv6);
281
35a9caac5cef
  \begin{actionenv}<6->
282
35a9caac5cef
  %\path[v6 arrow] (current page.north west) -- +(-1cm,-1cm);
283
35a9caac5cef
  \path[v6 arrow] (current page.north) -- +(0,-.5cm); %(current page.south);
284
35a9caac5cef
  \path[v6 arrow] (current page.south) -- +(0,+.5cm);
285
35a9caac5cef
  \path[v6 arrow] (current page.west) -- +(+.5cm,0);
286
35a9caac5cef
  \path[v6 arrow] (current page.east) -- +(-.5cm,0);
287
35a9caac5cef
  \end{actionenv}
288
35a9caac5cef
\end{tikzpicture}
289
f6c754e3eeb6
290
f6c754e3eeb6
\end{frame}
291
f6c754e3eeb6
292
f6c754e3eeb6
\begin{frame}\frametitle{Network Address Translation (NAT)}
293
f6c754e3eeb6
%\begin{actionenv}<only@1-6>
294
f6c754e3eeb6
Il Network Address Translation (NAT) è una tecnica che consiste nel modificare gli indirizzi IP dei pacchetti in transito su un sistema che agisce da router. \pause
295
f6c754e3eeb6
296
f6c754e3eeb6
%Viene detto IP masquerading un caso particolare di source NAT, in cui le connessioni generate da un insieme di computer vengono "presentate" verso l'esterno con un solo indirizzo IP.
297
f6c754e3eeb6
%\pause
298
f6c754e3eeb6
	
299
f6c754e3eeb6
%Il NAT non è ben visto dai puristi delle reti, in quanto mina profondamente la semplicità di IP, e in particolare viola il principio della comunicazione "da qualsiasi host a qualsiasi host" (any to any). Questa critica "filosofica" si ripercuote in conseguenze pratiche:
300
f6c754e3eeb6
301
f6c754e3eeb6
\begin{itemize}
302
f6c754e3eeb6
\item L'instradamento dei pacchetti viene a dipendere anche da caratteristiche di livello di trasporto.
303
f6c754e3eeb6
\item Le configurazioni NAT possono diventare molto complesse e di difficile comprensione.
304
f6c754e3eeb6
\item L'apparato che effettua il NAT ha bisogno di mantenere in memoria lo stato delle connessioni attive in ciascun momento.
305
f6c754e3eeb6
\item Alcune applicazioni inseriscono nel payload informazioni relative al livello IP o TCP/UDP.
306
f6c754e3eeb6
\item IL NAT penalizza fortemente il peer-to-peer e tutti i programmi per la condivisione di file.
307
f6c754e3eeb6
\end{itemize}
308
f6c754e3eeb6
%\end{actionenv}
309
f6c754e3eeb6
%\begin{actionenv}<only@7>
310
f6c754e3eeb6
%%questo riporta l'immagine in alto
311
f6c754e3eeb6
%%\vspace{-7cm}
312
f6c754e3eeb6
%\begin{center}
313
f6c754e3eeb6
%	\includegraphics[scale=.37]{nat}
314
f6c754e3eeb6
%\end{center}
315
f6c754e3eeb6
%\end{actionenv}
316
f6c754e3eeb6
%	
317
f6c754e3eeb6
\end{frame}
318
f6c754e3eeb6
319
f6c754e3eeb6
\begin{frame}[fragile]\frametitle{Header semplificato}
320
f6c754e3eeb6
\begin{columns}
321
f6c754e3eeb6
\begin{column}{5.5cm}
322
f6c754e3eeb6
\begin{bytefield}{32} 
323
f6c754e3eeb6
\bitheader{0,3,4,11,12,15,16,23,24,31} \\ 
324
f6c754e3eeb6
\bitbox{4}{Ver.} & \bitbox{8}{Traffic Class} & 
325
f6c754e3eeb6
\bitbox{20}{Flow Label} \\ 
326
f6c754e3eeb6
\bitbox{16}{Payload Length} & \bitbox{8}{Next Header} &
327
f6c754e3eeb6
\bitbox{8}{Hop Limit} \\
328
f6c754e3eeb6
\wordbox{4}{Source Address}\\
329
f6c754e3eeb6
\wordbox{4}{Destination Address} 
330
f6c754e3eeb6
\end{bytefield}
331
f6c754e3eeb6
\end{column}
332
f6c754e3eeb6
\begin{column}{5.5cm}
333
f6c754e3eeb6
\begin{actionenv}<only@2->
334
f6c754e3eeb6
\begin{colorblock}{Vantaggi di IPv6}
335
f6c754e3eeb6
\begin{itemize}
336
f6c754e3eeb6
\item<2-> Lunghezza fissa 40 byte
337
f6c754e3eeb6
\item<3-> Rimosso il controllo di errore
338
f6c754e3eeb6
\item<4-> Rimossa la frammentazione
339
f6c754e3eeb6
\item<5-> Header Extensions
340
f6c754e3eeb6
\end{itemize}
341
f6c754e3eeb6
\end{colorblock}
342
f6c754e3eeb6
\end{actionenv}
343
f6c754e3eeb6
\end{column}
344
f6c754e3eeb6
\end{columns}
345
f6c754e3eeb6
\end{frame}
346
f6c754e3eeb6
347
f6c754e3eeb6
348
f6c754e3eeb6
\begin{frame}\frametitle{Autoconfigurazione}
349
f6c754e3eeb6
\begin{itemize}
350
f6c754e3eeb6
351
f6c754e3eeb6
%\begin{columns} % the "c" option specifies center vertical alignment
352
f6c754e3eeb6
%\column{.4\textwidth} % column designated by a command
353
f6c754e3eeb6
\item Anche in assenza di un router i nodi connessi allo stesso switch sono in grado di {\color{chameleongreen3}generare autonomamente un indirizzo locale per garantire la comunicazione}. (link-local unicast)
354
f6c754e3eeb6
355
f6c754e3eeb6
\item Il comportamento predefinito di un router è di {\color{chameleongreen3}annunciare la propria rete affinch\'e i nodi possano generare autonomamente un indirizzo}. (global unicast)
356
f6c754e3eeb6
%\column{.6\textwidth}
357
f6c754e3eeb6
%\includegraphics[scale=.35]{calcio}
358
f6c754e3eeb6
%\end{columns}
359
f6c754e3eeb6
\end{itemize}
360
f6c754e3eeb6
\end{frame}
361
f6c754e3eeb6
362
e16e32db07d5
\section{IPv6 nel dettaglio} % (fold)
363
e16e32db07d5
\subsection{Struttura di un indirizzo} % (fold)
364
e16e32db07d5
\begin{frame}\frametitle{Struttura di un indirizzo}
365
e16e32db07d5
	Un indirizzo IPv6 \`e un dato a 128 bit. Si utilizza una rappresentazione a 
366
e16e32db07d5
	gruppi di 4 cifre esadecimali separati dal simbolo ``\texttt{:}''\\
367
e16e32db07d5
	\begin{center}
368
e16e32db07d5
		\texttt{2001:0db8:2c05:0000:0000:0000:0000:0027}
369
e16e32db07d5
	\end{center}
370
e16e32db07d5
	\pause
371
e16e32db07d5
	o in modo pi\`u contratto\\
372
e16e32db07d5
	\begin{center}
373
e16e32db07d5
		\texttt{2001:db8:2c05::27}
374
e16e32db07d5
	\end{center}
375
e16e32db07d5
	\`e infatti possibile omettere gli zeri di sinistra in ogni blocco e si pu\`o 
376
e16e32db07d5
	introdurre \underline{una sola volta} la notazione ``\texttt{::}'' che viene espansa in gruppi
377
e16e32db07d5
	di \texttt{0000} fino a completare l'indirizzo.
378
e16e32db07d5
\end{frame}
379
e16e32db07d5
380
e16e32db07d5
\begin{frame}\frametitle{Struttura di un indirizzo (cont.)}
381
e16e32db07d5
	Si definisce \emph{site} una rete amministrata da un unico gestore,
382
e16e32db07d5
	il \emph{global routing prefix} è lo spazio di indirizzamento assegnatogli,
383
e16e32db07d5
	la \emph{subnet ID} è la parte rimanente ad ottenere il \emph{prefix} (prefisso) di
384
e16e32db07d5
	lunghezza 64~bit, i rimanenti bit identificano l'interfaccia di rete
385
e16e32db07d5
	a cui è assegnato l'indirizzo e si chiamano \emph{interface ID}.
386
e16e32db07d5
	
387
e16e32db07d5
	\vspace{1.5cm}
388
e16e32db07d5
%	\begin{figure}
389
e16e32db07d5
	   \begin{tabular}{| x{3.5cm} | x{1.7cm} | x{5cm} |}
390
e16e32db07d5
	   	\hline
391
e16e32db07d5
	   	Global routing prefix & Subnet ID & Interface ID \tnhl 
392
e16e32db07d5
	   	\multicolumn{1}{c}{n bit} &
393
e16e32db07d5
	   	\multicolumn{1}{c}{64-n bit} &
394
e16e32db07d5
	   	\multicolumn{1}{c}{64 bit}
395
e16e32db07d5
	   \end{tabular}
396
e16e32db07d5
%	\caption{Struttura di un indirizzo global unicast}
397
e16e32db07d5
%	\label{fig:Struttura di un indirizzo Global Unicast}
398
e16e32db07d5
%	\end{figure}
399
e16e32db07d5
400
e16e32db07d5
\end{frame}
401
e16e32db07d5
% subsection struttura_di_un_indirizzo (end)
402
e16e32db07d5
403
e16e32db07d5
\subsection{Tipo e visibilità}
404
e16e32db07d5
\begin{frame}\frametitle{Visibilità di un indirizzo}
405
e16e32db07d5
\begin{colorblock}{Global}
406
e16e32db07d5
Gli indirizzi \emph{global} sono raggiungibili da tutta la rete IPv6
407
e16e32db07d5
\end{colorblock}\pause
408
e16e32db07d5
\begin{colorblock}{Site-local (deprecati)}
409
e16e32db07d5
Gli indirizzi \emph{site-local} sono indirizzi privati interni ad un site che non 
410
e16e32db07d5
devono essere instradati al di fuori della propria infrastruttura. Questa categoria di visibilità è attualmente deprecata.
411
e16e32db07d5
\end{colorblock}\pause
412
e16e32db07d5
\begin{colorblock}{Link-local}
413
e16e32db07d5
Gli indirizzi \emph{link-local} non devono mai essere inoltrati fuori dal link di origine.\\
414
e16e32db07d5
L'indirizzo \texttt{::1/128} rappresenta il \emph{localhost} per l'interfaccia di \emph{loopback} mentre il prefix \texttt{fe80::/10} è stato riservato per l'autoconfigurazione stateless a livello di link.
415
e16e32db07d5
\end{colorblock}
416
e16e32db07d5
\end{frame}
417
e16e32db07d5
418
e16e32db07d5
\begin{frame}\frametitle{Tipo di indirizzo}
419
e16e32db07d5
\begin{colorblock}{Unicast} % (fold)
420
e16e32db07d5
Un indirizzo \emph{unicast} identifica univocamente un'interfaccia.\\
421
e16e32db07d5
Per gli indirizzi \textit{global unicast} lo IANA ha registrato il prefisso \texttt{2000::/3},
422
e16e32db07d5
mentre il prefix \texttt{2001:db8::/32} è stato riservato per la scrittura di documentazione.
423
e16e32db07d5
\end{colorblock}
424
e16e32db07d5
\pause
425
e16e32db07d5
\begin{colorblock}{Multicast} 
426
e16e32db07d5
Un indirizzo \emph{multicast} individua un gruppo di interfacce, i pacchetti destinati 
427
e16e32db07d5
all'indirizzo vengono instradati a tutti i nodi partecipanti al multicast.
428
e16e32db07d5
\end{colorblock}
429
e16e32db07d5
\pause
430
e16e32db07d5
\begin{colorblock}{Anycast} 
431
e16e32db07d5
Un indirizzo \emph{anycast} individua un gruppo di interfacce, i pacchetti destinati ad un 
432
e16e32db07d5
indirizzo anycast vengono instradati verso una sola interfaccia, solitamente la più vicina.
433
e16e32db07d5
\end{colorblock}
434
e16e32db07d5
\end{frame}
435
e16e32db07d5
436
e16e32db07d5
\subsection{Header}
437
e16e32db07d5
\begin{frame}[fragile]\frametitle{Header IPv4}
438
e16e32db07d5
\begin{bytefield}{32} 
439
e16e32db07d5
\bitheader{0,3,4,7,8,15,16,18,19,31} \\ 
440
e16e32db07d5
\bitbox{4}{Ver.} & \colorbitbox{lightgray}{4}{IHL} & \bitbox{8}{TOS} &
441
e16e32db07d5
\bitbox{16}{Total length} \\ 
442
e16e32db07d5
\colorbitbox{lightgray}{16}{Identification} & \colorbitbox{lightgray}{3}{Flags} & \colorbitbox{lightgray}{13}{Fragment Offset} \\
443
e16e32db07d5
\bitbox{8}{TTL} & \bitbox{8}{Protocol} & \colorbitbox{lightgray}{16}{Header Checksum} \\
444
e16e32db07d5
\wordbox{1}{Source Address}\\
445
e16e32db07d5
\wordbox{1}{Destination Address}\\
446
e16e32db07d5
\colorbitbox{lightgray}{32}{Options (facoltativo)}  
447
e16e32db07d5
\end{bytefield}
448
e16e32db07d5
\vspace{0.5cm}\pause
449
e16e32db07d5
450
e16e32db07d5
Dimensione variabile tra 20 e 60 byte.\\I campi in grigio sono stati rimossi in IPv6.
451
e16e32db07d5
\end{frame}
452
e16e32db07d5
453
e16e32db07d5
\begin{frame}[fragile]\frametitle{Header IPv6}
454
e16e32db07d5
\begin{columns}
455
499b63f1404f
\begin{column}{1.5cm}
456
e16e32db07d5
\begin{bytefield}{32} 
457
e16e32db07d5
\bitheader{0,3,4,11,12,15,16,23,24,31} \\ 
458
e16e32db07d5
\bitbox{4}{Ver.} & \bitbox{8}{Traffic Class} & 
459
e16e32db07d5
\bitbox{20}{Flow Label} \\ 
460
e16e32db07d5
\bitbox{16}{Payload Length} & \bitbox{8}{Next Header} &
461
e16e32db07d5
\bitbox{8}{Hop Limit} \\
462
e16e32db07d5
\wordbox{4}{Source Address}\\
463
e16e32db07d5
\wordbox{4}{Destination Address} 
464
e16e32db07d5
\end{bytefield}
465
e16e32db07d5
\end{column}
466
499b63f1404f
\begin{column}{8.5cm}
467
e16e32db07d5
%\begin{actionenv}<only@2->
468
e16e32db07d5
%\begin{colorblock}{Vantaggi di IPv6}
469
e16e32db07d5
%\begin{itemize}
470
e16e32db07d5
%\item<2-> Lunghezza fissa 40 byte
471
e16e32db07d5
%\item<3-> Rimosso il controllo di errore
472
e16e32db07d5
%\item<4-> Rimossa la frammentazione
473
e16e32db07d5
%\item<5-> Header Extensions
474
e16e32db07d5
%\end{itemize}
475
e16e32db07d5
%\end{colorblock}
476
e16e32db07d5
%\end{actionenv}
477
e16e32db07d5
\end{column}
478
e16e32db07d5
\end{columns}
479
e16e32db07d5
\end{frame}
480
e16e32db07d5
481
e16e32db07d5
\begin{frame}[fragile]\frametitle{Header IPv6 - Version}
482
e16e32db07d5
\begin{columns}
483
e16e32db07d5
\begin{column}{1.5cm}
484
e16e32db07d5
\begin{bytefield}{32} 
485
e16e32db07d5
\bitheader{0,3,4,11,12,15,16,23,24,31} \\ 
486
e16e32db07d5
\colorbitbox{chameleongreen2}{4}{Ver.} & \bitbox{8}{Traffic Class} & 
487
e16e32db07d5
\bitbox{20}{Flow Label} \\ 
488
e16e32db07d5
\bitbox{16}{Payload Length} & \bitbox{8}{Next Header} &
489
e16e32db07d5
\bitbox{8}{Hop Limit} \\
490
e16e32db07d5
\wordbox{4}{Source Address}\\
491
e16e32db07d5
\wordbox{4}{Destination Address} 
492
e16e32db07d5
\end{bytefield}
493
e16e32db07d5
\end{column}
494
e16e32db07d5
\begin{column}{8.5cm}
495
e16e32db07d5
\begin{colorblock}{Version (4 bit)}
496
e16e32db07d5
Specifica la versione del protocollo, in questo caso 6.
497
e16e32db07d5
\end{colorblock}
498
e16e32db07d5
\end{column}
499
e16e32db07d5
\end{columns}
500
e16e32db07d5
\end{frame}
501
e16e32db07d5
502
e16e32db07d5
\begin{frame}[fragile]\frametitle{Header IPv6 - Traffic Class}
503
e16e32db07d5
\begin{columns}
504
e16e32db07d5
\begin{column}{1.5cm}
505
e16e32db07d5
\begin{bytefield}{32} 
506
e16e32db07d5
\bitheader{0,3,4,11,12,15,16,23,24,31} \\ 
507
e16e32db07d5
\bitbox{4}{Ver.} & \colorbitbox{chameleongreen2}{8}{Traffic Class} & 
508
e16e32db07d5
\bitbox{20}{Flow Label} \\ 
509
e16e32db07d5
\bitbox{16}{Payload Length} & \bitbox{8}{Next Header} &
510
e16e32db07d5
\bitbox{8}{Hop Limit} \\
511
e16e32db07d5
\wordbox{4}{Source Address}\\
512
e16e32db07d5
\wordbox{4}{Destination Address} 
513
e16e32db07d5
\end{bytefield}
514
e16e32db07d5
\end{column}
515
e16e32db07d5
\begin{column}{8.5cm}
516
e16e32db07d5
\begin{colorblock}{Traffic Class (1 byte)}
517
e16e32db07d5
Sostituisce il campo \texttt{Type of Service} di IPv4. Serve a gestire differenti tipologie di traffico in base alla loro priorità.
518
e16e32db07d5
\end{colorblock}
519
e16e32db07d5
\end{column}
520
e16e32db07d5
\end{columns}
521
e16e32db07d5
\end{frame}
522
e16e32db07d5
523
e16e32db07d5
\begin{frame}[fragile]\frametitle{Header IPv6 - Flow Label}
524
e16e32db07d5
\begin{columns}
525
e16e32db07d5
\begin{column}{1.5cm}
526
e16e32db07d5
\begin{bytefield}{32} 
527
e16e32db07d5
\bitheader{0,3,4,11,12,15,16,23,24,31} \\ 
528
e16e32db07d5
\bitbox{4}{Ver.} & \bitbox{8}{Traffic Class} & 
529
e16e32db07d5
\colorbitbox{chameleongreen2}{20}{Flow Label} \\ 
530
e16e32db07d5
\bitbox{16}{Payload Length} & \bitbox{8}{Next Header} &
531
e16e32db07d5
\bitbox{8}{Hop Limit} \\
532
e16e32db07d5
\wordbox{4}{Source Address}\\
533
e16e32db07d5
\wordbox{4}{Destination Address} 
534
e16e32db07d5
\end{bytefield}
535
e16e32db07d5
\end{column}
536
e16e32db07d5
\begin{column}{8.5cm}
537
e16e32db07d5
\begin{colorblock}{Flow Label (20 bit)}
538
e16e32db07d5
Serve a marchiare i flussi per permetterne una gestione differenziata, attualmente è considerato un campo sperimentale.
539
e16e32db07d5
\end{colorblock}
540
e16e32db07d5
\end{column}
541
e16e32db07d5
\end{columns}
542
e16e32db07d5
\end{frame}
543
e16e32db07d5
544
e16e32db07d5
\begin{frame}[fragile]\frametitle{Header IPv6 - Payload Length}
545
e16e32db07d5
\begin{columns}
546
e16e32db07d5
\begin{column}{1.5cm}
547
e16e32db07d5
\begin{bytefield}{32} 
548
e16e32db07d5
\bitheader{0,3,4,11,12,15,16,23,24,31} \\ 
549
e16e32db07d5
\bitbox{4}{Ver.} & \bitbox{8}{Traffic Class} & 
550
e16e32db07d5
\bitbox{20}{Flow Label} \\ 
551
e16e32db07d5
\colorbitbox{chameleongreen2}{16}{Payload Length} & \bitbox{8}{Next Header} &
552
e16e32db07d5
\bitbox{8}{Hop Limit} \\
553
e16e32db07d5
\wordbox{4}{Source Address}\\
554
e16e32db07d5
\wordbox{4}{Destination Address} 
555
e16e32db07d5
\end{bytefield}
556
e16e32db07d5
\end{column}
557
e16e32db07d5
\begin{column}{8.5cm}
558
e16e32db07d5
\begin{colorblock}{Payload Length (2 byte)}
559
e16e32db07d5
Specifica la lunghezza del \texttt{payload}, a differenza di IPv4 si dichiara esclusivamente la \underline{dimensione dei dati trasportati}, senza considerare l'header IP.
560
e16e32db07d5
\end{colorblock}
561
e16e32db07d5
\end{column}
562
e16e32db07d5
\end{columns}
563
e16e32db07d5
\end{frame}
564
e16e32db07d5
565
e16e32db07d5
\begin{frame}[fragile]\frametitle{Header IPv6 - Next Header}
566
e16e32db07d5
\begin{columns}
567
e16e32db07d5
\begin{column}{1.5cm}
568
e16e32db07d5
\begin{bytefield}{32} 
569
e16e32db07d5
\bitheader{0,3,4,11,12,15,16,23,24,31} \\ 
570
e16e32db07d5
\bitbox{4}{Ver.} & \bitbox{8}{Traffic Class} & 
571
e16e32db07d5
\bitbox{20}{Flow Label} \\ 
572
e16e32db07d5
\bitbox{16}{Payload Length} & \colorbitbox{chameleongreen2}{8}{Next Header} &
573
e16e32db07d5
\bitbox{8}{Hop Limit} \\
574
e16e32db07d5
\wordbox{4}{Source Address}\\
575
e16e32db07d5
\wordbox{4}{Destination Address} 
576
e16e32db07d5
\end{bytefield}
577
e16e32db07d5
\end{column}
578
e16e32db07d5
\begin{column}{8.5cm}
579
e16e32db07d5
\begin{colorblock}{Next Header (1 byte)}
580
e16e32db07d5
Sostituisce il campo \texttt{Protocol Type} di IPv4. Mantiene i valori definiti per la vecchia versione del protocollo ed aggiunge dei nuovi codici per gli \texttt{Extension header}
581
e16e32db07d5
\end{colorblock}
582
e16e32db07d5
\end{column}
583
e16e32db07d5
\end{columns}
584
e16e32db07d5
\end{frame}
585
e16e32db07d5
586
e16e32db07d5
\begin{frame}[fragile]\frametitle{Header IPv6 - Hop Limit}
587
e16e32db07d5
\begin{columns}
588
e16e32db07d5
\begin{column}{1.5cm}
589
e16e32db07d5
\begin{bytefield}{32} 
590
e16e32db07d5
\bitheader{0,3,4,11,12,15,16,23,24,31} \\ 
591
e16e32db07d5
\bitbox{4}{Ver.} & \bitbox{8}{Traffic Class} & 
592
e16e32db07d5
\bitbox{20}{Flow Label} \\ 
593
e16e32db07d5
\bitbox{16}{Payload Length} & \bitbox{8}{Next Header} &
594
e16e32db07d5
\colorbitbox{chameleongreen2}{8}{Hop Limit} \\
595
e16e32db07d5
\wordbox{4}{Source Address}\\
596
e16e32db07d5
\wordbox{4}{Destination Address} 
597
e16e32db07d5
\end{bytefield}
598
e16e32db07d5
\end{column}
599
e16e32db07d5
\begin{column}{8.5cm}
600
e16e32db07d5
\begin{colorblock}{Hop Limit (1 byte)}
601
e16e32db07d5
Sostituisce il campo \texttt{TTL} di IPv4. Storicamente (in IPv4) il TTL misurava i ``secondi di vita'' del datagramma, mentre ora misura il numero di ``salti'' da nodo a nodo della rete, per questo motivo con IPv6 si è deciso di cambiargli nome.
602
e16e32db07d5
\end{colorblock}
603
e16e32db07d5
\end{column}
604
e16e32db07d5
\end{columns}
605
e16e32db07d5
\end{frame}
606
e16e32db07d5
607
e16e32db07d5
\begin{frame}[fragile]\frametitle{Header IPv6 - Source Address}
608
e16e32db07d5
\begin{columns}
609
e16e32db07d5
\begin{column}{1.5cm}
610
e16e32db07d5
\begin{bytefield}{32} 
611
e16e32db07d5
\bitheader{0,3,4,11,12,15,16,23,24,31} \\ 
612
e16e32db07d5
\bitbox{4}{Ver.} & \bitbox{8}{Traffic Class} & 
613
e16e32db07d5
\bitbox{20}{Flow Label} \\ 
614
e16e32db07d5
\bitbox{16}{Payload Length} & \bitbox{8}{Next Header} &
615
e16e32db07d5
\bitbox{8}{Hop Limit} \\
616
e16e32db07d5
\rlap{\wordbox{4}{\color{chameleongreen2}\rule{\width}{\height}}}\wordbox{4}{Source Address}\\
617
e16e32db07d5
\wordbox{4}{Destination Address} 
618
e16e32db07d5
\end{bytefield}
619
e16e32db07d5
\end{column}
620
e16e32db07d5
\begin{column}{8.5cm}
621
e16e32db07d5
\begin{colorblock}{Source Address (16 byte)}
622
e16e32db07d5
Indirizzo sorgente del datagramma.
623
e16e32db07d5
\end{colorblock}
624
e16e32db07d5
\end{column}
625
e16e32db07d5
\end{columns}
626
e16e32db07d5
\end{frame}
627
e16e32db07d5
628
e16e32db07d5
\begin{frame}[fragile]\frametitle{Header IPv6 - Destination Address}
629
e16e32db07d5
\begin{columns}
630
e16e32db07d5
\begin{column}{1.5cm}
631
e16e32db07d5
\begin{bytefield}{32} 
632
e16e32db07d5
\bitheader{0,3,4,11,12,15,16,23,24,31} \\ 
633
e16e32db07d5
\bitbox{4}{Ver.} & \bitbox{8}{Traffic Class} & 
634
e16e32db07d5
\bitbox{20}{Flow Label} \\ 
635
e16e32db07d5
\bitbox{16}{Payload Length} & \bitbox{8}{Next Header} &
636
e16e32db07d5
\bitbox{8}{Hop Limit} \\
637
e16e32db07d5
\wordbox{4}{Source Address}\\
638
e16e32db07d5
\rlap{\wordbox{4}{\color{chameleongreen2}\rule{\width}{\height}}}\wordbox{4}{Destination Address} 
639
e16e32db07d5
\end{bytefield}
640
e16e32db07d5
\end{column}
641
e16e32db07d5
\begin{column}{8.5cm}
642
e16e32db07d5
\begin{colorblock}{Destination Address (16 byte)}
643
e16e32db07d5
Indirizzo destinazione del datagramma.
644
e16e32db07d5
\end{colorblock}
645
e16e32db07d5
\end{column}
646
e16e32db07d5
\end{columns}
647
e16e32db07d5
\end{frame}
648
499b63f1404f
649
499b63f1404f
\begin{frame}\frametitle{Header IPv6 - I campi rimossi}
650
499b63f1404f
	\begin{colorblock}{Gli svantaggi dei campi rimossi in IPv6}
651
499b63f1404f
		\pause
652
499b63f1404f
		\begin{description}
653
499b63f1404f
			\item[Checksum] Questo campo deve essere ricalcolato da ogni router a causa del decremento del \texttt{TTL}\pause
654
499b63f1404f
			\item[Identification, Flag e Fragment Offset] La frammentazione è a carico dei router in cui la \texttt{MTU} del link in uso non sia sufficiente a far transitare il pacchetto, in caso di perdita di un solo frammento è necessario ritrasmettere l'intero datagramma (che molto probabilemtne verrà frammentato di nuovo durante il tragitto)\pause
655
499b63f1404f
			\item[IHL e Options] La presenza di un campo opzionale a lunghezza variabile impedisce di accedere direttamente ai dati del datagramma senza aver fatto prima un'ispezione dei campi della testata
656
499b63f1404f
		\end{description}
657
499b63f1404f
	\end{colorblock}
658
499b63f1404f
\end{frame}
659
499b63f1404f
660
b0824ccd5f09
%\subsubsection{Extension headers}
661
499b63f1404f
\begin{frame}\frametitle{Header IPv6 - Extension header}
662
499b63f1404f
	In IPv6 \`e possibile estendere l'header attraverso gli 
663
499b63f1404f
	\textit{Extension header}, la loro presenza \`e indicata dal campo
664
499b63f1404f
	\texttt{Next Header} e se non sono di pertinenza del nodo di transito
665
499b63f1404f
	vengono ignorati inoltrando il pacchetto secondo le informazioni presenti
666
499b63f1404f
	nell'header.\pause
667
499b63f1404f
	
668
499b63f1404f
	\vspace{0.5cm}
669
499b63f1404f
	Questi \textit{Extension headers} sono considerati a tutti gli effetti parte
670
499b63f1404f
	del payload e ne influenzano la dimensione.\pause
671
499b63f1404f
	
672
499b63f1404f
	\vspace{0.5cm}
673
499b63f1404f
	Alcuni esempi sono \texttt{Hop-by-Hop Option header}, 
674
499b63f1404f
	\texttt{Routing header}, \texttt{Fragment header}, 
675
499b63f1404f
	\texttt{Destination Options header}, \texttt{Authentication header} ed 
676
499b63f1404f
	\texttt{Encryption Security Payload header}
677
499b63f1404f
678
499b63f1404f
\end{frame}
679
499b63f1404f
\begin{frame}\frametitle{Header IPv6 - Extension header (cont.)}
680
499b63f1404f
	\begin{colorblock}{\texttt{Fragment header} ? Ma non avevamo rimosso la frammentazione?}
681
499b63f1404f
		\pause
682
499b63f1404f
		In questo caso la frammentazione è una opzione end-to-end, del tutto trasparente ai router intermedi e grava esclusivamente sui due estremi della comunicazione, che tipicamente sono due macchine più performanti dei router che li interconnettono.\\
683
499b63f1404f
		 Inoltre in caso di perdita di un frammento è necessario rispedire solo quello, perch\'e si tratta effettivamente di un vero pacchetto IP (anche se il suo payload è un frammento)
684
499b63f1404f
	\end{colorblock}
685
499b63f1404f
\end{frame}
686
499b63f1404f
\begin{frame}\frametitle{Header IPv6 - Extension header (cont.)}
687
499b63f1404f
	\begin{colorblock}{Ma con gli header extension non si torna ad avere una dimensione variabile della testata?}
688
499b63f1404f
		\pause
689
499b63f1404f
		No! \emph{Questi \textit{Extension headers} sono considerati a tutti gli effetti parte
690
499b63f1404f
		del payload e ne influenzano la dimensione.}
691
499b63f1404f
		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}
692
499b63f1404f
	\end{colorblock}
693
499b63f1404f
\end{frame}
694
0a549da557af
695
0a549da557af
\begin{frame}\frametitle{1 interfaccia $\Leftrightarrow$ N indirizzi}
696
0a549da557af
	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
697
0a549da557af
	\begin{colorblock}{Vantaggi?}
698
0a549da557af
		\pause
699
0a549da557af
		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.
700
0a549da557af
	\end{colorblock}
701
0a549da557af
\end{frame}
702
e16e32db07d5
% section ipv6_nel_dettaglio (end)
703
e16e32db07d5
704
0a549da557af
\section{Automatismi e routing} % (fold)
705
b0824ccd5f09
\subsection{Introduzione} 
706
0a549da557af
\begin{frame}\frametitle{Autoconfigurazione}
707
35a9caac5cef
	\begin{itemize}
708
35a9caac5cef
	\item Una delle novità introdotte da IPv6 è l'autoconfigurazione dei nodi di rete, che anche in assenza di un router sono in grado di generare autonomamente un indirizzo link-local unicast per garantire la comunicazione fra i nodi interconnessi.
709
35a9caac5cef
	\item La generazione di questo tipo di indirizzo è il primo passo da eseguire per poter ottenere un indirizzo global unicast.
710
35a9caac5cef
	\end{itemize}
711
35a9caac5cef
\end{frame}
712
35a9caac5cef
713
35a9caac5cef
\subsection{ICMPv6}
714
35a9caac5cef
\begin{frame}\frametitle{ICMPv6 - Definizione}
715
35a9caac5cef
	\begin{colorblock}{Definzione  (Wikipedia)}
716
35a9caac5cef
	L'Internet Control Message Protocol versione 6 (ICMPv6) è l'evoluzione nelle reti IPv6 del protocollo ICMP per le reti IPv4. In essa \emph{vengono aggiunte nuove funzionalità che nel protocollo precedente erano demandate ad altri livelli protocollari (come ad esempio l'ARP)} e tolte altre che, invece, erano poco usate. 
717
0a549da557af
	
718
35a9caac5cef
	Come nel caso della versione precedente, l'ICMPv6 viene utilizzato per monitorare lo stato della rete e per inviare pacchetti di gestione e di errore. 
719
0a549da557af
	
720
35a9caac5cef
	Essa è descritta nell'RFC 2463.
721
35a9caac5cef
	\end{colorblock}
722
35a9caac5cef
	\begin{flushright}
723
35a9caac5cef
		\url{http://it.wikipedia.org/wiki/ICMPv6}
724
35a9caac5cef
	\end{flushright} 
725
35a9caac5cef
\end{frame}
726
35a9caac5cef
727
35a9caac5cef
\begin{frame}[fragile]\frametitle{ICMPv6 - Pacchetto}
728
35a9caac5cef
	\begin{colorblock}{Struttura del pacchetto}
729
35a9caac5cef
		\begin{center}
730
35a9caac5cef
		\begin{bytefield}{32} 
731
35a9caac5cef
			\bitheader{0,8,16,32} \\ 
732
35a9caac5cef
			%\wordgroupr{Generic Header}
733
35a9caac5cef
			\bitbox{8}{Type} & \bitbox{8}{Code} & \bitbox{16}{Checksum}\\
734
35a9caac5cef
			%\endwordgroupr \\
735
35a9caac5cef
			\wordbox[lrt]{1}{Message body} \\ 
736
35a9caac5cef
			\skippedwords \\ 
737
35a9caac5cef
			\wordbox[lrb]{1}{} \\
738
35a9caac5cef
		\end{bytefield}
739
35a9caac5cef
		\end{center}
740
35a9caac5cef
	\end{colorblock}
741
0a549da557af
\end{frame}
742
0a549da557af
743
0a549da557af
\begin{frame}\frametitle{Indirizzo link-local unicast autoconfigurato}
744
0a549da557af
	\begin{colorblock}{Global Routing Prefix}
745
0a549da557af
		Gli indirizzi link-local sono tutti nel prefix \texttt{FE80::/10}.
746
0a549da557af
		
747
0a549da557af
		All'interno di questo prefix è stato riservato il GRP \texttt{FE80::/64} per gli indirizzi
748
0a549da557af
		link-local unicast autoconfigurati.
749
0a549da557af
	\end{colorblock} \pause
750
0a549da557af
	\vspace{0.5cm}
751
0a549da557af
	\begin{colorblock}{Interface ID}
752
0a549da557af
		Per assegnare la interface ID si utilizza l'EUI-64, un campo di 64 bit generato a partire
753
0a549da557af
		 dall'indirizzo MAC dell'interfaccia di rete. 
754
0a549da557af
	\end{colorblock}
755
0a549da557af
\end{frame}
756
0a549da557af
 
757
b0824ccd5f09
\subsection{EUI-64} 
758
0a549da557af
\begin{frame}[fragile]\frametitle{Extended Unique Identifier (EUI-64) - Algoritmo}
759
0a549da557af
	
760
0a549da557af
%\setlength{\byteheight}{4ex}
761
0a549da557af
\settowidth{\bitwidth}{\tiny 9i}
762
0a549da557af
\begin{bytefield}{64} 
763
0a549da557af
	\bitheader{0,8,16,24,32,40,48,56,64} \\ 
764
0a549da557af
	\wordgroupr{\tiny{MAC}}
765
0a549da557af
	\bitbox{8}{MAC[0]} & \bitbox{8}{MAC[1]} &\bitbox{8}{MAC[2]} &\bitbox{8}{MAC[3]} &\bitbox{8}{MAC[4]} &\bitbox{8}{MAC[5]}
766
0a549da557af
	\endwordgroupr \\
767
0a549da557af
	\wordbox[]{1}{$\Downarrow$ \\[1ex]} \\ \pause
768
0a549da557af
	\bitbox{8}{MAC[0]} & \bitbox{8}{MAC[1]} &\bitbox{8}{MAC[2]} &
769
0a549da557af
	 \colorbitbox{chameleongreen2}{16}{\texttt{0xFF FE}} &
770
0a549da557af
	\bitbox{8}{MAC[3]} & \bitbox{8}{MAC[4]} &\bitbox{8}{MAC[5]} \\ 
771
0a549da557af
	\wordbox[]{1}{$\Downarrow$ \\[1ex]} \\ \pause
772
0a549da557af
	\wordgroupr{\tiny{EUI-64}}
773
0a549da557af
	\colorbitbox{chameleongreen2}{8}{\texttt{0x02}} & \bitbox{8}{MAC[1]} &\bitbox{8}{MAC[2]} &
774
0a549da557af
	 \bitbox{16}{\texttt{0xFF FE}} &
775
0a549da557af
	\bitbox{8}{MAC[3]} & \bitbox{8}{MAC[4]} &\bitbox{8}{MAC[5]} 
776
0a549da557af
	\endwordgroupr
777
0a549da557af
\end{bytefield} 
778
0a549da557af
	
779
0a549da557af
\end{frame}
780
0a549da557af
781
0a549da557af
\begin{frame}[fragile]\frametitle{EUI-64 - esempio}
782
0a549da557af
	Vediamo un esempio pratico con l'indirizzo MAC \texttt{00:16:cb:8c:de:8b} \pause
783
0a549da557af
	
784
0a549da557af
	\vspace{0.5cm}
785
0a549da557af
786
0a549da557af
	%\setlength{\byteheight}{4ex}
787
0a549da557af
	\settowidth{\bitwidth}{\tiny 9i}
788
0a549da557af
	\begin{bytefield}{64} 
789
0a549da557af
		\bitheader{0,8,16,24,32,40,48,56,64} \\ 
790
0a549da557af
		\wordgroupr{\tiny{MAC}}
791
0a549da557af
		\bitbox{8}{\texttt{0x00}} & \bitbox{8}{\texttt{0x16}} &\bitbox{8}{\texttt{0xcb}}
792
0a549da557af
		 &\bitbox{8}{\texttt{0x8c}} &\bitbox{8}{\texttt{0xde}} &\bitbox{8}{\texttt{0x8b}}
793
0a549da557af
		\endwordgroupr \\
794
0a549da557af
		\wordbox[]{1}{$\Downarrow$ \\[1ex]} \\ \pause
795
0a549da557af
		\bitbox{8}{\texttt{0x00}} & \bitbox{8}{\texttt{0x16}} &\bitbox{8}{\texttt{0xcb}} &
796
0a549da557af
		\colorbitbox{chameleongreen2}{16}{\texttt{0xff fe}} & \bitbox{8}{\texttt{0x8c}} &
797
0a549da557af
		\bitbox{8}{\texttt{0xde}} &
798
0a549da557af
		\bitbox{8}{\texttt{0x8b}} \\ 
799
0a549da557af
		\wordbox[]{1}{$\Downarrow$ \\[1ex]} \\ \pause
800
0a549da557af
		\wordgroupr{\tiny{EUI-64}}
801
0a549da557af
		\colorbitbox{chameleongreen2}{8}{\texttt{0x02}} & \bitbox{8}{\texttt{0x16}} &
802
0a549da557af
		\bitbox{8}{\texttt{0xcb}} &
803
0a549da557af
		\bitbox{16}{\texttt{0xff fe}} & \bitbox{8}{\texttt{0x8c}} &\bitbox{8}{\texttt{0xde}} &
804
0a549da557af
		\bitbox{8}{\texttt{0x8b}} \\ 
805
0a549da557af
		\endwordgroupr
806
0a549da557af
	\end{bytefield}
807
0a549da557af
	\pause
808
0a549da557af
	
809
0a549da557af
	\vspace{0.25cm}
810
0a549da557af
	
811
0a549da557af
	L'indirizzo link-local EUI-64 è \texttt{fe80::2:16:cb:ff:fe:8c:de:8b}
812
0a549da557af
\end{frame}
813
0a549da557af
814
b0824ccd5f09
\subsection{IPv6 Stateless Address Autoconfiguration} 
815
0a549da557af
\begin{frame}[allowframebreaks]\frametitle{Configurazione stateless - Definizioni} % (fold)
816
0a549da557af
\label{sub:configurazione_stateless}
817
0a549da557af
La configurazione stateless offre la possibilità di ottenere un indirizzo global unicast e un router
818
0a549da557af
verso cui instradare i pacchetti in modo automatico. 
819
0a549da557af
820
0a549da557af
Il procedimento fa uso di pacchetti ICMPv6 dedicati a questo scopo.
821
0a549da557af
822
0a549da557af
\vspace{0.25cm}
823
0a549da557af
\textbf{Definizioni:}
824
0a549da557af
%\subsubsection{Definizioni} % (fold)
825
0a549da557af
%\label{ssub:definizioni}
826
0a549da557af
\begin{description}
827
0a549da557af
\item[tentative address] (indirizzo incerto) un indirizzo di cui si sta verificando l'unicità sul link, 
828
0a549da557af
 ancora non è stato assegnato all'interfaccia.
829
0a549da557af
\item[preferred address] (indirizzo preferito) un indirizzo assegnato all'interfaccia che può essere usato dai
830
0a549da557af
 protocolli di livello superiore senza alcuna restrizione. Può figurare come 
831
0a549da557af
 indirizzo di sorgente o di destinazione.
832
0a549da557af
\item[deprecated address] (indirizzo deprecato) un indirizzo assegnato all'interfaccia il cui uso è
833
0a549da557af
 scoraggiato, ma non proibito. I pacchetti inviati e ricevuti con questo indirizzo sono trattati
834
0a549da557af
 normalmente, ma le nuove comunicazioni non dovrebbero utilizzarlo. 
835
0a549da557af
 Un indirizzo deprecato può essere ancora utilizzato per quei protocolli in cui cambiare in favore 
836
0a549da557af
 di un nuovo indirizzo preferito causerebbe problemi alla connessione (ad esempio una sessione 
837
0a549da557af
 TCP attiva.)
838
0a549da557af
\item[valid address] (indirizzo valido) un indirizzo deprecato o preferito.
839
0a549da557af
\item[invalid address] (indirizzo non valido) un indirizzo che non è assegnato a nessuna interfaccia. 
840
0a549da557af
 Un indirizzo valido diventa non valido quando il suo \emph{valid~lifetime} scade. 
841
0a549da557af
 Gli indirizzi non validi non devono essere utilizzati come indirizzo di sorgente o di destinazione.
842
0a549da557af
\item[preferred lifetime] il periodo di tempo in cui l'indirizzo deve essere considerato preferito.
843
0a549da557af
 Alla scadenza l'indirizzo diventa deprecato.
844
0a549da557af
\item[valid lifetime] il periodo di tempo in cui l'indirizzo deve essere considerato valido. Questo
845
0a549da557af
 valore deve essere maggiore o uguale del \emph{preferred~lifetime}. Alla sua scadenza l'indirizzo diventa
846
0a549da557af
 non valido.
847
0a549da557af
\end{description}
848
0a549da557af
\end{frame}
849
0a549da557af
% subsubsection definizioni (end)
850
0a549da557af
851
0a549da557af
\begin{frame}\frametitle{Configurazione stateless - Procedimento} 
852
0a549da557af
	\begin{colorblock}{Indirizzo link-local}
853
0a549da557af
		\begin{itemize}
854
0a549da557af
		\item<+-> generazione di un \emph{tentative address} link-local con il metodo EUI-64
855
0a549da557af
		\item<+-> invio di un pacchetto ICMPv6 Neighbor Solicitation con campo \texttt{Target Address} impostato sull'indirizzo da verificare
856
0a549da557af
		\item<+-> se un nodo utilizza questo indirizzo risponde con un pacchetto ICMPv6 Neighbor Advertisement avvisando che l'indirizzo è già in uso.
857
0a549da557af
		\item<+-> se non si ricevono Neighbor Advertisement l'indirizzo diventa \emph{valid address}
858
0a549da557af
		\end{itemize}
859
0a549da557af
	\end{colorblock} 
860
0a549da557af
	\vspace{.5cm}
861
0a549da557af
	\uncover<5->{Il fallimento di questa procedura obbliga ad una configurazione manuale dell'host.}
862
0a549da557af
\end{frame}
863
0a549da557af
864
35a9caac5cef
\begin{frame}[fragile,shrink=10]\frametitle{ICMPv6 - Neighbor Solicitation}
865
35a9caac5cef
		\begin{center}
866
35a9caac5cef
		\begin{bytefield}{32} 
867
35a9caac5cef
			\bitheader{0,8,16,32} \\ 
868
35a9caac5cef
			%\wordgroupr{Generic Header}
869
35a9caac5cef
			\bitbox{8}{Type=\texttt{135}} & \bitbox{8}{Code=\texttt{0}} & \bitbox{16}{Checksum}\\
870
35a9caac5cef
			%\endwordgroupr \\
871
35a9caac5cef
			\wordbox{1}{Reserved}\\
872
35a9caac5cef
			\wordbox{4}{Target Address}\\
873
35a9caac5cef
			\wordbox[lrt]{1}{Options} \\ 
874
35a9caac5cef
			\skippedwords \\ 
875
35a9caac5cef
			\wordbox[lrb]{1}{} \\
876
35a9caac5cef
		\end{bytefield}
877
35a9caac5cef
		\end{center}
878
35a9caac5cef
\end{frame}
879
35a9caac5cef
880
35a9caac5cef
\begin{frame}[fragile,shrink=10]\frametitle{ICMPv6 - Neighbor Advertisement}
881
35a9caac5cef
		\begin{center}
882
35a9caac5cef
		\begin{bytefield}{32} 
883
35a9caac5cef
			\bitheader{0,1,2,3,8,16,32} \\ 
884
35a9caac5cef
			%\wordgroupr{Generic Header}
885
35a9caac5cef
			\bitbox{8}{Type=\texttt{136}} & \bitbox{8}{Code=\texttt{0}} & \bitbox{16}{Checksum}\\
886
35a9caac5cef
			%\endwordgroupr \\
887
35a9caac5cef
			\bitbox{1}{ R } & \bitbox{1}{\tiny S \\ \texttt{1}} &\bitbox{1}{ O } & \bitbox{29}{Reserved}\\
888
35a9caac5cef
			\wordbox{4}{Target Address}\\
889
35a9caac5cef
			\wordbox[lrt]{1}{Options} \\ 
890
35a9caac5cef
			\skippedwords \\ 
891
35a9caac5cef
			\wordbox[lrb]{1}{} \\
892
35a9caac5cef
		\end{bytefield}
893
35a9caac5cef
		\end{center}
894
35a9caac5cef
\end{frame}
895
35a9caac5cef
896
0a549da557af
\begin{frame}\frametitle{Configurazione stateless - Procedimento (cont.)} % (fold)
897
0a549da557af
	\begin{colorblock}{Indirizzo global}
898
0a549da557af
		\begin{itemize}
899
0a549da557af
		\item<+-> Una volta ottenuto un indirizzo link-local valido, un host cerca di determinare la presenza di router sul proprio link.
900
0a549da557af
		\item<+-> I router inviano periodicamente dei pacchetti multicast di Router Advertisement in cui annunciano i prefix di loro competenza
901
0a549da557af
			\begin{itemize}
902
0a549da557af
				\item<+-> Router Solicitation all'indirizzo \texttt{FF02::2} per forzare l'invio
903
0a549da557af
			\end{itemize}
904
0a549da557af
		\item<+-> il pacchetto di Router Advertisement contiene le istruzioni per ottenre un indirizzo
905
0a549da557af
			\begin{itemize}[<5->]
906
0a549da557af
				\item \emph{autonomous address-configuration} (flag~A)
907
0a549da557af
				\item \emph{managed address configuration} (flag~M)
908
0a549da557af
				\item \emph{other statefull configuration} (flag~O) 
909
0a549da557af
			\end{itemize}
910
0a549da557af
		\end{itemize}
911
0a549da557af
	\end{colorblock}
912
0a549da557af
\end{frame}
913
0a549da557af
914
0a549da557af
\begin{frame}\frametitle{Configurazione stateless - Procedimento (cont.)}
915
0a549da557af
\begin{colorblock}{\emph{autonomous address-configuration} (flag~A)}
916
0a549da557af
	Se il nodo è riuscito a
917
0a549da557af
	completare in modo automatico l'assegnazione di un indirizzo link-local, allora può assegnarsi
918
0a549da557af
	come \emph{preferred address} un indirizzo composto dal prefix annunciato e dalla interface ID calcolata secondo lo standard EUI-64.
919
0a549da557af
	
920
0a549da557af
	\vspace{.5cm}
921
0a549da557af
	
922
0a549da557af
	\begin{tabular}{| x{5cm} | x{5cm} |}
923
0a549da557af
   	\hline
924
0a549da557af
   	Prefix annunciato & EUI-64 \tnhl 
925
0a549da557af
   	\multicolumn{1}{c}{64 bit} &
926
0a549da557af
   	\multicolumn{1}{c}{64 bit}
927
0a549da557af
   \end{tabular}
928
0a549da557af
929
0a549da557af
	\vspace{.5cm}
930
0a549da557af
931
0a549da557af
	Altrimenti registra l'indirizzo come \emph{tentative address} e lo verifica con i pacchetti ICMPv6.
932
0a549da557af
\end{colorblock}
933
0a549da557af
\end{frame}
934
0a549da557af
935
0a549da557af
\begin{frame}\frametitle{Configurazione stateless - Procedimento (cont.)}
936
0a549da557af
\begin{colorblock}{\emph{managed address configuration} (flag~M) - statefull DHCP}
937
0a549da557af
	Indica la presenza di un server DHCPv6.
938
0a549da557af
\end{colorblock}
939
0a549da557af
940
0a549da557af
\vspace{.5cm} \pause
941
0a549da557af
942
0a549da557af
\begin{colorblock}{\emph{other statefull configuration} (flag~O) - stateless DHCP}
943
35a9caac5cef
	Indica la presenza di un server DHCPv6 per la richiesta di parametri \underline{diversi dall'indirizzo IP}. (DNS, NTP, SIP, etc \ldots)
944
0a549da557af
\end{colorblock}
945
0a549da557af
\end{frame}
946
0a549da557af
947
35a9caac5cef
%\begin{frame}[fragile]\frametitle{ICMPv6 - Router Solicitation}
948
35a9caac5cef
%		\begin{center}
949
35a9caac5cef
%		\begin{bytefield}{32} 
950
35a9caac5cef
%			\bitheader{0,8,16,32} \\ 
951
35a9caac5cef
%			%\wordgroupr{Generic Header}
952
35a9caac5cef
%			\bitbox{8}{Type=\texttt{133}} & \bitbox{8}{Code=\texttt{0}} & \bitbox{16}{Checksum}\\
953
35a9caac5cef
%			%\endwordgroupr \\
954
35a9caac5cef
%			\wordbox{1}{Reserved}\\
955
35a9caac5cef
%			\wordbox[lrt]{1}{Options} \\ 
956
35a9caac5cef
%			\skippedwords \\ 
957
35a9caac5cef
%			\wordbox[lrb]{1}{} \\
958
35a9caac5cef
%		\end{bytefield}
959
35a9caac5cef
%		\end{center}
960
0a549da557af
%\end{frame}
961
35a9caac5cef
%
962
35a9caac5cef
%\begin{frame}[fragile]\frametitle{ICMPv6 - Router Advertisement}
963
35a9caac5cef
%		\begin{center}
964
35a9caac5cef
%		\begin{bytefield}{32} 
965
35a9caac5cef
%			\bitheader{0,8,16,32} \\ 
966
35a9caac5cef
%			%\wordgroupr{Generic Header}
967
35a9caac5cef
%			\bitbox{8}{Type=\texttt{134}} & \bitbox{8}{Code=\texttt{0}} & \bitbox{16}{Checksum}\\
968
35a9caac5cef
%			%\endwordgroupr \\
969
35a9caac5cef
%			\bitbox{8}{Current Hop Limit} & \bitbox{1}{Code=\texttt{0}} & \bitbox{1}{Checksum}\\
970
35a9caac5cef
%			\wordbox{1}{Reserved}\\
971
35a9caac5cef
%			\wordbox[lrt]{1}{Options} \\ 
972
35a9caac5cef
%			\skippedwords \\ 
973
35a9caac5cef
%			\wordbox[lrb]{1}{} \\
974
35a9caac5cef
%		\end{bytefield}
975
35a9caac5cef
%		\end{center}
976
35a9caac5cef
%\end{frame}
977
35a9caac5cef
978
35a9caac5cef
\section{Routing OSPFv3} % (fold)
979
35a9caac5cef
\begin{frame}\frametitle{Routing OSPFv3}
980
35a9caac5cef
981
35a9caac5cef
	\begin{columns}
982
35a9caac5cef
	\column{.4\textwidth} % column designated by a command
983
35a9caac5cef
	\begin{itemize}
984
35a9caac5cef
		\item Algoritmo identico alla versione 2 (IPv4)
985
35a9caac5cef
		\item Utilizza solo indirizzi link-local
986
35a9caac5cef
		\item rete $\rightarrow$ link
987
35a9caac5cef
	\end{itemize}
988
35a9caac5cef
	\column{.6\textwidth}
989
35a9caac5cef
	\resizebox{.9\textwidth}{!}{
990
35a9caac5cef
	\includegraphics{aree_ospf}
991
35a9caac5cef
	}
992
35a9caac5cef
	\end{columns}
993
35a9caac5cef
\end{frame}
994
35a9caac5cef
995
35a9caac5cef
%\begin{frame}[fragile,shrink]\frametitle{Tabella di routing}
996
35a9caac5cef
%\begin{verbatim}
997
35a9caac5cef
%	Codes: 
998
35a9caac5cef
%	 C - Connected, L - Local, S - Static  B - BGP, R - RIP, D - EIGRP
999
35a9caac5cef
%	 O - OSPF Intra, OI - OSPF Inter, OE1 - OSPF ext 1, OE2 - OSPF ext 2
1000
35a9caac5cef
%	OE2 ::/0 [110/1], tag 1
1001
35a9caac5cef
%	     via FE80::20F:24FF:FECF:CF42, GigabitEthernet1/0/2
1002
35a9caac5cef
%	OE2 2001:760:2C05:1::/64 [110/20]
1003
35a9caac5cef
%	     via FE80::223:5DFF:FE15:FC41, GigabitEthernet1/0/5
1004
35a9caac5cef
%	L   2001:760:2C05:F0FF::7/128 [0/0]
1005
35a9caac5cef
%	     via GigabitEthernet1/0/2, receive
1006
35a9caac5cef
%	C   2001:760:2C05:F0FF::8/127 [0/0]
1007
35a9caac5cef
%	     via GigabitEthernet1/0/5, directly connected
1008
35a9caac5cef
%	L   2001:760:2C05:F0FF::9/128 [0/0]
1009
35a9caac5cef
%	     via GigabitEthernet1/0/5, receive
1010
35a9caac5cef
%	O   2001:760:2C05:F0FF::12/127 [110/2]
1011
35a9caac5cef
%	     via FE80::223:5DFF:FE15:FC41, GigabitEthernet1/0/5
1012
35a9caac5cef
%	O   2001:760:2C05:F0FF::14/127 [110/3]
1013
35a9caac5cef
%	     via FE80::223:5DFF:FE15:FC41, GigabitEthernet1/0/5
1014
35a9caac5cef
%	OE2 2001:760:2C05:F0FF::16/127 [110/20]
1015
35a9caac5cef
%	     via FE80::223:5DFF:FE15:FC41, GigabitEthernet1/0/5
1016
35a9caac5cef
%	L   FF00::/8 [0/0]
1017
35a9caac5cef
%	     via Null0, receive
1018
35a9caac5cef
%\end{verbatim}
1019
35a9caac5cef
%\end{frame}
1020
35a9caac5cef
% section routing_ospfv3 (end)
1021
35a9caac5cef
1022
35a9caac5cef
\section{DNS} % (fold)
1023
35a9caac5cef
1024
35a9caac5cef
\begin{frame}[fragile]\frametitle{I record DNS per IPv6}
1025
35a9caac5cef
	
1026
35a9caac5cef
	\begin{colorblock}{Query DNS}
1027
35a9caac5cef
		Per gestire gli indirizzi IPv6 sono stati introdotti i record AAAA.\\
1028
35a9caac5cef
		
1029
35a9caac5cef
		Esistono anche i record A6 ma sono ancora poco utilizzati.
1030
35a9caac5cef
	\end{colorblock}
1031
35a9caac5cef
	\pause
1032
35a9caac5cef
	\begin{colorblock}{Query inverse}
1033
35a9caac5cef
		Ogni sottodominio di \texttt{IP6.ARPA} rappresenta una cifra 
1034
35a9caac5cef
		esadecimale dell'indirizzo IPv6 a partire da quella più significativa.
1035
35a9caac5cef
		Quindi per chiedere l'hostname per l'indirizzo \texttt{2001:db8::cafe}
1036
35a9caac5cef
		bisogna interrogare il server DNS per il nome di dominio
1037
35a9caac5cef
		
1038
35a9caac5cef
		\vspace{.25cm}
1039
35a9caac5cef
		\resizebox{\textwidth}{!}{
1040
35a9caac5cef
		\texttt{e.f.a.c.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.8.b.d.0.1.0.0.2.ip6.arpa}}
1041
35a9caac5cef
	\end{colorblock}
1042
35a9caac5cef
\end{frame}
1043
35a9caac5cef
1044
35a9caac5cef
\begin{frame}[fragile,shrink]\frametitle{Esempio record AAAA (BIND 9)}
1045
35a9caac5cef
	\begin{verbatim}
1046
35a9caac5cef
$TTL    3600
1047
35a9caac5cef
@ 86400 IN SOA dns.ipv6.unifi.it. staffreti.unifi.it. (
1048
35a9caac5cef
                       2009081102   ; Serial
1049
35a9caac5cef
                       86400    ; Refresh
1050
35a9caac5cef
                       7200     ; Retry
1051
35a9caac5cef
                       3600000    ; Expire
1052
35a9caac5cef
                       3600 )  ; Minimum
1053
35a9caac5cef
1054
35a9caac5cef
@ 86400   IN      NS    dns.ipv6.unifi.it.
1055
35a9caac5cef
1056
35a9caac5cef
@ 4800    IN      AAAA  2001:760:2c05:1::20
1057
35a9caac5cef
          IN      A     150.217.1.20
1058
35a9caac5cef
1059
35a9caac5cef
dns   4800    IN  AAAA  2001:760:2c05:1::20
1060
35a9caac5cef
      4800    IN  A     150.217.1.20
1061
35a9caac5cef
1062
35a9caac5cef
lenst 4800    IN  AAAA  2001:760:2c05:1001::24
1063
35a9caac5cef
\end{verbatim} %$
1064
35a9caac5cef
\end{frame}
1065
35a9caac5cef
1066
35a9caac5cef
\begin{frame}[fragile,shrink]\frametitle{Esempio record PTR (BIND 9)}
1067
35a9caac5cef
\begin{verbatim}
1068
35a9caac5cef
$TTL 3d ; Default TTL 
1069
35a9caac5cef
@ IN SOA 5.0.c.2.0.6.7.0.1.0.0.2.ip6.arpa. staffreti.unifi.it. (
1070
35a9caac5cef
                2009081102      ; Serial number (YYYYMMdd)
1071
35a9caac5cef
                24h             ; Refresh time
1072
35a9caac5cef
                30m             ; Retry time
1073
35a9caac5cef
                2d              ; Expire time
1074
35a9caac5cef
                3d )            ; Default TTL
1075
35a9caac5cef
1076
35a9caac5cef
IN     NS     dns.ipv6.unifi.it.
1077
35a9caac5cef
1078
35a9caac5cef
; prefix 2001:760:2c05:1::/64
1079
35a9caac5cef
$ORIGIN 1.0.0.0.5.0.c.2.0.6.7.0.1.0.0.2.ip6.arpa.
1080
35a9caac5cef
0.2.0.0.0.0.0.0.0.0.0.0.0.0.0.0 IN PTR dns.ipv6.unifi.it.
1081
35a9caac5cef
; prefix 2001:760:2c05:1001::/64
1082
35a9caac5cef
$ORIGIN 1.0.0.1.5.0.c.2.0.6.7.0.1.0.0.2.ip6.arpa.
1083
35a9caac5cef
4.2.0.0.0.0.0.0.0.0.0.0.0.0.0.0 IN PTR lenst.ipv6.unifi.it.
1084
35a9caac5cef
\end{verbatim} %$
1085
35a9caac5cef
\end{frame}
1086
35a9caac5cef
1087
35a9caac5cef
\begin{frame}[t]\frametitle{Il problema del reverse DNS}
1088
35a9caac5cef
	\begin{colorblock}{RFC 1912}
1089
35a9caac5cef
		\emph{Ogni host raggiungibile su Internet deve avere un hostname ed un record PTR per il reverse DNS.}
1090
35a9caac5cef
		
1091
35a9caac5cef
		Questo è un problema per IPv6.
1092
35a9caac5cef
		\begin{itemize}
1093
35a9caac5cef
		\item impossibile una generazione a priori (sono troppi)
1094
35a9caac5cef
		\item una generazione on demand potrebbe esporre ad attacchi DOS 
1095
35a9caac5cef
		\end{itemize}
1096
35a9caac5cef
	\end{colorblock}
1097
35a9caac5cef
	\pause
1098
35a9caac5cef
	\begin{colorblock}{Come viene usato oggi il reverse DNS?}
1099
35a9caac5cef
		\begin{itemize}
1100
9125f2880637
		\item Controllo SPAM per i server mail
1101
35a9caac5cef
		\item Funzionalità di logging 
1102
35a9caac5cef
		\end{itemize}
1103
35a9caac5cef
	\end{colorblock}
1104
35a9caac5cef
	\pause
1105
35a9caac5cef
	\begin{colorblock}{Soluzione}
1106
35a9caac5cef
		Registrare i record PTR solo per i server.
1107
35a9caac5cef
	\end{colorblock}
1108
35a9caac5cef
\end{frame}
1109
35a9caac5cef
%\subsection{Il problema del reverse \acs{DNS}} %fold
1110
35a9caac5cef
%\label{sub:il_problema_del_reverse_dns}
1111
35a9caac5cef
%Ogni host raggiungibile su Internet deve avere un hostname ed un record PTR per
1112
35a9caac5cef
%il reverse \ac{DNS}. Questo \`e ci\`o che richiede l'RFC1912\cite{rfc1912} 
1113
35a9caac5cef
%in merito ai record IPv4, ma per IPv6? La questione rimane aperta perch\'e
1114
35a9caac5cef
%l'RFC non \`e stato aggiornato dopo la pubblicazione di IPv6 ed il reverse 
1115
35a9caac5cef
%\ac{DNS} viene utilizzato solo in alcuni casi.
1116
35a9caac5cef
%Alcune funzionalit\`a di logging lo usano per avere un output più leggibile, senza alcun 
1117
35a9caac5cef
%problema nel caso in cui il record non sia presente ed alcuni server di posta 
1118
35a9caac5cef
%elettronica, durante una sessione SMTP, verificano attraverso una query inversa
1119
35a9caac5cef
%che il server mittente sia effettivamente chi dichiara di essere e non uno spammer.
1120
35a9caac5cef
%
1121
35a9caac5cef
%Da un punto di vista pratico basterebbe registrare i record PTR solo per i
1122
35a9caac5cef
%server di posta, ma la discussione rimane comunque aperta nella comunit\`a.
1123
35a9caac5cef
%Gli \ac{ISP} per IPv4 solitamente generano in modo automatico i record \ac{DNS}
1124
35a9caac5cef
%per tutti gli indirizzi che ricevono dal \ac{RIR}, ma dato l'elevato numero di
1125
35a9caac5cef
%indirizzi presenti gi\`a in un prefix da 64 bit, che dovrebbero assegnare ad ogni
1126
35a9caac5cef
%cliente, questa strada risulta impercorribile. 
1127
35a9caac5cef
%Un'altra possibilità è la generazione dei record PTR al momento stesso della 
1128
35a9caac5cef
%query \ac{DNS}; tuttora non sono noti plugin di BIND per questa funzionalità
1129
35a9caac5cef
%e si tratta comunque di una strategia rischiosa in quanto esporrebbe ad attacchi 
1130
35a9caac5cef
%di tipo \ac{DDOS}.
1131
35a9caac5cef
%
1132
35a9caac5cef
%Se si scegliesse di generare staticamente a priori tutti i record AAAA e PTR 
1133
35a9caac5cef
%è mandatorio l'uso di un server DHCP per assegnare indirizzi in un intervallo 
1134
35a9caac5cef
%ristretto. Per la generazione dei record si può utilizzare lo script ruby sviluppato
1135
35a9caac5cef
%durante il lavoro di tesi e disponibile in appendice \ref{lst:dns_gen}.
1136
35a9caac5cef
% subsection il problema del reverse dns (end) 
1137
35a9caac5cef
% section dns (end)
1138
35a9caac5cef
1139
0a549da557af
% section automatismi_e_routing (end)
1140
0a549da557af
1141
9125f2880637
\section{Tunneling} % (fold)
1142
9125f2880637
\begin{frame}[t]\frametitle{Tunneling}
1143
9125f2880637
\begin{colorblock}{Scopo}
1144
9125f2880637
	Le tecniche di tunneling consentono di bypassare tronconi della rete che non 
1145
9125f2880637
	supportano IPv6 incapsulando il pacchetto in uno o pi\`u datagrammi IPv4.
1146
9125f2880637
\end{colorblock}
1147
9125f2880637
\pause
1148
9125f2880637
\vspace{.5cm}
1149
9125f2880637
\begin{colorblock}{Metodi}
1150
9125f2880637
	\begin{itemize}
1151
9125f2880637
	\item<2-> Tunneling a livello Rete (\texttt{proto-41})
1152
9125f2880637
	\item<3-> Tunneling a livello Trasporto (\texttt{AYIYA})
1153
9125f2880637
	\end{itemize}
1154
9125f2880637
\end{colorblock}
1155
9125f2880637
\end{frame}
1156
9125f2880637
1157
9125f2880637
\begin{frame}[shrink]\frametitle{Tunneling a livello Rete - \texttt{proto-41}}
1158
9125f2880637
	\begin{colorblock}{\texttt{proto-41} (rfc3056)}
1159
9125f2880637
		Noto anche come \emph{6to4} implementa la tecnica IPv6-in-IPv4 che consiste nell'inserire
1160
9125f2880637
		il pacchetto completo IPv6 come payload di uno o più pacchetti IPv4.
1161
9125f2880637
	\end{colorblock}
1162
9125f2880637
	\pause
1163
9125f2880637
	\vspace{.5cm}
1164
9125f2880637
	\begin{center}
1165
9125f2880637
	\begin{bytefield}{32} 
1166
9125f2880637
		\wordbox{1}{Frame Ethernet}\\
1167
9125f2880637
		\wordbox{1}{Header IPv4}\\
1168
9125f2880637
		\wordbox[lrt]{1}{Pacchetto IPv6} \\ 
1169
9125f2880637
		\skippedwords \\ 
1170
9125f2880637
		\wordbox[lrb]{1}{} \\
1171
9125f2880637
	\end{bytefield}
1172
9125f2880637
	\end{center}
1173
9125f2880637
\end{frame}
1174
9125f2880637
	
1175
9125f2880637
\begin{frame}[t]\frametitle{Tunneling a livello Rete - \texttt{proto-41} (cont.)}
1176
9125f2880637
1177
9125f2880637
		\begin{colorblock}{Tunneling automatico (senza configurazione)}
1178
0ae04ada4dba
		Si cerca di raggiungere un \emph{relay router IPv6} (\texttt{192.88.99.1} anycast IPv4) in grado di instradare il nostro pacchetto in modo nativo. \\
1179
9125f2880637
	 	A questo scopo è stata riservata la rete \texttt{2002::/16} 
1180
9125f2880637
	 	che associa ad ogni indirizzo IPv4 un prefix di 48 bit composto
1181
9125f2880637
	 	da \texttt{2002} più i 32 bit dell'indirizzo IPv4 convertito in esadecimale.\\
1182
9125f2880637
		\end{colorblock}
1183
9125f2880637
		\pause
1184
9125f2880637
		\vspace{.15cm}
1185
9125f2880637
		\begin{center}
1186
9125f2880637
		\begin{tabular}{c c l}
1187
9125f2880637
		       & \tiny{32 bit} & \\
1188
9125f2880637
		       & $\overbrace{ {\color{chameleongreen1}\texttt{192.0.2.42}} }$ & \\
1189
9125f2880637
		       &  $\downarrow$ \tiny{to hex} & \\
1190
9125f2880637
		$\underbrace{\texttt{2002}}$: & {\color{chameleongreen1}\texttt{c000:022a}} & \texttt{::/48} \\
1191
9125f2880637
		\tiny{16 bit} & &
1192
9125f2880637
		\end{tabular}
1193
9125f2880637
		\end{center}
1194
9125f2880637
	
1195
9125f2880637
\end{frame}
1196
9125f2880637
1197
9125f2880637
\begin{frame}[t]\frametitle{Tunneling a livello Rete - \texttt{proto-41} (cont.)}
1198
9125f2880637
	\begin{colorblock}{Tunneling non automatico (con configurazione)}
1199
9125f2880637
	Il proto-41 può essere anche usato in modo non automatico per collegare
1200
9125f2880637
	due punti della rete di un AS che non dispongono di 
1201
9125f2880637
	router abilitati al traffico IPv6.  \\
1202
9125f2880637
	In questo caso è necessario configurare dei punti di accesso agli estremi che 
1203
9125f2880637
	intendiamo collegare per gestire la trasformazione IPv4$\leftrightarrow$IPv6.
1204
9125f2880637
\end{colorblock}
1205
9125f2880637
1206
9125f2880637
\end{frame}
1207
9125f2880637
1208
9125f2880637
1209
9125f2880637
\begin{frame}[shrink]\frametitle{Tunneling a livello Rete - \texttt{proto-41} (cont.)}
1210
9125f2880637
\begin{colorblock}{Tunneling non automatico}
1211
9125f2880637
	\input{protocol41}
1212
9125f2880637
\end{colorblock}
1213
9125f2880637
1214
9125f2880637
\end{frame}
1215
0ae04ada4dba
1216
0ae04ada4dba
\begin{frame}
1217
0ae04ada4dba
\frametitle{AYIYA}
1218
0ae04ada4dba
\begin{colorblock}{\texttt{AYIYA} - Anything In Anything}
1219
0ae04ada4dba
AYIYA definisce un metodo per configurare un tunnel per un client IPv4 
1220
0ae04ada4dba
che si trovi dietro un NAT, in questo caso si utilizzano i protocolli 
1221
0ae04ada4dba
UDP o TCP per instradare il traffico IPv6.
1222
0ae04ada4dba
1223
0ae04ada4dba
Otteniamo quindi un tunnel di tipo \texttt{IPv6-in-UDP-in-IPv4} o 
1224
0ae04ada4dba
\texttt{IPv6-in-TCP-in-IPv4} che aggiunge connettività IPv6 al nostro nodo.
1225
0ae04ada4dba
\end{colorblock}
1226
0ae04ada4dba
\pause
1227
0ae04ada4dba
\vspace{.5cm}
1228
0ae04ada4dba
\resizebox{!}{0.4\textheight}{
1229
0ae04ada4dba
  \hspace{4cm}
1230
0ae04ada4dba
  \begin{bytefield}{32} 
1231
0ae04ada4dba
    \wordbox{1}{Frame Ethernet}\\
1232
0ae04ada4dba
    \wordbox{1}{Header IPv4}\\
1233
0ae04ada4dba
    \wordbox{1}{TCP o UDP}\\
1234
0ae04ada4dba
    \wordbox[lrt]{1}{Pacchetto IPv6} \\ 
1235
0ae04ada4dba
    \skippedwords \\ 
1236
0ae04ada4dba
    \wordbox[lrb]{1}{} \\
1237
0ae04ada4dba
  \end{bytefield}
1238
0ae04ada4dba
}
1239
0ae04ada4dba
\end{frame}
1240
9125f2880637
% section tunneling (end)
1241
9125f2880637
1242
0ae04ada4dba
\begin{frame}
1243
0ae04ada4dba
\frametitle{Firewall}
1244
0ae04ada4dba
1245
0ae04ada4dba
\end{frame}
1246
0ae04ada4dba
1247
0ae04ada4dba
1248
b0824ccd5f09
\section{Implementare IPv6}
1249
f6c754e3eeb6
1250
f6c754e3eeb6
\subsection{Tunnel Broker}
1251
f6c754e3eeb6
\begin{frame}\frametitle{Tunnel Broker}
1252
f6c754e3eeb6
\setbeamercovered{invisible}
1253
f6c754e3eeb6
\begin{colorblock}{Definizione - RFC3053}
1254
0ae04ada4dba
  I tunnel broker sono dei fornitori di connettività IPv6 attraverso la rete
1255
0ae04ada4dba
  IPv4.
1256
f6c754e3eeb6
\end{colorblock}
1257
f6c754e3eeb6
\pause
1258
f6c754e3eeb6
1259
f6c754e3eeb6
\vspace{1cm}
1260
f6c754e3eeb6
1261
f6c754e3eeb6
\tikzstyle{net}+=[on chain]
1262
f6c754e3eeb6
1263
f6c754e3eeb6
\begin{center}
1264
f6c754e3eeb6
\begin{tikzpicture}[start chain,every join/.style={<->,thick}]
1265
f6c754e3eeb6
	\node [net,join] (client) {\pgfuseimage{schermo}}; 
1266
f6c754e3eeb6
	\node [net,join] (rete) {\pgfuseimage{nuvola}};
1267
f6c754e3eeb6
	\node [net,join] (broker) {\pgfuseimage{router}};
1268
f6c754e3eeb6
	\uncover<3-> {\node [net,join] (ipv6) {\pgfuseimage{nuvola}}; }
1269
f6c754e3eeb6
	
1270
f6c754e3eeb6
	%label
1271
f6c754e3eeb6
	\node [below of=client] {\small client};
1272
f6c754e3eeb6
	\node at (rete) [anchor=center] {\small IPv4};
1273
f6c754e3eeb6
	\node [below of=broker] {\small tunnel broker};
1274
f6c754e3eeb6
	\uncover<3-> { \node at (ipv6) [anchor=center] {\small IPv6};}
1275
f6c754e3eeb6
	
1276
f6c754e3eeb6
	%archi
1277
f6c754e3eeb6
	\uncover<4-> {
1278
f6c754e3eeb6
		\path (client) edge[<->,dashed,thick,bend right] node[below]{\small IPv6-in-IPv4} (broker);
1279
f6c754e3eeb6
%		\path (broker) edge[<->,dashed,thick,bend right] (ipv6);
1280
f6c754e3eeb6
	}
1281
f6c754e3eeb6
\end{tikzpicture}
1282
f6c754e3eeb6
\end{center}
1283
f6c754e3eeb6
1284
f6c754e3eeb6
\end{frame}
1285
f6c754e3eeb6
1286
f6c754e3eeb6
\tikzstyle{na} = [baseline=-.5ex]
1287
f6c754e3eeb6
\tikzstyle{every picture}+=[remember picture]
1288
f6c754e3eeb6
1289
f6c754e3eeb6
\subsection{SOHO}
1290
f6c754e3eeb6
\begin{frame}
1291
f6c754e3eeb6
\frametitle{Small Office Home Office (SOHO)}
1292
f6c754e3eeb6
\begin{columns}
1293
f6c754e3eeb6
\column{.3\textwidth} % column designated by a command
1294
f6c754e3eeb6
\begin{itemize}
1295
f6c754e3eeb6
	\item LAN standard
1296
f6c754e3eeb6
	\item<2-> Router Advertisement\tikz[na] \node[coordinate] (adv) {};
1297
f6c754e3eeb6
	\item<3-> Connettività IPv6 attraverso un tunnel broker \tikz[na] \node[coordinate] (tb) {};
1298
f6c754e3eeb6
\end{itemize}
1299
f6c754e3eeb6
\column{.7\textwidth}
1300
f6c754e3eeb6
\setbeamercovered{invisible}
1301
f6c754e3eeb6
1302
f6c754e3eeb6
\tikzstyle{net}+=[on chain]
1303
f6c754e3eeb6
\tikzstyle{lnet}+=[on chain=going below]
1304
f6c754e3eeb6
1305
f6c754e3eeb6
\begin{tikzpicture}[start chain,every join/.style={<->,thick}] 
1306
f6c754e3eeb6
	\node [net,join] (ipv4) {\pgfuseimage{nuvola}};
1307
f6c754e3eeb6
	{ [start branch=lan]
1308
f6c754e3eeb6
		\node [lnet,join=with ipv4,label=180:\tiny router] (router) {\pgfuseimage{router}};
1309
f6c754e3eeb6
		\node [subnet,lnet,join] { \begin{tikzpicture}
1310
f6c754e3eeb6
			\node [] (client1) {\pgfuseimage{schermo}};
1311
f6c754e3eeb6
			\node [right of=client1] (client2) {\pgfuseimage{schermo}};
1312
f6c754e3eeb6
			\node [right of=client2] (client3) {\pgfuseimage{case}}; 
1313
f6c754e3eeb6
		\end{tikzpicture}
1314
f6c754e3eeb6
	   };
1315
f6c754e3eeb6
	}
1316
f6c754e3eeb6
	\uncover<3-> {
1317
f6c754e3eeb6
		\node [net,join=with ipv4,right of=ipv4,label=90:\tiny tunnel broker] (broker) {\pgfuseimage{router}};
1318
f6c754e3eeb6
		\node [net,join] (ipv6) {\pgfuseimage{nuvola}};
1319
f6c754e3eeb6
	}
1320
f6c754e3eeb6
	
1321
f6c754e3eeb6
	%label
1322
f6c754e3eeb6
	%\node [below of=client] {\small client};
1323
f6c754e3eeb6
	\node at (ipv4) [anchor=center] {\tiny IPv4};
1324
f6c754e3eeb6
	\uncover<3-> {
1325
f6c754e3eeb6
		\node at (ipv6) [anchor=center] {\tiny IPv6};
1326
f6c754e3eeb6
%	}
1327
f6c754e3eeb6
	
1328
f6c754e3eeb6
	%archi
1329
f6c754e3eeb6
	%\uncover<4-> {
1330
f6c754e3eeb6
		\path (router) edge[<->,dashed,thick,out=0,in=-90] node[right] (6to4) {\tiny IPv6-in-IPv4} (broker);
1331
f6c754e3eeb6
%		\path (broker) edge[<->,dashed,thick,bend right] (ipv6);
1332
f6c754e3eeb6
	}
1333
f6c754e3eeb6
\end{tikzpicture}
1334
f6c754e3eeb6
\end{columns}
1335
f6c754e3eeb6
1336
f6c754e3eeb6
%collegamenti
1337
f6c754e3eeb6
\begin{tikzpicture}[overlay]
1338
f6c754e3eeb6
	\path[->]<2> (adv) edge [bend right,olink] (router);
1339
f6c754e3eeb6
	\path[->]<3> (tb) edge [bend right,olink] (6to4);
1340
f6c754e3eeb6
\end{tikzpicture}
1341
f6c754e3eeb6
\end{frame}
1342
f6c754e3eeb6
1343
f6c754e3eeb6
\subsection{Enterprise}
1344
f6c754e3eeb6
\begin{frame}
1345
f6c754e3eeb6
\frametitle{Enterprise}
1346
f6c754e3eeb6
\begin{columns}
1347
f6c754e3eeb6
\column{.35\textwidth} % column designated by a command
1348
f6c754e3eeb6
\begin{itemize}
1349
f6c754e3eeb6
	\item Rete enterprise
1350
f6c754e3eeb6
	\item<2-> Routing OSPFv3 \tikz[na] \node[coordinate] (ospf) {};
1351
f6c754e3eeb6
	\item<3-> Aggiornamento del server DNS \tikz[na] \node[coordinate] (agg dns) {};
1352
f6c754e3eeb6
	\item<4-> Server DHCP \tikz[na] \node[coordinate] (dhcp) {};
1353
f6c754e3eeb6
	\item<4-> Relay agent DHCP \tikz[na] \node[coordinate] (relay) {};
1354
f6c754e3eeb6
	\item<5-> Router Advertisement \tikz[na] \node[coordinate] (ra) {};
1355
f6c754e3eeb6
	\item<6-> Rimozione dei NAT \tikz[na] \node[coordinate] (no nat) {};
1356
f6c754e3eeb6
	\item<7-> Aggiornamento dei servizi \tikz[na] \node[coordinate] (servizi) {};
1357
f6c754e3eeb6
\end{itemize}
1358
f6c754e3eeb6
\column{.65\textwidth}
1359
f6c754e3eeb6
\setbeamercovered{invisible}
1360
f6c754e3eeb6
1361
f6c754e3eeb6
\tikzstyle{net}+=[on chain=going below]
1362
f6c754e3eeb6
\tikzstyle{lnet}+=[on chain=going right]
1363
f6c754e3eeb6
1364
f6c754e3eeb6
\begin{tikzpicture}[start chain,every join/.style={<->,thick},node distance=3mm] 
1365
f6c754e3eeb6
	\node [net] (net) {\pgfuseimage{nuvola}};
1366
f6c754e3eeb6
	\node [net,join,label=180:\tiny ASBR] (asbr) {\pgfuseimage{router}};
1367
f6c754e3eeb6
	{ [start branch=lans] } % just a declaration, 
1368
f6c754e3eeb6
	{ [start branch=br2]
1369
f6c754e3eeb6
		\node [on chain=going below right,join,label=90:\tiny BR2] (mybr2) {\pgfuseimage{router}};
1370
f6c754e3eeb6
	}
1371
f6c754e3eeb6
	\node [net,on chain=going below left,join,join=with asbr,label=180:\tiny BR1] (br1) {\pgfuseimage{router}};
1372
f6c754e3eeb6
	\node [subnet,net,join] { \begin{tikzpicture}[ node distance=1cm]
1373
f6c754e3eeb6
			\node [] (c4) {\pgfuseimage{schermo}};
1374
f6c754e3eeb6
			\node [right of=c4] (c5) {\pgfuseimage{schermo}};
1375
f6c754e3eeb6
			\node [right of=c5] (c6) {\pgfuseimage{schermo}}; 
1376
f6c754e3eeb6
			\end{tikzpicture} };
1377
f6c754e3eeb6
	
1378
f6c754e3eeb6
	{ [continue branch=lans] 
1379
f6c754e3eeb6
	\node [subnet,on chain, right of=asbr, xshift=3.5cm,join=with asbr] { \begin{tikzpicture}[ node distance=1cm]
1380
f6c754e3eeb6
		\node [label=-90:\tiny{DNS}] (dns) {\pgfuseimage{case}};
1381
f6c754e3eeb6
		\node [label=-90:\tiny Web server,right of=dns] (web server) {\pgfuseimage{case}}; 
1382
f6c754e3eeb6
		\uncover<4->{\node [label=-90:\tiny{DHCPv6},right of=web server] (dhcpv6) {\pgfuseimage{case}};}
1383
f6c754e3eeb6
		\end{tikzpicture} };
1384
f6c754e3eeb6
	\node [subnet,net,join=with mybr2] { \begin{tikzpicture}[ node distance=1cm]
1385
f6c754e3eeb6
		\node [] (c1) {\pgfuseimage{schermo}};
1386
f6c754e3eeb6
		\node [right of=c1] (c2) {\pgfuseimage{schermo}};
1387
f6c754e3eeb6
		\node [right of=c2] (c3) {\pgfuseimage{schermo}};
1388
f6c754e3eeb6
		
1389
f6c754e3eeb6
	\node [subnet,below of=c2,yshift=-.15cm,xshift=.1cm] (nat) { \begin{tikzpicture}[ node distance=1cm]
1390
f6c754e3eeb6
			\node [] (n1) {\pgfuseimage{schermo}}; 
1391
f6c754e3eeb6
			\node [right of=n1] (n2) {\pgfuseimage{schermo}};
1392
f6c754e3eeb6
			\end{tikzpicture}};
1393
f6c754e3eeb6
		\node [left of=nat,xshift=-.25cm] (natter) {\pgfuseimage{case}}; 
1394
f6c754e3eeb6
		
1395
f6c754e3eeb6
		\end{tikzpicture} };
1396
f6c754e3eeb6
	}
1397
f6c754e3eeb6
	
1398
f6c754e3eeb6
%label
1399
f6c754e3eeb6
	\node at (net) [anchor=center] {\tiny Internet};
1400
f6c754e3eeb6
%	\uncover<3-> {
1401
f6c754e3eeb6
%		\node at (ipv6) [anchor=center] {\small IPv6};
1402
f6c754e3eeb6
%%	}
1403
f6c754e3eeb6
%	
1404
f6c754e3eeb6
%	%archi
1405
f6c754e3eeb6
%	%\uncover<4-> {
1406
f6c754e3eeb6
%		\path (router) edge[<->,dashed,thick,out=0,in=-90] node[right] (6to4) {\small IPv6-in-IPv4} (broker);
1407
f6c754e3eeb6
%%		\path (broker) edge[<->,dashed,thick,bend right] (ipv6);
1408
f6c754e3eeb6
%	}
1409
f6c754e3eeb6
\end{tikzpicture}
1410
f6c754e3eeb6
\end{columns}
1411
f6c754e3eeb6
1412
f6c754e3eeb6
%collegamenti
1413
f6c754e3eeb6
\begin{tikzpicture}[overlay]
1414
f6c754e3eeb6
	\path[->]<2> (ospf) edge [olink] (asbr) edge [bend right,olink] (mybr2) edge [bend right,olink] (br1);
1415
f6c754e3eeb6
	\path[->]<3> (agg dns) edge [bend right,olink] (dns);
1416
f6c754e3eeb6
	\path[->]<4> (dhcp) edge [bend left,olink] (dhcpv6);
1417
f6c754e3eeb6
	\path[->]<4> (relay) edge [bend left,olink] (mybr2) edge [bend right,olink] (br1);
1418
f6c754e3eeb6
	\path[->]<5> (ra) edge [bend left,olink] (asbr) edge [bend left,olink] (mybr2) edge [bend right,olink] (br1);
1419
f6c754e3eeb6
	\path[->]<6> (no nat) edge [olink] (natter);
1420
f6c754e3eeb6
	\path[->]<7> (servizi) edge [bend right, olink] (web server);
1421
f6c754e3eeb6
\end{tikzpicture}
1422
f6c754e3eeb6
\end{frame}
1423
f6c754e3eeb6
1424
35a9caac5cef
\section*{Licenza}
1425
ef7af8537f95
\begin{frame}\frametitle{Licenza Creative Commons\newline{}\small Attribuzione-Non commerciale-Condividi allo stesso modo 2.5 Italia}
1426
ef7af8537f95
\small
1427
ef7af8537f95
\begin{colorblock}{Tu sei libero:}
1428
ef7af8537f95
	\tiny
1429
ef7af8537f95
	\begin{itemize}
1430
ef7af8537f95
	\item di riprodurre, distribuire, comunicare al pubblico, esporre in pubblico, rappresentare, eseguire e recitare quest'opera
1431
ef7af8537f95
	\item di modificare quest'opera
1432
ef7af8537f95
	\end{itemize}
1433
ef7af8537f95
\end{colorblock}
1434
ef7af8537f95
1435
ef7af8537f95
\begin{colorblock}{Alle seguenti condizioni:}
1436
ef7af8537f95
	\begin{itemize}
1437
ef7af8537f95
	\tiny
1438
ef7af8537f95
	\item \textbf{Attribuzione.} Devi attribuire la paternità dell'opera nei modi indicati dall'autore o da chi ti ha dato l'opera in licenza e in modo tale da non suggerire che essi avallino te o il modo in cui tu usi l'opera.
1439
ef7af8537f95
	\item \textbf{Non commerciale.} Non puoi usare quest'opera per fini commerciali.
1440
ef7af8537f95
	\item \textbf{Condividi allo stesso modo.} Se alteri o trasformi quest'opera, o se la usi per crearne un'altra, puoi distribuire l'opera risultante solo con una licenza identica o equivalente a questa.
1441
ef7af8537f95
	\end{itemize}
1442
ef7af8537f95
\end{colorblock}
1443
ef7af8537f95
1444
ef7af8537f95
\tiny
1445
ef7af8537f95
\begin{itemize}
1446
ef7af8537f95
	\item Ogni volta che usi o distribuisci quest'opera, devi farlo secondo i termini di questa licenza, che va comunicata con chiarezza.
1447
ef7af8537f95
	\item In ogni caso, puoi concordare col titolare dei diritti utilizzi di quest'opera non consentiti da questa licenza.
1448
ef7af8537f95
	\item Questa licenza lascia impregiudicati i diritti morali.
1449
f6c754e3eeb6
\end{itemize}
1450
f6c754e3eeb6
	
1451
f6c754e3eeb6
\end{frame}
1452
f6c754e3eeb6
\end{document}
1453
0ae04ada4dba
1454
0ae04ada4dba
%%% Local Variables: 
1455
0ae04ada4dba
%%% mode: latex
1456
0ae04ada4dba
%%% TeX-master: "ipv6.slides"
1457
0ae04ada4dba
%%% End: