2722 lines
94 KiB
TeX
2722 lines
94 KiB
TeX
% $Ximalas$
|
|
%\documentclass{beamer}
|
|
%\documentclass[handout]{beamer}
|
|
%\usepackage{pgfpages}
|
|
%\pgfpagesuselayout{2 on 1}[a4paper,border shrink=5mm]
|
|
%\pgfpagesuselayout{4 on 1}[a4paper,landscape,border shrink=5mm]
|
|
%\setbeameroption{show notes} % on second screen}
|
|
|
|
\def\jobname{ipv6-foredrag} % Sett riktig navn på presentasjonen her.
|
|
\setjobnamebeamerversion{\jobname}
|
|
|
|
\usepackage[cp1252]{inputenc}
|
|
\usepackage[T1]{fontenc}
|
|
\usepackage[norsk]{babel}
|
|
\usepackage{booktabs}
|
|
\usepackage{multicol}
|
|
\usepackage{fancyvrb}
|
|
%\usepackage{epstopdf}
|
|
%\epstopdfsetup{update}
|
|
|
|
%\usetheme{AnnArbor}
|
|
%\usetheme{Boadilla}
|
|
%\usetheme{boxes}
|
|
%\usetheme{CambridgeUS}
|
|
%\usetheme{Antibes}
|
|
%\usetheme{Bergen}
|
|
%\usetheme{Berkeley}
|
|
%\usetheme{Berlin}
|
|
%\usetheme{Copenhagen}
|
|
%\usetheme{Darmstadt}
|
|
%\usetheme{Dresden}
|
|
%\usetheme{Frankfurt}
|
|
%\usetheme{Goettingen}
|
|
%\usetheme{Hannover}
|
|
%\usetheme{Ilmenau}
|
|
%\usetheme{JuanLesPins}
|
|
%\usetheme{Luebeck}
|
|
\usetheme{Madrid}
|
|
%\usetheme{Malmoe}
|
|
%\usetheme{Marburg}
|
|
%\usetheme{Montpellier}
|
|
%\usetheme{PaloAlto}
|
|
%\usetheme{Pittsburgh}
|
|
%\usetheme{Rochester}
|
|
%\usetheme{Singapore}
|
|
%\usetheme{Szeged}
|
|
%\usetheme{Warsaw}
|
|
|
|
\hypersetup{colorlinks,linkcolor=,urlcolor=blue}
|
|
|
|
|
|
\svnidlong
|
|
{$HeadURL$}
|
|
{$LastChangedDate$}
|
|
{$LastChangedRevision$}
|
|
{$LastChangedBy$}
|
|
|
|
\makeatletter
|
|
\renewcommand{\svnrevisionsname}{Revisjoner}
|
|
|
|
\renewcommand{\svnbeforetable}{\noindent Filene som utgjør dette
|
|
dokumentet er registrert i revisjonssystemet Subversion. Under
|
|
vises katalogstrukturen og de enkelte filene, deres nyeste
|
|
revisjonsnummer, hvem som sist endret filene og når siste
|
|
endring ble registrert.\par\bigskip}
|
|
|
|
\renewcommand{\svntable}{\svntablebooktabsbegin}
|
|
\renewcommand{\endsvntable}{\svntablebooktabsend}
|
|
%\newcommand{\svntablebooktabsbegin}{\begin{tabular}{p{0.425\textwidth}rll}\toprule}
|
|
\newcommand{\svntablebooktabsbegin}{\begin{tabular}{p{0.7\textwidth}rll}\toprule}
|
|
%\newcommand{\svntablebooktabsbegin}{\begin{tabular}{lrll}\toprule}
|
|
\newcommand{\svntablebooktabsend}{\bottomrule\end{tabular}}
|
|
\renewcommand{\svntablehead}{Navn & Revisjon & Forfatter & Dato \\\midrule}
|
|
\renewcommand{\svntabglobal}{Dokument}
|
|
%\renewcommand{\svntabglobal}{Hovedfil}
|
|
\renewcommand{\svntabgroup}[1]{Gruppe «#1»}
|
|
\renewcommand{\svn@tabsubgroup}[1]{\endgroup Undergruppe «\texttt{\small #1}»}
|
|
\renewcommand{\svn@tabfile}[1]{\endgroup Filen «\texttt{\small #1}»}
|
|
\makeatother
|
|
|
|
\svnRegisterAuthor{trond}{Trond Endrestøl}
|
|
|
|
\newcommand{\Textbackslash}{\textbackslash\penalty\exhyphenpenalty}
|
|
\newcommand{\rfc}[1]{\href{http://tools.ietf.org/html/rfc#1}{RFC~#1}}
|
|
\newcommand{\prfc}[1]{(\rfc{#1})}
|
|
|
|
\title{\textbf{IPv6-foredrag}}
|
|
\subtitle{Pent brukt 18-åring}
|
|
\author[T.~Endrestøl]{\href{http://fig.ol.no/~trond/}{Trond Endrestøl}}
|
|
\institute[FSI/IT]{\href{http://fagskolen-innlandet.no/}{Fagskolen Innlandet}, IT-avdelingen}
|
|
\logo{\includegraphics[scale=.25]{fi_logo_147px.pdf}}
|
|
%\subject{Emne for bruk i egenskapene til PDF-fila}
|
|
%\keywords{Nøkkelord for bruk i egenskapene til PDF-fila}
|
|
\date{\today} % eller
|
|
%\date{18.\ september 2013}
|
|
|
|
\begin{document}
|
|
|
|
\begin{frame}
|
|
\titlepage
|
|
\end{frame}
|
|
|
|
\begin{frame}[allowframebreaks]
|
|
\frametitle{Foredragets filer}
|
|
\begin{itemize}
|
|
\item Filene til foredraget er tilgjengelig gjennom:
|
|
\begin{itemize}
|
|
\item Subversion: \texttt{svn co
|
|
\url{svn://svn.ximalas.info/ipv6-foredrag}}
|
|
\item Web:
|
|
\href{http://svnweb.ximalas.info/ipv6-foredrag/}{\texttt{svnweb.ximalas.info/ipv6-foredrag}}
|
|
\item Begge metodene er tilgjengelig med både IPv4 og \alert{IPv6}
|
|
\end{itemize}
|
|
\item
|
|
\href{http://svnweb.ximalas.info/ipv6-foredrag/trunk/ipv6-foredrag.foredrag.pdf?view=co}{\texttt{ipv6-foredrag.foredrag.pdf}}
|
|
vises på lerretet
|
|
\item
|
|
\href{http://svnweb.ximalas.info/ipv6-foredrag/trunk/ipv6-foredrag.handout.pdf?view=co}{\texttt{ipv6-foredrag.handout.pdf}}
|
|
er mye bedre for publikum å se på
|
|
\item
|
|
\href{http://svnweb.ximalas.info/ipv6-foredrag/trunk/ipv6-foredrag.handout.2on1.pdf?view=co}{\texttt{ipv6-foredrag.handout.2on1.pdf}}
|
|
og
|
|
\href{http://svnweb.ximalas.info/ipv6-foredrag/trunk/ipv6-foredrag.handout.4on1.pdf?view=co}{\texttt{ipv6-foredrag.handout.4on1.pdf}}
|
|
er begge velegnet til utskrift
|
|
\item \texttt{*.169.pdf}-filene er i 16:9-format
|
|
\item \texttt{*.1610.pdf}-filene er i 16:10-format
|
|
\framebreak
|
|
\item Foredraget er mekket ved hjelp av
|
|
\href{http://www.gnu.org/software/emacs/}{GNU~Emacs},
|
|
\href{http://www.gnu.org/software/auctex/}{AUC\TeX},
|
|
\href{http://www.tug.org/applications/pdftex/}{pdf\TeX} fra
|
|
\href{http://miktex.org/}{MiK\TeX},
|
|
\href{http://www.latex-project.org/}{\LaTeX}-dokumentklassa
|
|
\href{https://bitbucket.org/rivanvx/beamer/wiki/Home}{beamer},
|
|
\href{http://subversion.apache.org/}{Subversion},
|
|
\href{http://tortoisesvn.net/}{TortoiseSVN} og
|
|
\href{http://get.adobe.com/no/reader/}{Adobe Reader}
|
|
\item Hovedfila bærer denne identifikasjonen:\\
|
|
\texttt{\$${}$Ximalas${}$\$}
|
|
\item Copyright \copyright\ 2013 Trond Endrestøl
|
|
\item Dette verket er lisensiert med:
|
|
\href{http://creativecommons.org/}{Creative Commons},
|
|
\href{http://creativecommons.org/licenses/by-sa/3.0/no/}{Navngivelse-DelPåSammeVilkår
|
|
3.0 Norge} (CC BY-SA
|
|
3.0)\hfill\includegraphics[scale=.25]{by-sa.pdf}
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
\begin{frame}
|
|
\tableofrevisions
|
|
\end{frame}
|
|
|
|
\section*{Oversikt av hele foredraget}
|
|
\begin{frame}%[allowframebreaks]
|
|
\frametitle{Oversikt av hele foredraget}
|
|
\framesubtitle{Del 1: Kort om IPv6}
|
|
\tableofcontents[part=1]%[pausesections]
|
|
\end{frame}
|
|
|
|
\begin{frame}%[allowframebreaks]
|
|
\frametitle{Oversikt av hele foredraget}
|
|
\framesubtitle{Del 2: IPv6-header}
|
|
\tableofcontents[part=2]%[pausesections]
|
|
\end{frame}
|
|
|
|
\begin{frame}%[allowframebreaks]
|
|
\frametitle{Oversikt av hele foredraget}
|
|
\framesubtitle{Del 3: IPv6 over Ethernet}
|
|
\tableofcontents[part=3]%[pausesections]
|
|
\end{frame}
|
|
|
|
\begin{frame}%[allowframebreaks]
|
|
\frametitle{Oversikt av hele foredraget}
|
|
\framesubtitle{Del 4: Grunnleggende om adresser}
|
|
\tableofcontents[part=4]%[pausesections]
|
|
\end{frame}
|
|
|
|
\begin{frame}%[allowframebreaks]
|
|
\frametitle{Oversikt av hele foredraget}
|
|
\framesubtitle{Del 5: Adressetyper}
|
|
\tableofcontents[part=5]%[pausesections]
|
|
\end{frame}
|
|
|
|
\begin{frame}%[allowframebreaks]
|
|
\frametitle{Oversikt av hele foredraget}
|
|
\framesubtitle{Del 6: DNS}
|
|
\tableofcontents[part=6]%[pausesections]
|
|
\end{frame}
|
|
|
|
\begin{frame}%[allowframebreaks]
|
|
\frametitle{Oversikt av hele foredraget}
|
|
\framesubtitle{Del 7: ICMPv6}
|
|
\tableofcontents[part=7]%[pausesections]
|
|
\end{frame}
|
|
|
|
\begin{frame}%[allowframebreaks]
|
|
\frametitle{Oversikt av hele foredraget}
|
|
\framesubtitle{Del 8: Neighbor Discovery}
|
|
\tableofcontents[part=8]%[pausesections]
|
|
\end{frame}
|
|
|
|
\begin{frame}%[allowframebreaks]
|
|
\frametitle{Oversikt av hele foredraget}
|
|
\framesubtitle{Del 9: DHCPv6}
|
|
\tableofcontents[part=9]%[pausesections]
|
|
\end{frame}
|
|
|
|
\begin{frame}%[allowframebreaks]
|
|
\frametitle{Oversikt av hele foredraget}
|
|
\framesubtitle{Del 10: Avansert multicast}
|
|
\tableofcontents[part=10]%[pausesections]
|
|
\end{frame}
|
|
|
|
\begin{frame}%[allowframebreaks]
|
|
\frametitle{Oversikt av hele foredraget}
|
|
\framesubtitle{Del 11: Konfigurasjon av IPv6}
|
|
\tableofcontents[part=11]%[pausesections]
|
|
\end{frame}
|
|
|
|
\begin{frame}%[allowframebreaks]
|
|
\frametitle{Oversikt av hele foredraget}
|
|
\framesubtitle{Del 12: Noen RFC-er om IPv6}
|
|
\tableofcontents[part=12]%[pausesections]
|
|
\end{frame}
|
|
|
|
\part{Kort om IPv6}
|
|
|
|
\begin{frame}
|
|
\partpage
|
|
\end{frame}
|
|
|
|
\section*{Oversikt over del~1: Kort om IPv6}
|
|
\begin{frame}%[allowframebreaks]
|
|
\frametitle{Oversikt over del~1: Kort om IPv6}
|
|
\tableofcontents%[pausesections]
|
|
\end{frame}
|
|
|
|
\section{Hva er IPv6?}
|
|
\begin{frame}%[allowframebreaks]
|
|
\frametitle{Kort om IPv6}
|
|
\framesubtitle{Hva er IPv6?}
|
|
\pause
|
|
\begin{itemize}[<+->]
|
|
\item En lag-3-protokoll ment å erstatte IPv4
|
|
\item Har eksistert siden desember 1995, først spesifisert i \rfc{1883}
|
|
\item Enkel grunnheader med fast lengde
|
|
\item Flere utvidelsesheadere, riktig rekkefølge er viktig
|
|
\item \alert<12>{128-bit adresser}
|
|
\item Ny versjon av ICMP: ICMPv6
|
|
\item ARP og RARP for IPv6 er en del av ICMPv6
|
|
\begin{itemize}[<+->]
|
|
\item Ikke nødvendig med ekstra lim for adressene i lagene 2 og 3
|
|
\end{itemize}
|
|
\item Ny versjon av DHCP: DHCPv6
|
|
\item \alert<12>{Automatisk adressekonfigurasjon \textit{uten\/} bruk av DHCPv6}
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
\section{Hvorfor trenger vi IPv6?}
|
|
\begin{frame}%[allowframebreaks]
|
|
\frametitle{Kort om IPv6}
|
|
\framesubtitle{Hvorfor trenger vi IPv6?}
|
|
\pause
|
|
\begin{itemize}[<+->]
|
|
\item Mobilmarkedet viser en enorm vekst: smarttelefoner, nettbrett m.m.
|
|
\item Verden går tom for offentlige IPv4-adresser
|
|
\item
|
|
«\href{http://www.potaroo.net/presentations/2012-05-22-terena.pdf}{IPokalypsen}»
|
|
er her!
|
|
\item \href{http://www.iana.org/}{IANA} gikk tom
|
|
\href{http://www.icann.org/en/news/press/releases/release-03feb11-en.pdf}{3.~februar
|
|
2011}
|
|
\begin{itemize}[<+->]
|
|
\item \href{http://www.apnic.net/}{APNIC} gikk tom
|
|
\href{http://www.apnic.net/community/ipv4-exhaustion/graphical-information}{19.~april
|
|
2011}
|
|
\item \href{http://www.ripe.net/}{RIPE} gikk tom
|
|
\href{http://www.ripe.net/internet-coordination/ipv4-exhaustion}{14.~september
|
|
2012}
|
|
\end{itemize}
|
|
\item Dersom disse
|
|
\href{http://en.wikipedia.org/wiki/Regional_Internet_registry}{RIR}-ene
|
|
oppfører seg pent:
|
|
\begin{itemize}
|
|
\item \href{http://www.lacnic.net/en/web/lacnic/inicio}{LACNIC}
|
|
kan holde på til
|
|
\href{http://www.lacnic.net/web/lacnic/reporte-direcciones-ipv4}{juni
|
|
2014}
|
|
\item \href{https://www.arin.net/}{ARIN} kan holde på til
|
|
\href{http://www.potaroo.net/tools/ipv4/}{februar 2015}
|
|
\item \href{http://www.afrinic.net/}{AFRINIC} kan holde på til
|
|
\href{http://www.potaroo.net/tools/ipv4/}{juni 2022}(!)
|
|
\end{itemize}
|
|
\item Network Address Translation, Carrier-Grade NAT og Shared
|
|
Address Space
|
|
\begin{itemize}[<+->]
|
|
\item Bare støttebandasje med kort utløpstid
|
|
\item Glem det
|
|
\item Ende-til-ende-konnektivitet oppnås best uten noen former for
|
|
adresseoversettelse
|
|
\end{itemize}
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
\section{Antall adresser}
|
|
\begin{frame}%[allowframebreaks]
|
|
\frametitle{Kort om IPv6}
|
|
\framesubtitle{Antall adresser}
|
|
\pause
|
|
\begin{itemize}[<+->]
|
|
\item Totalt antall IPv6-adresser:
|
|
\item $2^{128}=340.282.366.920.938.463.463.374.607.431.768.211.456$
|
|
\item Bare $1/8$ kan brukes til offentlige unicast-adresser:
|
|
\item
|
|
$2^{125}=\phantom{0}42.535.295.865.117.307.932.921.825.928.971.026.432$
|
|
\item Fortsatt mange adresser enn det fullstendige IPv4-adresserommet:
|
|
\item
|
|
$2^{32\phantom{0}}=\phantom{000.000.000.000.000.000.000.000.000.00}4.294.967.296$
|
|
\item Mindre enn \alert<9>{$3.702.258.688$} IPv4-adresser kan bli brukt som
|
|
offentlige IPv4-unicast-adresser
|
|
\item Se Tronds utregning fra juli 2012:
|
|
\texttt{\url{http://ximalas.info/2012/07/20/how-many-ipv4-addresses-are-there/}}
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
\section{Andre nyttige ting ved IPv6}
|
|
\begin{frame}%[allowframebreaks]
|
|
\frametitle{Kort om IPv6}
|
|
\framesubtitle{Andre nyttige ting ved IPv6}
|
|
\pause
|
|
\begin{itemize}[<+->]
|
|
\item Hierarkisk adressestruktur
|
|
\item Enklere planlegging av subnett sammenlignet med IPv4
|
|
\begin{itemize}[<+->]
|
|
\item De fleste IPv6-subnett bruker et 64-bit prefiks
|
|
\item Autokonfigurasjon \textit{krever\/} et 64-bit prefiks
|
|
\item Fast prefikslengde på 64 bit er \textit{ikke\/} et absolutt
|
|
krav
|
|
\item DHCPv6 eller manuell konfigurasjon brukes når prefikslengda
|
|
er ulik 64 bit
|
|
\end{itemize}
|
|
\item Kortere rutingtabeller
|
|
\begin{itemize}[<+->]
|
|
\item Uninett annonserer disse IPv4-subnettene med BGP:
|
|
\item \texttt{78.91.0.0/16}, \hfill\alert<11>{\texttt{128.39.0.0/16}}, \hfill\texttt{129.177.0.0/16},\\
|
|
\texttt{129.240.0.0/15}, \hfill\texttt{129.242.0.0/16}, \hfill\texttt{144.164.0.0/16},\\
|
|
\texttt{151.157.0.0/16}, \hfill\texttt{152.94.0.0/16}, \hfill\texttt{156.116.0.0/16},\\
|
|
\texttt{157.249.0.0/16}, \hfill\texttt{158.36.0.0/14}, \hfill\texttt{161.4.0.0/16},\\
|
|
\texttt{193.156.0.0/15}, \hfill\texttt{192.111.33.0/24}, \hfill\texttt{192.133.32.0/24},\\
|
|
\hfill\texttt{192.146.238.0/23}\hfill\null
|
|
\pause
|
|
\item Til gjengjeld trenger Uninett bare å annonsere dette
|
|
IPv6-prefikset:
|
|
\item \texttt{2001:700::/32}
|
|
\end{itemize}
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
\begin{frame}%[allowframebreaks]
|
|
\frametitle{Kort om IPv6}
|
|
\framesubtitle{Andre nyttige ting ved IPv6}
|
|
%\pause
|
|
\begin{itemize}[<+->]
|
|
\item Sjekksum er overlatt til høyere og lavere lag
|
|
\item Fragmentering skal gjøres hos avsender, ikke underveis
|
|
\begin{itemize}[<+->]
|
|
\item Avsender må sjekke veien lengre fremme og måle smaleste krøttersti
|
|
\item Path Maximum Transmission Unit Discovery (Path MTU)
|
|
\end{itemize}
|
|
\item IPsec ble spesifisert som en del av IPv6
|
|
\begin{itemize}[<+->]
|
|
\item Finnes også for IPv4
|
|
\item Må konfigureres før den begynner å virke
|
|
\item Tilbyr:
|
|
\begin{itemize}[<+->]
|
|
\item Kryptert overføring (ESP), og/eller
|
|
\item Bekreftelse av avsenders identitet og beskyttelse mot
|
|
gjentakelse («replay») (AH)
|
|
\end{itemize}
|
|
\item Ble omgjort fra krav til anbefaling for IPv6 av \rfc{6434}
|
|
\end{itemize}
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
\section{Hvorfor brukes ikke IPv6?}
|
|
\begin{frame}%[allowframebreaks]
|
|
\frametitle{Kort om IPv6}
|
|
\framesubtitle{Hvorfor brukes ikke IPv6?}
|
|
\pause
|
|
\begin{itemize}[<+->]
|
|
\item Markedskreftene bestemmer
|
|
\item «Vente-og-se»-holdning
|
|
\item Stikker hodet ned i sanda
|
|
\item Store selskaper:
|
|
\begin{itemize}[<+->]
|
|
\item Kjøper opp små selskaper og hamstrer IPv4-blokker
|
|
\item Kjøper IPv4-blokker på ettermarkedet/konkursbo:
|
|
\begin{itemize}[<+->]
|
|
\item
|
|
\href{http://www.computerworld.com/s/article/9215055/Microsoft_offers_7.5M_for_666_624_IPv4_addresses}{Microsoft
|
|
$\to$ \$7,5 mill.\ $\to$ Nortel $\to$ 666.624 IPv4-adresser}
|
|
\end{itemize}
|
|
\end{itemize}
|
|
\item Telebransjen satser fortsatt hardt på IPv4:
|
|
\begin{itemize}[<+->]
|
|
\item (Edge) NAT i CPE\hfill\prfc{1631}
|
|
\item Carrier-Grade NAT i stamnett\hfill\prfc{6264}
|
|
\item Shared Address Space etter behov i stamnett\hfill\prfc{6598}
|
|
% \item HTTP/S-tunnelering av rubb og stubb
|
|
\end{itemize}
|
|
\item Før eller siden blir CGN for kostbar og komplisert å vedlikeholde
|
|
\item 3G og 4G/LTE klarer kanskje å øke IPv6-presset\hfill\prfc{6459}
|
|
\item \alert<16>{IPv6 er det eneste tilgjengelige og realistiske alternativet til IPv4}
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
\section{IPv6 ved Fagskolen Innlandet}
|
|
\begin{frame}%[allowframebreaks]
|
|
\frametitle{Kort om IPv6}
|
|
\framesubtitle{IPv6 ved Fagskolen Innlandet}
|
|
\pause
|
|
\begin{itemize}[<+->]
|
|
\item 1994: Tildelt \texttt{128.39.174.0/24} av Uninett
|
|
\item 1.~juni 2005: Ny IT-ansvarlig, yours truly
|
|
\item Høsten 2005: Fikk reservert IPv4-serien
|
|
\texttt{128.39.172.0/23}
|
|
\item Påska 2006: Fikk reservert IPv6-serien
|
|
\texttt{2001:700:1100::/48}
|
|
\item Før og etter pinsehelga 2006: Fiberlinjer fra serverrommet og
|
|
til sentrale punkter i hver etasje i hovedbygningen
|
|
\item Sommeren 2006: Nytt Cisco-gear som Catalyst 3560G og 2960
|
|
(\href{http://www.cisco.com/en/US/docs/switches/lan/catalyst3560/software/release/12.2_25_seb/release/notes/OL7189.html}{Cisco
|
|
IOS 12.2(25)SEB4})
|
|
\begin{itemize}[<+->]
|
|
\item \texttt{128.39.46.8/30} ble linknettet mellom HiG/Uninett og
|
|
FSI
|
|
\begin{itemize}[<+->]
|
|
\item \texttt{128.39.46.9\phantom{0}} brukes ved HiG
|
|
\item \texttt{128.39.46.10} brukes ved FSI
|
|
\end{itemize}
|
|
\item \texttt{128.39.174.0/24} ble delt opp i subnett og satt opp
|
|
som servernett og ansattnett, m.m.
|
|
\item \texttt{128.39.172.0/24} ble delt opp i subnett og satt opp
|
|
som nett for datalab
|
|
\item \texttt{128.39.173.0/24} ble satt opp som klienter på
|
|
trådløst studentnett
|
|
\end{itemize}
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
\begin{frame}%[allowframebreaks]
|
|
\frametitle{Kort om IPv6}
|
|
\framesubtitle{IPv6 ved Fagskolen Innlandet}
|
|
%\pause
|
|
\begin{itemize}[<+->]
|
|
\item 6.~september 2006: IPv6-linknettet
|
|
\texttt{2001:700:0:11D::/64} ble aktivert mellom HiG/Uninett og
|
|
FSI
|
|
\begin{itemize}[<+->]
|
|
\item \texttt{2001:700:0:11D::1} brukes hos HiG
|
|
\item \texttt{2001:700:0:11D::2} brukes hos FSI
|
|
\end{itemize}
|
|
\item Samme dag ble IPv6 innført for FSI-VLAN-ene 20, 30, 70 og 80:
|
|
\begin{itemize}[<+->]
|
|
\item FSI-VLAN 20:\quad\texttt{2001:700:1100:1::/64}\hfill(ytre servernett)
|
|
\item FSI-VLAN 30:\quad\texttt{2001:700:1100:2::/64}\hfill(indre servernett)
|
|
\item FSI-VLAN 70:\quad\texttt{2001:700:1100:3::/64}\hfill(IT-kontornett)
|
|
\item FSI-VLAN 80:\quad\texttt{2001:700:1100:4::/64}\hfill(IT-lekenett)
|
|
\end{itemize}
|
|
\item Sommeren 2007:
|
|
\href{http://www.sixxs.net/tools/grh/ula/}{Genererte} og frivillig
|
|
\href{http://www.sixxs.net/tools/grh/ula/list/}{registrerte}
|
|
ULA-serien
|
|
\href{http://www.sixxs.net/tools/whois/?fd5c:14cf:c300::/48}{\texttt{FD5C:14CF:C300::/48}}
|
|
\begin{itemize}[<+->]
|
|
\item Brukes i interne FSI-VLAN som tidligere bare brukte \rfc{1918}-adresser
|
|
\begin{itemize}[<+->]
|
|
\item Fikk første HP-skriver med IPv6-støtte og ville bruke IPv6
|
|
\item Noen år senere: IPv6-adresser på kantswitchene med
|
|
\href{http://www.cisco.com/en/US/docs/switches/lan/catalyst3750/software/release/12.2_40_se/release/notes/OL13860.html}{Cisco
|
|
IOS 12.2(40)SE}
|
|
\end{itemize}
|
|
\end{itemize}
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
\begin{frame}%[allowframebreaks]
|
|
\frametitle{Kort om IPv6}
|
|
\framesubtitle{IPv6 ved Fagskolen Innlandet}
|
|
%\pause
|
|
\begin{itemize}[<+->]
|
|
\item Høsten 2010: Enda en IPv4-serie ble innført:
|
|
\texttt{128.39.194.0/24}
|
|
\begin{itemize}[<+->]
|
|
\item \texttt{128.39.172.0/23} brukes nå til klienter på trådløst
|
|
studentnett
|
|
\item \texttt{128.39.194.0/24} brukes nå til datalab etter samme
|
|
mønster som for den gamle \texttt{128.39.172.0/24}
|
|
\end{itemize}
|
|
\item \href{http://www.oppland.no/}{Oppland FK} (OFK) har ingen
|
|
planer om å innføre IPv6
|
|
\item \href{http://www.hordaland.no/}{Hordaland FK} har satt en
|
|
IPv6-adresse på webserveren deres, \texttt{2a02:20a0:0:3::81:130}
|
|
\item I dag er de fleste brukere ved FSI kasta over til OFK-nettene
|
|
\item Dette skjedde etter ombygginga i 2011--2012
|
|
\item Andreklasse data er velsigna med å kunne velge mellom FSI- og
|
|
OFK-nettene
|
|
\item Andreklasse data velger som regel det førstnevnte, vanligvis
|
|
FSI-VLAN 48, \texttt{128.39.194.192/27} og
|
|
\texttt{2001:700:1100:8008::/64}
|
|
\item Førsteklasse data ønsker det samme tilbudet; så vi får se \dots
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
\begin{frame}%[allowframebreaks]
|
|
\frametitle{Kort om IPv6}
|
|
\framesubtitle{IPv6 ved Fagskolen Innlandet}
|
|
%\pause
|
|
\begin{itemize}[<+->]
|
|
\item Alle FSI-VLAN har både IPv4- og IPv6-adresser (dual-stack)
|
|
\item FSI-VLAN med offentlige IPv4-adresser bruker offentlige
|
|
IPv6-adresser fra \texttt{2001:700:1100::/48}-serien
|
|
\item FSI-VLAN med private IPv4-adresser \prfc{1918} bruker private
|
|
IPv6-adresser fra \texttt{FD5C:14CF:C300::/48}-serien
|
|
\item Private adresser brukes for alt utstyr som ikke har behov for
|
|
internettforbindelse:
|
|
\begin{itemize}[<+->]
|
|
\item Switcher
|
|
\begin{itemize}[<+->]
|
|
\item Med unntak for kjerneswitchen som er L3-router for
|
|
nettverket ved FSI
|
|
\end{itemize}
|
|
\item Basestasjoner og WLAN-kontroller
|
|
\begin{itemize}[<+->]
|
|
\item Før omlegginga
|
|
\end{itemize}
|
|
\item UPS-er
|
|
\item Skrivere
|
|
\item VPN-klienter
|
|
\end{itemize}
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
\part{IPv6-header}
|
|
|
|
\begin{frame}
|
|
\partpage
|
|
\end{frame}
|
|
|
|
\section*{Oversikt over del~2: IPv6-header}
|
|
\begin{frame}[allowframebreaks]
|
|
\frametitle{Oversikt over del~2: IPv6-header}
|
|
\tableofcontents%[pausesections]
|
|
\end{frame}
|
|
|
|
\section{IPv6-header}
|
|
\begin{frame}%[allowframebreaks]
|
|
\frametitle{IPv6-header}
|
|
\pause
|
|
\begin{center}
|
|
\includegraphics[scale=.333]{CCNP-108.png}
|
|
\end{center}
|
|
|
|
Hentet fra
|
|
\texttt{\url{http://www.tekkom.dk/mediawiki/images/5/5e/CCNP-108.png}}
|
|
\end{frame}
|
|
|
|
\begin{frame}%[allowframebreaks]
|
|
\frametitle{IPv6-header}
|
|
%\pause
|
|
\begin{center}
|
|
\includegraphics[scale=.25]{CCNP-108.png}
|
|
\end{center}
|
|
|
|
\begin{itemize}
|
|
\item IPv6-headeren er dobbelt så stor som IPv4-headeren
|
|
(20~oktetter)
|
|
\item IPv6-headeren har færre felter enn IPv4-headeren
|
|
\item De utelatte feltene er i stor grad flyttet over til egne
|
|
utvidelsesheadere
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
\begin{frame}%[allowframebreaks]
|
|
\frametitle{IPv6-header}
|
|
%\pause
|
|
\begin{multicols}{2}
|
|
\includegraphics[scale=.2]{CCNP-108.png}
|
|
|
|
\begin{itemize}[<+->]
|
|
\item Versjonsfeltet (4 bit) settes til \texttt{0110}
|
|
\item Traffic Class (8 bit) er det samme som Type of Service i
|
|
IPv4
|
|
\item Flow Label (20 bit) er et nytt felt og foreløpig
|
|
eksperimentell
|
|
\item Payload Length (16 bit) er det samme som Total Length i IPv4
|
|
\item Next Header (8 bit) er det samme som Protocol i IPv4
|
|
\item Hop Limit (8 bit) er det samme som Time To Live i IPv4
|
|
\item Avsender og mottaker er 128-bit IPv6-adresser
|
|
\item IPv4-feltene Internet Header Length (IHL), Identification,
|
|
Flags, Fragment Offset, Header Checksum, Options og Padding, er
|
|
enten fjernet for godt eller flyttet til egne utvidelsesheadere
|
|
\end{itemize}
|
|
\end{multicols}
|
|
\end{frame}
|
|
|
|
\begin{frame}%[allowframebreaks]
|
|
\frametitle{IPv6-header}
|
|
%\pause
|
|
\begin{itemize}[<+->]
|
|
\item Utvidelsesheaderne finnes i stort antall:
|
|
\begin{enumerate}[<+->]
|
|
\item Hop-by-hop options
|
|
\item Destination options
|
|
\item Routing
|
|
\item Fragment
|
|
\item Authentication Header
|
|
\item Encapsulating Security Payload
|
|
\item Mobility
|
|
\end{enumerate}
|
|
\item Se \rfc{2460}, \rfc{4302}, \rfc{4303} og \rfc{6275}
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
\part{IPv6 over Ethernet}
|
|
|
|
\begin{frame}
|
|
\partpage
|
|
\end{frame}
|
|
|
|
\section*{Oversikt over del~3: IPv6 over Ethernet}
|
|
\begin{frame}[allowframebreaks]
|
|
\frametitle{Oversikt over del~3: IPv6 over Ethernet}
|
|
\tableofcontents%[pausesections]
|
|
\end{frame}
|
|
|
|
\section{IPv6 over Ethernet}
|
|
\begin{frame}%[allowframebreaks]
|
|
\frametitle{IPv6 over Ethernet}
|
|
\pause
|
|
\begin{itemize}[<+->]
|
|
\item \rfc{2464} definerer frameformatet for IPv6-datagrammer over
|
|
Ethernet
|
|
\item IPv6-datagrammer fraktes i standard Ethernetformat, \rfc{894}
|
|
\item Først angis mottakerens MAC-48-adresse
|
|
\item Deretter angis avsenders MAC-48-adresse
|
|
\item Frametypen settes til \texttt{86DD} (heksadesimalt)
|
|
\item Deretter følger IPv6-header og resten av datagrammet
|
|
\item Standard MTU for IPv6 over Ethernet er 1500 oktetter
|
|
\item Minste tillatte MTU for IPv6 er 1280 oktetter
|
|
\item Er største tilgjengelige MTU mindre enn 1280 oktetter, så må
|
|
lagene under IPv6 sørge for fragmentering og sammensetting av
|
|
IPv6-datagrammene \prfc{2460}
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
\begin{frame}[fragile]%[allowframebreaks]
|
|
\frametitle{IPv6 over Ethernet}
|
|
\pause
|
|
\noindent
|
|
Programmet \href{http://www.wireshark.org/}{Wireshark} fremstilte
|
|
følgende lag-2-informasjon om en utsendt IPv6-pakke:
|
|
|
|
\begin{Verbatim}[fontsize=\tiny]
|
|
Ethernet II, Src: AsustekC_f2:72:40 (00:26:18:f2:72:40), Dst: Cisco_77:14:57 (00:17:e0:77:14:57)
|
|
Destination: Cisco_77:14:57 (00:17:e0:77:14:57)
|
|
Address: Cisco_77:14:57 (00:17:e0:77:14:57)
|
|
.... ..0. .... .... .... .... = LG bit: Globally unique address (factory default)
|
|
.... ...0 .... .... .... .... = IG bit: Individual address (unicast)
|
|
Source: AsustekC_f2:72:40 (00:26:18:f2:72:40)
|
|
Address: AsustekC_f2:72:40 (00:26:18:f2:72:40)
|
|
.... ..0. .... .... .... .... = LG bit: Globally unique address (factory default)
|
|
.... ...0 .... .... .... .... = IG bit: Individual address (unicast)
|
|
Type: IPv6 (0x86dd)
|
|
\end{Verbatim}
|
|
|
|
\pause
|
|
\begin{itemize}[<+->]
|
|
\item Presentert som heksadesimale oktetter/byter:
|
|
\item \texttt{\color{red}00 17 E0 77 14 57 \color{violet}00 26 18 F2 72 40 \color{black}86 DD}
|
|
\begin{itemize}[<+->]
|
|
\item \texttt{\color{red}00 17 E0 77 14 57} er MAC-48-adressa til mottakeren, routeren
|
|
\item \texttt{\color{violet}00 26 18 F2 72 40} er MAC-48-adressa til avsenderen, klienten
|
|
\item \texttt{86 DD} angir at et IPv6-datagram følger i lag~3
|
|
\end{itemize}
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
\section{IPv6 over andre lag-2-typer}
|
|
\begin{frame}%[allowframebreaks]
|
|
\frametitle{IPv6 over andre lag-2-typer}
|
|
\pause
|
|
\begin{itemize}[<+->]
|
|
\item FDDI: \rfc{2467}
|
|
\item Token Ring: \rfc{2470}
|
|
\item Point-to-point protocol (PPP): \rfc{2472}
|
|
\item Non-Broadcast Multiple Access (NBMA) networks: \rfc{2491}
|
|
\item ATM: \rfc{2492}
|
|
\item ARCnet: \rfc{2497}
|
|
\item Frame Relay: \rfc{2590}
|
|
\item IEEE 1394 (FireWire): \rfc{3146}
|
|
\item Low-Power Wireless Personal Area Networks (6LoWPAN): \rfc{4919}
|
|
\item Brevduer: \rfc{6214}, basert på \rfc{1149}
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
\part{Grunnleggende om adresser}
|
|
|
|
\begin{frame}
|
|
\partpage
|
|
\end{frame}
|
|
|
|
\section*{Oversikt over del~4: Grunnleggende om adresser}
|
|
\begin{frame}[allowframebreaks]
|
|
\frametitle{Oversikt over del~4: Grunnleggende om adresser}
|
|
\tableofcontents%[pausesections]
|
|
\end{frame}
|
|
|
|
\section{Grunnleggende om adresser}
|
|
\begin{frame}%[allowframebreaks]
|
|
\frametitle{Grunnleggende om adresser}
|
|
\pause
|
|
\begin{itemize}[<+->]
|
|
\item 128 bit
|
|
\item Heksadesimal notasjon
|
|
\item 16 og 16 bit grupperes og adskilles med kolon
|
|
\item Ledende nuller kan sløyfes
|
|
\item To eller flere \textit{sammenhengende\/} 16-bitblokker med
|
|
nuller kan slås sammen til \texttt{::} (dobbelkolon), bare én gang
|
|
pr.\ adresse
|
|
\item Prefikslengde angis ved å sette på en skråstrek og oppgi
|
|
riktig antall av signifikante bit fra venstre mot høyre i adressa
|
|
\begin{itemize}[<+->]
|
|
\item Dette er helt likt CIDR-notasjon for IPv4 \prfc{4632}
|
|
\end{itemize}
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
\section{Adressedemo}
|
|
\begin{frame}%[allowframebreaks]
|
|
\frametitle{Grunnleggende om adresser}
|
|
\framesubtitle{Adressedemo}
|
|
\pause
|
|
\begin{itemize}[<+->]
|
|
\item Uninett:\\\texttt{2001:0700:0000:0000:0000:0000:0000:0000\phantom{/32}}
|
|
\item FSI:\\\texttt{2001:0700:1100:0000:0000:0000:0000:0000\phantom{/48}}
|
|
\item IT-avdelingen@FSI:\\\texttt{2001:0700:1100:0003:0000:0000:0000:0000\phantom{/64}}
|
|
\item Tronds D531:\\\texttt{2001:0700:1100:0003:0221:70FF:FE73:686E\phantom{/128}}
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
\begin{frame}%[allowframebreaks]
|
|
\frametitle{Grunnleggende om adresser}
|
|
\framesubtitle{Adressedemo: Hierarkisk struktur}
|
|
%\pause
|
|
\begin{itemize}%[<+->]
|
|
\item Uninett:\\\texttt{\alert{2001:0700}:0000:0000:0000:0000:0000:0000\phantom{/32}}
|
|
\item FSI:\\\texttt{2001:0700:\alert{1100}:0000:0000:0000:0000:0000\phantom{/48}}
|
|
\item IT-avdelingen@FSI:\\\texttt{2001:0700:1100:\alert{0003}:0000:0000:0000:0000\phantom{/64}}
|
|
\item Tronds D531:\\\texttt{2001:0700:1100:0003:\alert{0221:70FF:FE73:686E}\phantom{/128}}
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
\begin{frame}%[allowframebreaks]
|
|
\frametitle{Grunnleggende om adresser}
|
|
\framesubtitle{Adressedemo: La oss forenkle adressene}
|
|
%\pause
|
|
\begin{itemize}%[<+->]
|
|
\item Uninett:\\\texttt{2001:0700:0000:0000:0000:0000:0000:0000\phantom{/32}}
|
|
\item FSI:\\\texttt{2001:0700:1100:0000:0000:0000:0000:0000\phantom{/48}}
|
|
\item IT-avdelingen@FSI:\\\texttt{2001:0700:1100:0003:0000:0000:0000:0000\phantom{/64}}
|
|
\item Tronds D531:\\\texttt{2001:0700:1100:0003:0221:70FF:FE73:686E\phantom{/128}}
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
\begin{frame}%[allowframebreaks]
|
|
\frametitle{Grunnleggende om adresser}
|
|
\framesubtitle{Adressedemo: Ledende nuller}
|
|
%\pause
|
|
\begin{itemize}%[<+->]
|
|
\item Uninett:\\\texttt{2001:\alert{0}700:\alert{000}0:\alert{000}0:\alert{000}0:\alert{000}0:\alert{000}0:\alert{000}0\phantom{/32}}
|
|
\item FSI:\\\texttt{2001:\alert{0}700:1100:\alert{000}0:\alert{000}0:\alert{000}0:\alert{000}0:\alert{000}0\phantom{/48}}
|
|
\item IT-avdelingen@FSI:\\\texttt{2001:\alert{0}700:1100:\alert{000}3:\alert{000}0:\alert{000}0:\alert{000}0:\alert{000}0\phantom{/64}}
|
|
\item Tronds D531:\\\texttt{2001:\alert{0}700:1100:\alert{000}3:\alert{0}221:70FF:FE73:686E\phantom{/128}}
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
\begin{frame}%[allowframebreaks]
|
|
\frametitle{Grunnleggende om adresser}
|
|
\framesubtitle{Adressedemo: Fjernet ledende nuller}
|
|
%\pause
|
|
\begin{itemize}%[<+->]
|
|
\item Uninett:\\\texttt{2001:\alert{700}:\alert{0}:\alert{0}:\alert{0}:\alert{0}:\alert{0}:\alert{0}\phantom{/32}}
|
|
\item FSI:\\\texttt{2001:\alert{700}:1100:\alert{0}:\alert{0}:\alert{0}:\alert{0}:\alert{0}\phantom{/48}}
|
|
\item IT-avdelingen@FSI:\\\texttt{2001:\alert{700}:1100:\alert{3}:\alert{0}:\alert{0}:\alert{0}:\alert{0}\phantom{/64}}
|
|
\item Tronds D531:\\\texttt{2001:\alert{700}:1100:\alert{3}:\alert{221}:70FF:FE73:686E\phantom{/128}}
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
\begin{frame}%[allowframebreaks]
|
|
\frametitle{Grunnleggende om adresser}
|
|
\framesubtitle{Adressedemo: La oss forenkle litt til}
|
|
%\pause
|
|
\begin{itemize}%[<+->]
|
|
\item Uninett:\\\texttt{2001:700:0:0:0:0:0:0\phantom{/32}}
|
|
\item FSI:\\\texttt{2001:700:1100:0:0:0:0:0\phantom{/48}}
|
|
\item IT-avdelingen@FSI:\\\texttt{2001:700:1100:3:0:0:0:0\phantom{/64}}
|
|
\item Tronds D531:\\\texttt{2001:700:1100:3:221:70FF:FE73:686E\phantom{/128}}
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
\begin{frame}%[allowframebreaks]
|
|
\frametitle{Grunnleggende om adresser}
|
|
\framesubtitle{Adressedemo: To eller flere sammenhengende 16-bitblokker med bare 0}
|
|
%\pause
|
|
\begin{itemize}%[<+->]
|
|
\item Uninett:\\\texttt{2001:700:\alert{0:0:0:0:0:0}\phantom{/32}}
|
|
\item FSI:\\\texttt{2001:700:1100:\alert{0:0:0:0:0}\phantom{/48}}
|
|
\item IT-avdelingen@FSI:\\\texttt{2001:700:1100:3:\alert{0:0:0:0}\phantom{/64}}
|
|
\item Tronds D531:\\\texttt{2001:700:1100:3:221:70FF:FE73:686E\phantom{/128}}
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
\begin{frame}%[allowframebreaks]
|
|
\frametitle{Grunnleggende om adresser}
|
|
\framesubtitle{Adressedemo: Erstattet med dobbelkolon}
|
|
%\pause
|
|
\begin{itemize}%[<+->]
|
|
\item Uninett:\\\texttt{2001:700\alert{::}\phantom{/32}}
|
|
\item FSI:\\\texttt{2001:700:1100\alert{::}\phantom{/48}}
|
|
\item IT-avdelingen@FSI:\\\texttt{2001:700:1100:3\alert{::}\phantom{/64}}
|
|
\item Tronds D531:\\\texttt{2001:700:1100:3:221:70FF:FE73:686E\phantom{/128}}
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
\begin{frame}%[allowframebreaks]
|
|
\frametitle{Grunnleggende om adresser}
|
|
\framesubtitle{Adressedemo: Kompakt form}
|
|
%\pause
|
|
\begin{itemize}%[<+->]
|
|
\item Uninett:\\\texttt{2001:700::\phantom{/32}}
|
|
\item FSI:\\\texttt{2001:700:1100::\phantom{/48}}
|
|
\item IT-avdelingen@FSI:\\\texttt{2001:700:1100:3::\phantom{/64}}
|
|
\item Tronds D531:\\\texttt{2001:700:1100:3:221:70FF:FE73:686E\phantom{/128}}
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
\begin{frame}%[allowframebreaks]
|
|
\frametitle{Grunnleggende om adresser}
|
|
\framesubtitle{Adressedemo: Vis prefikslengde}
|
|
%\pause
|
|
\begin{itemize}%[<+->]
|
|
\item Uninett:\\\texttt{2001:700::\alert{/32}}
|
|
\item FSI:\\\texttt{2001:700:1100::\alert{/48}}
|
|
\item IT-avdelingen@FSI:\\\texttt{2001:700:1100:3::\alert{/64}}
|
|
\item Tronds D531:\\\texttt{2001:700:1100:3:221:70FF:FE73:686E\alert{/128}}
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
\begin{frame}%[allowframebreaks]
|
|
\frametitle{Grunnleggende om adresser}
|
|
\framesubtitle{Adressedemo: Kompakte adresser med prefikslengde}
|
|
%\pause
|
|
\begin{itemize}%[<+->]
|
|
\item Uninett:\\\texttt{2001:700::/32}
|
|
\item FSI:\\\texttt{2001:700:1100::/48}
|
|
\item IT-avdelingen@FSI:\\\texttt{2001:700:1100:3::/64}
|
|
\item Tronds D531:\\\texttt{2001:700:1100:3:221:70FF:FE73:686E/128}
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
\section{MAC-48-adresser}
|
|
\begin{frame}%[allowframebreaks]
|
|
\frametitle{Grunnleggende om adresser}
|
|
\framesubtitle{MAC-48-adresser}
|
|
\pause
|
|
\begin{itemize}[<+->]
|
|
\item MAC-48-adresser har følgende oppbygging, gitt av
|
|
\href{http://www.ieee.org/index.html}{IEEE}
|
|
\href{http://standards.ieee.org/getieee802/download/802-2001.pdf}{802-2001}:
|
|
\begin{itemize}[<+->]
|
|
\item \texttt{CC:cc:cc:nn:nn:nn}\hfill(heksadesimalt)
|
|
\item Den første halvparten er produsentnummer: \texttt{CC:cc:cc}
|
|
\item Den andre halvparten er løpenummer: \texttt{nn:nn:nn}
|
|
\end{itemize}
|
|
\item Den første oktetten i produsentnummeret, \texttt{CC}, har en
|
|
spesiell oppbygging:
|
|
\begin{itemize}[<+->]
|
|
\item \texttt{CCCCCC\alert{ug}}\hfill(binært)
|
|
\item Når \texttt{u}-bitet er satt til \texttt{0} (null), så
|
|
gjelder formatet som er oppgitt her, altså
|
|
\texttt{CC:cc:cc:nn:nn:nn}\hfill(heksadesimalt)
|
|
\item Når \texttt{u}-bitet er satt til \texttt{1}, så er alle
|
|
\texttt{C}- og \texttt{c}-sifrene løpenummer, mens \texttt{u}-
|
|
og \texttt{g}-bitene beholder sine spesielle betydninger
|
|
\item Når \texttt{g}-bitet er \texttt{0} så angir adressa en
|
|
individuell node, og når \texttt{g}-bitet er \texttt{1} så er
|
|
adressa en multicastgruppe
|
|
\end{itemize}
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
\begin{frame}%[allowframebreaks]
|
|
\frametitle{Grunnleggende om adresser}
|
|
\framesubtitle{MAC-48-adresser}
|
|
%\pause
|
|
\begin{itemize}[<+->]
|
|
\item Gitt denne MAC-48-adressa: \texttt{\alert{00}:21:70:73:68:6E}
|
|
\item \texttt{CC}-oktetten har verdien \texttt{\alert{00}}
|
|
\hfill(heksadesimalt)
|
|
\item På binær form er dette \texttt{000000\alert{00}}
|
|
\hfill(\texttt{CCCCCC\alert{ug}})
|
|
\item Vi ser at både \texttt{u}- og \texttt{g}-bitene er satt til
|
|
\texttt{0}
|
|
\item Dette er en MAC-48-adresse som:
|
|
\begin{itemize}[<+->]
|
|
\item følger det vanlige mønsteret med produsent- og løpenummer
|
|
\item angir en individuell node
|
|
\item er produsert av «Dell Inc» ifølge
|
|
\href{http://standards.ieee.org/develop/regauth/oui/oui.txt}{OUI-lista}
|
|
hos \href{http://www.ieee.org/index.html}{IEEE} (søk i fila
|
|
etter \texttt{00-21-70})
|
|
\end{itemize}
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
\section{Modda IEEE EUI-64-format}
|
|
\begin{frame}%[allowframebreaks]
|
|
\frametitle{Grunnleggende om adresser}
|
|
\framesubtitle{Modda IEEE EUI-64-format}
|
|
\pause
|
|
\begin{itemize}[<+->]
|
|
\item Unicast-adresser består av 2 ting:
|
|
\begin{itemize}
|
|
\item Prefiks
|
|
\item Grensesnittidentifikator
|
|
\end{itemize}
|
|
\item Bestemt av \rfc{4941}
|
|
\item Grensesnittidentifikatorer er alltid på 64 bit
|
|
\begin{itemize}[<+->]
|
|
\item Dette gjelder ikke for adresser som starter på \texttt{000} (binært)
|
|
\end{itemize}
|
|
\item Grensesnittidentifikatorer kan lages automatisk fra
|
|
MAC-48-adresser
|
|
\item Grensesnittidentifikatorer kan også angis manuelt eller velges
|
|
tilfeldig
|
|
\item Angis grensesnittidentifikatoren manuelt, så angis som regel
|
|
en fullstendig IPv6-adresse
|
|
\item Grensesnittidentifikatorer følger
|
|
\href{http://www.ieee.org/index.html}{IEEE}
|
|
\href{http://grouper.ieee.org/groups/msc/MSC200407/OnlineTutorialsD/EUI64.htm}{EUI-64}-formatet
|
|
med to unntak:
|
|
\begin{enumerate}[<+->]
|
|
\item Universal/local-bitet brukes med \textit{invertert\/}
|
|
betydning/verdi
|
|
\begin{itemize}[<+->]
|
|
\item Gruppebitet mister sin vanlige betydning i denne
|
|
sammenhengen
|
|
\end{itemize}
|
|
\item Oktettene på midten skal være \texttt{FF:FE} ved automatisk
|
|
konvertering fra MAC-48 til EUI-64
|
|
\end{enumerate}
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
\begin{frame}%[allowframebreaks]
|
|
\frametitle{Grunnleggende om adresser}
|
|
\framesubtitle{Modda IEEE EUI-64-format}
|
|
%\pause
|
|
\begin{itemize}[<+->]
|
|
\item Grensesnittidentifikatorer lages fra MAC-48-adresser etter
|
|
oppskriften i \rfc{4291}:
|
|
\begin{itemize}[<+->]
|
|
\item Gitt denne MAC-48-adressa: \texttt{00:21:70:73:68:6E}
|
|
\item Invertér universal/local-bitet: \texttt{0\alert{2}:21:70:73:68:6E}
|
|
\begin{itemize}[<+->]
|
|
\item Før: \texttt{0\alert{0}} (heksadesimalt) $\to$ \texttt{000000\alert{0}0} (binært)
|
|
\item Etter: \texttt{000000\alert{1}0} (binært) $\to$ \texttt{0\alert{2}} (heksadesimalt)
|
|
\end{itemize}
|
|
\item Sett inn \texttt{FF:FE} på midten: \texttt{02:21:70:\alert{FF:FE}:73:68:6E}
|
|
\item Ta bort overflødig kolon og nuller: \texttt{221:70FF:FE73:686E}
|
|
\item Høyreskift hele stasen: \texttt{::221:70FF:FE73:686E}
|
|
\item Nå er grensesnittidentifikatoren klar til å bli kombinert med ønsket prefiks
|
|
\item Prefiks annonsert av router: \texttt{2001:700:1100:3::/64}
|
|
\item Fullstendig adresse: \texttt{2001:700:1100:3:221:70FF:FE73:686E}
|
|
\end{itemize}
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
\begin{frame}%[allowframebreaks]
|
|
\frametitle{Grunnleggende om adresser}
|
|
\framesubtitle{Modda IEEE EUI-64-format}
|
|
%\pause
|
|
\begin{itemize}[<+->]
|
|
\item OBS! Arbeidsuhell!
|
|
\item Det skulle egentlig ha vært \texttt{FF:FF} i stedet for
|
|
\texttt{FF:FE}
|
|
\begin{itemize}
|
|
\item MAC-48 $\to$ EUI-64 skal bruke \texttt{FF:FF}
|
|
\item EUI-48 $\to$ EUI-64 skal bruke \texttt{FF:FE}
|
|
\end{itemize}
|
|
\item Fordi IPv6 bruker universal/local-bitet med invertert
|
|
betydning/verdi, så er arbeidsuhellet akseptert
|
|
\item Se \rfc{4291}
|
|
\item \href{http://en.wikipedia.org/wiki/IEEE_802.15}{IEEE 802.15
|
|
WPAN}, \href{http://en.wikipedia.org/wiki/IEEE_1394}{IEEE 1394
|
|
FireWire}, og \href{http://en.wikipedia.org/wiki/ZigBee}{ZigBee}
|
|
bruker EUI-64-adresser i lag~2
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
\section{Manuell grensesnittidentifikator}
|
|
\begin{frame}%[allowframebreaks]
|
|
\frametitle{Grunnleggende om adresser}
|
|
\framesubtitle{Manuell grensesnittidentifikator}
|
|
\pause
|
|
\begin{itemize}[<+->]
|
|
\item Manuell grensesnittidentifikator innebærer at
|
|
universal/local-bitet som regel er satt til \texttt{0}
|
|
\item De øvrige 63 bitene kan være hva som helst, bare verdien ikke
|
|
skaper adressekollisjon i samme VLAN
|
|
\item Normalt bruker man manuelle grensesnittidentifikatorer med
|
|
lave verdier
|
|
\item For eksempel \texttt{::53} \hfill(DNS-tjener, kanskje)
|
|
\item Med et vilkårlig prefiks: \texttt{2001:db8:1234:1::\alert{53}}
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
\begin{frame}%[allowframebreaks]
|
|
\frametitle{Grunnleggende om adresser}
|
|
\framesubtitle{Manuell grensesnittidentifikator}
|
|
%\pause
|
|
\begin{itemize}[<+->]
|
|
\item Lav verdi for grensesnittidentifikatorer gjør at
|
|
universal/local-bitet blir satt til null:
|
|
\begin{itemize}[<+->]
|
|
\item \texttt{::53}\hfill(heksadesimalt)
|
|
\item \texttt{::\alert{0}:0:0:53}\hfill(heksadesimalt)
|
|
\item \texttt{::000000\alert{0}000000000:00~\dots~00:0000000001010011}
|
|
\hfill(binært)
|
|
\item Veldig praktisk for lokalgitte adresser, ikke sant?
|
|
\end{itemize}
|
|
\item Uten \textit{invertering\/} av universal/local-bitet, måtte vi
|
|
bruke manuelle grensesnittidentifikatorer på denne måten:
|
|
\begin{itemize}[<+->]
|
|
\item \texttt{::0\alert{2}00:0:0:53}\hfill(heksadesimalt)
|
|
\item \texttt{::000000\alert{1}000000000:00~\dots~00:0000000001010011}
|
|
\hfill(binært)
|
|
\item Tungvint og upraktisk, ikke sant?
|
|
\end{itemize}
|
|
\item Se her:
|
|
\begin{itemize}[<+->]
|
|
\item \texttt{2001:db8:1234:1:0200:0:0:53}\quad vs
|
|
\item \texttt{2001:db8:1234:1::53}
|
|
\item Ja til den siste, nei til den forrige
|
|
\end{itemize}
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
\begin{frame}%[allowframebreaks]
|
|
\frametitle{Grunnleggende om adresser}
|
|
\framesubtitle{Manuell grensesnittidentifikator}
|
|
%\pause
|
|
\begin{itemize}[<+->]
|
|
\item Det er ingenting i veien for å «kode» IPv4-adressa inn i
|
|
IPv6-adressa:
|
|
\item \texttt{2001:700:1100:3:\alert{128:39:174:67}}\hfill(\texttt{excelsior.fig.ol.no})
|
|
\item Man må bare passe på verdien til universal/local-bitet
|
|
\item \texttt{128} $=$ \texttt{0 1 2 8} $=$ \texttt{0000 00\alert{0}1 0010 1000}\hfill(heks, heks, bin)
|
|
\item \texttt{u}-bitet er $0$, altså en lokalgitt adresse
|
|
\item Dette gikk bra!
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
\begin{frame}%[allowframebreaks]
|
|
\frametitle{Grunnleggende om adresser}
|
|
\framesubtitle{Manuell grensesnittidentifikator}
|
|
%\pause
|
|
\begin{itemize}[<+->]
|
|
\item Verdiene
|
|
\begin{itemize}[<+->]
|
|
\item \texttt{00\alert{0}0} $=$ \texttt{0},
|
|
\item \texttt{00\alert{0}1} $=$ \texttt{1},
|
|
\item \texttt{01\alert{0}0} $=$ \texttt{4},
|
|
\item \texttt{01\alert{0}1} $=$ \texttt{5},
|
|
\item \texttt{10\alert{0}0} $=$ \texttt{8},
|
|
\item \texttt{10\alert{0}1} $=$ \texttt{9},
|
|
\item \texttt{11\alert{0}0} $=$ \texttt{C} og
|
|
\item \texttt{11\alert{0}1} $=$ \texttt{D},
|
|
\end{itemize}
|
|
\item gir alle $0$ i \texttt{u}-bitet
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
\section{Tilfeldig grensesnittidentifikator}
|
|
\begin{frame}%[allowframebreaks]
|
|
\frametitle{Grunnleggende om adresser}
|
|
\framesubtitle{Tilfeldig grensesnittidentifikator}
|
|
\pause
|
|
\begin{itemize}[<+->]
|
|
\item Konstant grensesnittidentifikator truer personvernet
|
|
\item Eksempel med Tronds D531-læppis:
|
|
\begin{itemize}[<+->]
|
|
\item \texttt{2001:700:1100:3:\alert{221:70FF:FE73:686E}}\hfill(IT-avdelingen@FSI)
|
|
\item \texttt{2001:700:1D00:8:\alert{221:70FF:FE73:686E}}\hfill(public-nettet@HiG)
|
|
\end{itemize}
|
|
\item \rfc{4941} beskriver bruk av tilfeldig grensesnittidentifikator
|
|
\item Med tilfeldig grensesnittidentifikator:
|
|
\begin{itemize}[<+->]
|
|
\item \texttt{2001:700:1100:3:\alert{B9D9:B729:6CDD:4E5}}\hfill(IT-avdelingen@FSI)
|
|
\item \texttt{2001:700:1D00:8:\alert{B9D9:B729:6CDD:4E5}}\hfill(public-nettet@HiG)
|
|
\end{itemize}
|
|
\item Disse byttes ut typisk hver dag:
|
|
\begin{itemize}[<+->]
|
|
\item \texttt{2001:700:1100:3:\alert{F503:1E6F:5F2F:F5F2}}\hfill(IT-avdelingen@FSI)
|
|
\item \texttt{2001:700:1D00:8:\alert{F503:1E6F:5F2F:F5F2}}\hfill(public-nettet@HiG)
|
|
\end{itemize}
|
|
\item Man må bare passe på u/l-bitet og passe seg for adressekollisjon
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
\begin{frame}%[allowframebreaks]
|
|
\frametitle{Grunnleggende om adresser}
|
|
\framesubtitle{Tilfeldig grensesnittidentifikator}
|
|
%\pause
|
|
\begin{itemize}[<+->]
|
|
\item \rfc{4941} angir en metode for generering av tilfeldig
|
|
grensesnittidentifikator:
|
|
\begin{enumerate}[<+->]
|
|
\item Sett sammen historisk verdi fra forrige runde (eller et
|
|
tilfeldig 64-bit heltall) med den konstante
|
|
grensesnittidentifikatoren til et 128-bit heltall
|
|
\item Beregn MD5-hash av resultatet fra trinn 1
|
|
\item Bruk de 64 \textit{mest\/} signifikante bitene og sett det
|
|
sjuende mest signifikante bitet til null (dette indikerer en
|
|
lokalgitt grensesnittidentifikator)
|
|
\item Sammenlign den nye tilfeldige grensesnittidentifikatoren med
|
|
lista over reserverte identifikatorer; oppdages en uakseptabel
|
|
identifikator, gå til trinn 1 og bruk de 64 \textit{minst\/}
|
|
signifikante bitene fra trinn 2 som historisk verdi
|
|
\item Ta i bruk den nye tilfeldige grensesnittidentifikatoren
|
|
\item Lagre de 64 \textit{minst\/} signifikante bitene fra trinn 2
|
|
som historisk verdi for bruk den neste gangen denne algoritmen
|
|
brukes
|
|
\end{enumerate}
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
% Bør ha med en egen slide som viser (generering av) tilfeldig ifid i praksis.
|
|
|
|
\section{Spesialadresser}
|
|
\begin{frame}%[allowframebreaks]
|
|
\frametitle{Grunnleggende om adresser}
|
|
\framesubtitle{Spesialadresser}
|
|
\pause
|
|
\begin{itemize}[<+->]
|
|
\item Nulladressa: \texttt{0:0:0:0:0:0:0:0/0} eller \texttt{::/0}
|
|
\begin{itemize}[<+->]
|
|
\item Brukes av klienter som ennå ikke vet sin egen adresse
|
|
(DHCPv6)
|
|
\item Brukes av tjenester som godtar forespørsler fra alle
|
|
grensesnitt (sjekk ut
|
|
\href{http://www.freebsd.org/cgi/man.cgi?query=bind&apropos=0&sektion=2&manpath=FreeBSD+9.1-RELEASE&arch=default&format=html}{\texttt{bind}(2)}-systemkallet
|
|
i «Juniks»)
|
|
\item Tilsvarer \texttt{0.0.0.0/0} eller \texttt{0/0} i IPv4
|
|
\end{itemize}
|
|
\item Loopbackadressa: \texttt{0:0:0:0:0:0:0:1/128} eller
|
|
\texttt{::1/128}
|
|
\begin{itemize}[<+->]
|
|
\item Velkjent adresse for å snakke med tjenester i samme node
|
|
\item Tilsvarer \texttt{127.0.0.1/32} i IPv4
|
|
\end{itemize}
|
|
\item Dokumentasjonsprefiks: \texttt{2001:db8::/32}
|
|
\begin{itemize}[<+->]
|
|
\item Brukes for generell beskrivelse av IPv6-oppsett i lærebøker
|
|
og annen generell dokumentasjon \prfc{3849}
|
|
\item Forbudt å bruke på det offentlige internettet
|
|
\item Bør blokkeres i \textit{inngående\/} og utgående ACL-er for
|
|
internettgrensesnittet til routere
|
|
\end{itemize}
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
\begin{frame}%[allowframebreaks]
|
|
\frametitle{Grunnleggende om adresser}
|
|
\framesubtitle{Spesialadresser}
|
|
%\pause
|
|
\begin{itemize}[<+->]
|
|
\item IPv4-mapped IPv6 addresses:
|
|
\texttt{::FFFF:\textit{w}.\textit{x}.\textit{y}.\textit{z}}
|
|
\begin{itemize}[<+->]
|
|
\item Hvor \texttt{\textit{w}.\textit{x}.\textit{y}.\textit{z}} er
|
|
den opprinnelige IPv4-adressa skrevet på vanlige måte for IPv4-adresser
|
|
\item Eksempel: \texttt{::FFFF:128.39.174.1}
|
|
\item Brukes i systemer som har både IPv4- og IPv6-adresser, men
|
|
hvor den enkelte tjeneste bare bruker IPv6-socketer og har slått
|
|
av \texttt{IPV6\_V6ONLY} med
|
|
\href{http://www.freebsd.org/cgi/man.cgi?query=setsockopt&apropos=0&sektion=2&manpath=FreeBSD+9.1-RELEASE&arch=default&format=html}{\texttt{setsockopt}(2)}
|
|
for lyttesocketen
|
|
\item Forbudt av sikkerhetshensyn i enkelte OS-er som
|
|
\href{http://www.openbsd.org/}{OpenBSD}, se OpenBSDs
|
|
\href{http://www.openbsd.org/cgi-bin/man.cgi?query=ip6&sektion=4}{\texttt{ip6}(4)}
|
|
\item Tjenestene må da åpne separate lyttesocketer for IPv4 og
|
|
IPv6
|
|
\end{itemize}
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
\section{Duplicate Address Detection --- DAD}
|
|
\begin{frame}%[allowframebreaks]
|
|
\frametitle{Grunnleggende om adresser}
|
|
\framesubtitle{Duplicate Address Detection --- DAD}
|
|
\pause
|
|
\begin{itemize}[<+->]
|
|
\item Når en unicast-adresse er generert skal man alltid sjekke at
|
|
ingen andre bruker den samme adressa\hfill\prfc{4862}
|
|
\item Dette gjøres ved å sende en «ICMPv6 Neighbor
|
|
Solicitation-melding» til den genererte adressas «Solicited-node
|
|
multicast address»
|
|
\item ICMPv6-meldinga inneholder den genererte adressa i feltet for
|
|
«Target Address»\hfill\prfc{4861}
|
|
\item En «Solicited-node multicast address» er på formen
|
|
\texttt{FF02::1:FF\alert<8->{\textit{aa}}:\alert<8->{\textit{bbcc}}},
|
|
hvor \alert<8->{\texttt{\textit{aabbcc}}} er de 24 minst
|
|
signifikante bitene fra den opprinnelige adressa\hfill\prfc{4291}
|
|
\item Sett at den genererte adressa er
|
|
\texttt{2001:700:1100:3:221:70FF:FE\alert<8->{73}:\alert<8->{686E}}
|
|
\item «Solicited-node multicast address» vil da være
|
|
\texttt{FF02::1:FF\alert<8->{73}:\alert<8->{686E}}
|
|
\pause
|
|
\item Vanligvis kommer det ikke noe svar på slike ICMPv6-meldinger
|
|
\dots
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
\begin{frame}%[allowframebreaks]
|
|
\frametitle{Grunnleggende om adresser}
|
|
\framesubtitle{Duplicate Address Detection --- DAD}
|
|
%\pause
|
|
\begin{itemize}[<+->]
|
|
\item \dots\ trodde vi \dots
|
|
\item «\href{http://en.wikipedia.org/wiki/Danger,_Will_Robinson}{Danger, Will Robinson!}»
|
|
\item Det er et stort potensiale for Denial of Service --- DoS\hfill\prfc{3756}
|
|
\item En «slabbedask» kan velge å svare på DAD og nekte oss å bruke
|
|
\textit{enhver\/} adresse
|
|
\item Svaret kommer i form av en «ICMPv6 Neighbor
|
|
Advertisement»-melding som forteller oss at en annen node bruker
|
|
den samme adressa\hfill\prfc{4862}
|
|
\item Resultat: «slabbedasken» kan bruke nettverket uforstyrra
|
|
\item Dersom det er 2 eller flere «slabbedasker» i samme nettverk, hva da?
|
|
\item Problemet kan løses med «SEcure Neighbor Discovery» (SEND), \rfc{3971}
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
\part{Adressetyper}
|
|
|
|
\begin{frame}
|
|
\partpage
|
|
\end{frame}
|
|
|
|
\section*{Oversikt over del~5: Adressetyper}
|
|
\begin{frame}%[allowframebreaks]
|
|
\frametitle{Oversikt over del~5: Adressetyper}
|
|
\tableofcontents%[pausesections]
|
|
\end{frame}
|
|
|
|
\section{Adressetyper}
|
|
\begin{frame}%[allowframebreaks]
|
|
\frametitle{Adressetyper}
|
|
\pause
|
|
\begin{itemize}[<+->]
|
|
\item Det finnes flere adressetyper med forskjellige bruksområder:
|
|
\begin{itemize}[<+->]
|
|
\item Unicast-adresser:
|
|
\begin{itemize}[<+->]
|
|
\item Link-local-adresser
|
|
\item Site-local-adresser
|
|
\item Offentlige unicast-adresser
|
|
\item Unike, lokale, aggregerbare adresser
|
|
\end{itemize}
|
|
\item Anycast-adresser
|
|
\item Multicast-adresser
|
|
\end{itemize}
|
|
\item Merk at broadcast er avskaffa og er i stor grad erstatta med
|
|
link-local-multicast
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
\section{Link-local-adresser}
|
|
\begin{frame}%[allowframebreaks]
|
|
\frametitle{Adressetyper}
|
|
\framesubtitle{Link-local-adresser}
|
|
\pause
|
|
\begin{itemize}[<+->]
|
|
\item Definert: \rfc{4291}
|
|
\item Bruksområde:
|
|
\begin{itemize}[<+->]
|
|
\item Lokal kommunikasjon internt i VLAN-et
|
|
\item Sentral for autokonfigurasjon
|
|
\item Blir ikke videresendt av routere til andre VLAN eller til internett
|
|
\item Kan brukes i ad-hoc-nett
|
|
\end{itemize}
|
|
\item Prefiks: \texttt{FE80::/10}
|
|
\item De neste 54 bitene skal settes til null
|
|
\item De siste 64 bitene er grensesnittidentifikator i modda
|
|
EUI-64-format
|
|
\item Eksempel: \texttt{FE80::221:70FF:FE73:686E}
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
\section{Site-local-adresser}
|
|
\begin{frame}%[allowframebreaks]
|
|
\frametitle{Adressetyper}
|
|
\framesubtitle{Site-local-adresser}
|
|
\pause
|
|
\begin{itemize}[<+->]
|
|
\item Definert: \rfc{3513}
|
|
\item Bruksområde: private adresser på lik linje med \rfc{1918}
|
|
\item Prefiks: \texttt{FEC0::/10}
|
|
\item De neste 54 bitene brukes til subnet-ID
|
|
\item De siste 64 bitene er grensesnittidentifikator i modda
|
|
EUI-64-format
|
|
\item Eksempel: \texttt{FEC0::DEAD:BEEF:1337}
|
|
\item Ikke bruk site-local-adresser \prfc{3879}
|
|
\item Site-local-adresser er erstatta med ULA \prfc{4193}
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
\section{Offentlige unicast-adresser}
|
|
\begin{frame}%[allowframebreaks]
|
|
\frametitle{Adressetyper}
|
|
\framesubtitle{Offentlige unicast-adresser}
|
|
\pause
|
|
\begin{itemize}[<+->]
|
|
\item Definert: \rfc{4291} og \rfc{3587}
|
|
\item Bruksområde: ende-til-ende-kommunikasjon på det offentlige internett
|
|
\item Prefiks: \texttt{2000::/3}
|
|
\item De neste bitene allokeres hierarkisk, minimum i 4-bitblokker,
|
|
men gjerne i 8- eller 16-bitblokker
|
|
\item De siste 64 bitene er grensesnittidentifikator i modda
|
|
EUI-64-format
|
|
\item Det er vanlig at kundene blir tildelt \texttt{/48}- eller
|
|
\texttt{/56}-bits prefiks av ISP-ene:
|
|
\begin{itemize}[<+->]
|
|
\item \texttt{/48}-bits prefiks gir $128-64-48=16$ subnetbit $\to$ $2^{16}=65536$ subnett
|
|
\item \texttt{/56}-bits prefiks gir $128-64-56=\phantom{1}8$ subnetbit $\to$ $2^{8\phantom{6}}=\phantom{65}256$ subnett
|
|
\end{itemize}
|
|
\item Eksempel: \texttt{2001:700:1100:1::1/128}
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
\section{Unike, lokale, aggregerbare adresser}
|
|
\begin{frame}%[allowframebreaks]
|
|
\frametitle{Adressetyper}
|
|
\framesubtitle{Unike, lokale, aggregerbare adresser}
|
|
\pause
|
|
\begin{itemize}[<+->]
|
|
\item Definert: \rfc{4193}
|
|
\item Bruksområde: ende-til-ende-kommunikasjon internt i nettverket
|
|
\item Veldig praktisk å ha faste, interne adresser uavhengig av
|
|
offentlig prefiks tildelt av ISP
|
|
\item Prefiks: \texttt{FC00::/7}
|
|
\item Det åttende mest signifikante bitet skal settes til \texttt{1}
|
|
inntil videre
|
|
\item Det reelle prefikset er dermed
|
|
\texttt{\alert{FD}00::/\alert{8}}
|
|
\item Prefikset \texttt{\alert{FC}00::/\alert{8}} er reservert
|
|
inntil videre
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
\begin{frame}%[allowframebreaks]
|
|
\frametitle{Adressetyper}
|
|
\framesubtitle{Unike, lokale, aggregerbare adresser}
|
|
%\pause
|
|
\begin{itemize}[<+->]
|
|
\item Reelt prefiks: \texttt{FD00::/8}
|
|
\item De neste 40 bitene genereres tilfeldig, gjerne som beskrevet i
|
|
\rfc{4193}
|
|
\item De neste 16 bitene brukes til subnett-ID
|
|
\item De siste 64 bitene er grensesnittidentifikator i modda
|
|
EUI-64-format
|
|
\item Eksempel: \texttt{FD\alert{5C:14CF:C300}:31::1/128}
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
\begin{frame}%[allowframebreaks]
|
|
\frametitle{Adressetyper}
|
|
\framesubtitle{Unike, lokale, aggregerbare adresser}
|
|
%\pause
|
|
\begin{itemize}[<+->]
|
|
\item \href{http://www.sixxs.net/}{SixXS} tilbyr bl.a.:
|
|
\begin{itemize}[<+->]
|
|
\item Generering av ULA-prefiks:
|
|
\texttt{\url{http://www.sixxs.net/tools/grh/ula/}}
|
|
\item Registrering av ULA-prefiks:
|
|
\texttt{\url{http://www.sixxs.net/tools/grh/ula/list/}}
|
|
\end{itemize}
|
|
\item
|
|
\href{http://www.apnic.net/events/apnic-speakers/george-michaelson}{George
|
|
Michaelson}, seniorforsker ved
|
|
\href{http://www.apnic.net/}{APNIC}, har oppdaget ULA-adresser i
|
|
fri dressur ute på internett:
|
|
\begin{itemize}[<+->]
|
|
\item Tydeligvis klarer ikke folk å lese RFC-ene og holde seg til
|
|
de fastsatte reglene
|
|
\item
|
|
\texttt{\url{http://www.sixxs.net/archive/docs/IEPG2013_ULA_in_the_wild.pdf}}
|
|
\end{itemize}
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
\begin{frame}%[allowframebreaks]
|
|
\frametitle{Adressetyper}
|
|
\framesubtitle{Unike, lokale, aggregerbare adresser}
|
|
%\pause
|
|
\begin{itemize}[<+->]
|
|
\item Her er algoritmen fra \rfc{4193} for å generere de 40
|
|
tilfeldige bitene:
|
|
\begin{enumerate}[<+->]
|
|
\item Uttrykk nåværende øyeblikk som et 64-bit heltall i
|
|
NTP-format \prfc{5905}
|
|
\item Bruk en EUI-64-identifikator fra systemet som kjører denne
|
|
algoritmen
|
|
\begin{itemize}[<+->]
|
|
\item Mangler du en EUI-64-identifikator, så kan du lage en fra
|
|
en 48-bit MAC-adresse som angitt i \rfc{4291}
|
|
\item Kan du ikke lage en EUI-64-identifikator, så bruk en annen
|
|
unik verdi som serienummeret til systemet
|
|
\end{itemize}
|
|
\item Sett sammen de to 64-bit heltallene til et 128-bit heltall
|
|
\item Beregn en SHA-1-hash som beskrevet i \rfc{3174}. Resultatet
|
|
er et heltall på 160 bit
|
|
\item Bruk de 40 minst signifikante bitene som global
|
|
identifikator
|
|
\end{enumerate}
|
|
\item Har man tilgang på tilfeldige tall av god kvalitet, så kan man
|
|
bruke de i stedet for metoden over
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
\section{Anycast-adresser}
|
|
\begin{frame}%[allowframebreaks]
|
|
\frametitle{Adressetyper}
|
|
\framesubtitle{Anycast-adresser}
|
|
\pause
|
|
\begin{itemize}[<+->]
|
|
\item Definert: \rfc{4291}
|
|
\item Bruksområde: felles adresse for distribuerte tjenester,
|
|
routerne bestemmer hvilken server som er nærmest og sender
|
|
trafikken dit
|
|
\item Prefiks: ingen, allokeres fra dine egne unicast-adresser og
|
|
markeres som en anycast-adresse hos routerne og serverne
|
|
\item Alle IPv6-adresser hvor alle bit i grensesnittidentifikatoren
|
|
satt til null, er reservert som «Subnet-Router anycast address»
|
|
\item Denne anycast-adressa brukes når man vil kontakte én av
|
|
potensielt flere routere i subnettet der du er
|
|
\item Eksempel: \texttt{2001:700:1100:1::/128 \alert{anycast}}
|
|
\item Se også \rfc{2526}
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
\section{Multicast-adresser}
|
|
\begin{frame}%[allowframebreaks]
|
|
\frametitle{Adressetyper}
|
|
\framesubtitle{Multicast-adresser}
|
|
\pause
|
|
\begin{itemize}[<+->]
|
|
\item Definert: \rfc{4291}
|
|
\item Bruksområde: én-til-mange-kommunikasjon
|
|
\item Prefiks: \texttt{FF::/8}
|
|
\item Flagg \texttt{\textit{f\/}} og rekkevidde
|
|
\texttt{\textit{r\/}} er innebygget i adressa:
|
|
\texttt{FF\textit{fr}::/16}
|
|
\item Eksempel: \texttt{FF0E::101/128}\hfill(global multicast-adresse
|
|
for NTP)
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
\begin{frame}%[allowframebreaks]
|
|
\frametitle{Adressetyper}
|
|
\framesubtitle{Multicast-adresser}
|
|
%\pause
|
|
\begin{itemize}[<+->]
|
|
\item Flaggene heter \texttt{0RPT}\hfill(null, err, pe, te)
|
|
\item Flagget \texttt{T} angir med \texttt{0} at adressa er velkjent
|
|
(definert av \href{http://www.iana.org/}{IANA}), og med \texttt{1}
|
|
at adressa er midlertidig (lokalt definert)
|
|
\item Flagget \texttt{P} angir med \texttt{1} at adressa inneholder
|
|
et unicast-prefiks og skal følge reglene i \rfc{3306}
|
|
\item Flagget \texttt{R} angir med \texttt{1} at adressa også
|
|
inneholder et møtepunkt («rendezvous point») og skal følge reglene
|
|
i \rfc{3956}
|
|
\item Flaggene \texttt{P} og \texttt{R} gjør det enkelt å lage egne
|
|
multicast-adresser for internt bruk i organisasjonen
|
|
\item Bruk av flaggene \texttt{R}, \texttt{P} og \texttt{T}
|
|
gjennomgås i detalj i del~10
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
\begin{frame}[fragile]%[allowframebreaks]
|
|
\frametitle{Adressetyper}
|
|
\framesubtitle{Multicast-adresser}
|
|
%\pause
|
|
\begin{multicols}{2}
|
|
\begin{itemize}[<+->]
|
|
\item Følgende rekkevidder er definert i \rfc{4921}:
|
|
\item \texttt{0}: reservert
|
|
\item \texttt{1}: interface-local
|
|
\item \texttt{2}: link-local
|
|
\item \texttt{3}: reservert
|
|
\item \texttt{4}: admin-local
|
|
\item \texttt{5}: site-local
|
|
\item \texttt{6}: ikke definert
|
|
\item \texttt{7}: ikke definert
|
|
\item \texttt{8}: organization-local
|
|
\item \texttt{9}: ikke definert
|
|
\item \texttt{A}: ikke definert,\\ brukt av Uninett til å
|
|
\href{http://drift.uninett.no/nett/ip-nett/ipv6-multicastadresser.html}{begrense}
|
|
trafikken innenfor «Uninettet»
|
|
\item \texttt{B}: ikke definert
|
|
\item \texttt{C}: ikke definert
|
|
\item \texttt{D}: ikke definert
|
|
\item \texttt{E}: global
|
|
\item \texttt{F}: reservert
|
|
\end{itemize}
|
|
\end{multicols}
|
|
\end{frame}
|
|
|
|
\part{DNS}
|
|
|
|
\begin{frame}
|
|
\partpage
|
|
\end{frame}
|
|
|
|
\section*{Oversikt over del~6: DNS}
|
|
\begin{frame}[allowframebreaks]
|
|
\frametitle{Oversikt over del~6: DNS}
|
|
\tableofcontents%[pausesections]
|
|
\end{frame}
|
|
|
|
\section{\texttt{AAAA} og \texttt{PTR}}
|
|
\begin{frame}[fragile]%[allowframebreaks]
|
|
\frametitle{DNS}
|
|
\framesubtitle{\texttt{AAAA} og \texttt{PTR}}
|
|
\pause
|
|
\begin{itemize}[<+->]
|
|
\item Navn-til-IPv6-adresser bruker \texttt{AAAA}-poster
|
|
\begin{itemize}[<+->]
|
|
\item Eksempel:
|
|
\begin{verbatim}
|
|
$ORIGIN fig.ol.no.
|
|
svabu IN AAAA 2001:700:1100:1::4
|
|
\end{verbatim}
|
|
\end{itemize}
|
|
\item IPv6-adresser-til-navn bruker \texttt{PTR}-poster plassert i \texttt{ip6.arpa.}
|
|
\begin{itemize}[<+->]
|
|
\item Eksempel:
|
|
\begin{verbatim}
|
|
$ORIGIN 1.0.0.0.0.0.1.1.0.0.7.0.1.0.0.2.ip6.arpa.
|
|
4.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0 IN PTR svabu.fig.ol.no.
|
|
\end{verbatim}
|
|
\end{itemize}
|
|
\item Se \rfc{3596}
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
\section{\texttt{A6}}
|
|
\begin{frame}[fragile]%[allowframebreaks]
|
|
\frametitle{DNS}
|
|
\framesubtitle{\texttt{A6}}
|
|
\pause
|
|
\begin{itemize}[<+->]
|
|
\item \texttt{A6}-poster var foreslått som erstatning for
|
|
\texttt{AAAA}-poster av \rfc{2874}, men er endret til
|
|
eksperimentell av \rfc{3363}
|
|
\item \rfc{3364} diskuterer
|
|
fordeler og ulemper med \texttt{AAAA} og \texttt{A6}
|
|
\item En \texttt{A6}-post består av 2--3 ting:
|
|
\begin{enumerate}[<+->]
|
|
\item Prefikslengde fra og med $0$ til og med $128$
|
|
\item Utdrag av IPv6-adressa
|
|
\item Navn som henviser til resten av adressa
|
|
\end{enumerate}
|
|
\item Settes prefikslengda til:
|
|
\begin{itemize}[<+->]
|
|
\item $0$, så er det \alert{ikke} lov å oppgi noen henvisning,
|
|
fordi dette navnet er det øverste eller det eneste nivået i en
|
|
kjede
|
|
\item $128$, så er det \alert{ikke} lov å oppgi noen IPv6-adresse,
|
|
fordi man henviser til et helt annet navn, tydeligvis et
|
|
overflødig alternativ til \texttt{CNAME}
|
|
\end{itemize}
|
|
\item Avsnittene 3.1.1 og 3.1.3 i \rfc{2874} er ikke enige med seg
|
|
selv når prefikslengda settes til $128$
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
\begin{frame}[fragile]%[allowframebreaks]
|
|
\frametitle{DNS}
|
|
\framesubtitle{\texttt{A6}}
|
|
%\pause
|
|
\begin{itemize}[<+->]
|
|
\item Et tenkt eksempel med \texttt{A6}:
|
|
\item
|
|
\begin{verbatim}
|
|
$ORIGIN ip6.uninett.no.
|
|
uninett IN A6 0 2001:700::
|
|
fig IN A6 32 0:0:1100:: uninett
|
|
|
|
$ORIGIN fig.ol.no.
|
|
ext-servere.ip6 IN A6 48 0:0:0:1:: fig.ip6.uninett.no.
|
|
svabu IN A6 64 ::4 ext-servere.ip6
|
|
\end{verbatim}
|
|
\item Vi vil vite IPv6-adressa for \texttt{svabu.fig.ol.no.} og vi
|
|
vil bruke \texttt{A6}-poster for å finne svaret
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
\begin{frame}[fragile]%[allowframebreaks]
|
|
\frametitle{DNS}
|
|
\framesubtitle{\texttt{A6}}
|
|
%\pause
|
|
\begin{itemize}%[<+->]
|
|
\item Et tenkt eksempel med \texttt{A6}:
|
|
\item
|
|
\begin{verbatim}
|
|
$ORIGIN fig.ol.no.
|
|
svabu IN A6 64 ::4 ext-servere.ip6
|
|
\end{verbatim}
|
|
\item Forklaring:
|
|
\begin{itemize}%[<+->]
|
|
\item \texttt{svabu.fig.ol.no.} mangler de 64 mest signifikante bitene og henviser til \texttt{ext-servere.ip6.fig.ol.no.}
|
|
\end{itemize}
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
\begin{frame}[fragile]%[allowframebreaks]
|
|
\frametitle{DNS}
|
|
\framesubtitle{\texttt{A6}}
|
|
%\pause
|
|
\begin{itemize}%[<+->]
|
|
\item Et tenkt eksempel med \texttt{A6}:
|
|
\item
|
|
\begin{verbatim}
|
|
$ORIGIN fig.ol.no.
|
|
svabu IN A6 64 ::4 ext-servere.ip6
|
|
ext-servere.ip6 IN A6 48 0:0:0:1:: fig.ip6.uninett.no.
|
|
\end{verbatim}
|
|
\item Forklaring:
|
|
\begin{itemize}%[<+->]
|
|
\item \texttt{ext-servere.ip6.fig.ol.no.} mangler de 48 mest signifikante bitene og henviser til \texttt{fig.ip6.uninett.no.}
|
|
\end{itemize}
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
\begin{frame}[fragile]%[allowframebreaks]
|
|
\frametitle{DNS}
|
|
\framesubtitle{\texttt{A6}}
|
|
%\pause
|
|
\begin{itemize}%[<+->]
|
|
\item Et tenkt eksempel med \texttt{A6}:
|
|
\item
|
|
\begin{verbatim}
|
|
$ORIGIN fig.ol.no.
|
|
svabu IN A6 64 ::4 ext-servere.ip6
|
|
ext-servere.ip6 IN A6 48 0:0:0:1:: fig.ip6.uninett.no.
|
|
|
|
$ORIGIN ip6.uninett.no.
|
|
fig IN A6 32 0:0:1100:: uninett
|
|
\end{verbatim}
|
|
\item Forklaring:
|
|
\begin{itemize}%[<+->]
|
|
\item \texttt{fig.ip6.uninett.no.} mangler de 32 mest signifikante bitene og henviser til \texttt{uninett.ip6.uninett.no.}
|
|
\end{itemize}
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
\begin{frame}[fragile]%[allowframebreaks]
|
|
\frametitle{DNS}
|
|
\framesubtitle{\texttt{A6}}
|
|
%\pause
|
|
\begin{itemize}%[<+->]
|
|
\item Et tenkt eksempel med \texttt{A6}:
|
|
\item
|
|
\begin{verbatim}
|
|
$ORIGIN fig.ol.no.
|
|
svabu IN A6 64 ::4 ext-servere.ip6
|
|
ext-servere.ip6 IN A6 48 0:0:0:1:: fig.ip6.uninett.no.
|
|
|
|
$ORIGIN ip6.uninett.no.
|
|
fig IN A6 32 0:0:1100:: uninett
|
|
uninett IN A6 0 2001:700::
|
|
\end{verbatim}
|
|
\item Forklaring:
|
|
\begin{itemize}%[<+->]
|
|
\item Kjeden slutter med \texttt{uninett.ip6.uninett.no.} og her angis de 32 mest signifikante bitene
|
|
\end{itemize}
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
\begin{frame}[fragile]%[allowframebreaks]
|
|
\frametitle{DNS}
|
|
\framesubtitle{\texttt{A6}}
|
|
%\pause
|
|
\begin{itemize}%[<+->]
|
|
\item Et tenkt eksempel med \texttt{A6}:
|
|
\item
|
|
\begin{verbatim}
|
|
$ORIGIN fig.ol.no.
|
|
svabu IN A6 64 ::4 ext-servere.ip6
|
|
ext-servere.ip6 IN A6 48 0:0:0:1:: fig.ip6.uninett.no.
|
|
|
|
$ORIGIN ip6.uninett.no.
|
|
fig IN A6 32 0:0:1100:: uninett
|
|
uninett IN A6 0 2001:700::
|
|
\end{verbatim}
|
|
\item Vi får bygd opp følgende adressekjede:
|
|
\begin{itemize}%[<+->]
|
|
\item \texttt{::4}\hfill\texttt{svabu.fig.ol.no.}
|
|
\item \texttt{0:0:0:1::}\hfill\texttt{ext-servere.ip6.fig.ol.no.}
|
|
\item \texttt{0:0:1100::}\hfill\texttt{fig.ip6.uninett.no.}
|
|
\item \texttt{2001:700::}\hfill\texttt{uninett.ip6.uninett.no.}
|
|
\end{itemize}
|
|
\item Bitvis-\texttt{OR} gir den fullstendige adressa \texttt{2001:700:1100:1::4}
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
\part{ICMPv6}
|
|
|
|
\begin{frame}
|
|
\partpage
|
|
\end{frame}
|
|
|
|
\section*{Oversikt over del~7: ICMPv6}
|
|
\begin{frame}[allowframebreaks]
|
|
\frametitle{Oversikt over del~7: ICMPv6}
|
|
\tableofcontents%[pausesections]
|
|
\end{frame}
|
|
|
|
\section{ICMPv6}
|
|
\begin{frame}%[allowframebreaks]
|
|
\frametitle{ICMPv6}
|
|
\pause
|
|
\begin{itemize}[<+->]
|
|
\item Feilrapportering- og feilsøkingstjeneste for IPv6
|
|
\item Definert: \rfc{4443} og \rfc{4844}
|
|
\item ICMPv6-meldinger inneholder to tall som forteller noe om
|
|
budskapets mening og innhold:
|
|
\begin{itemize}[<+->]
|
|
\item Type: hovednummer
|
|
\item Code: undernummer, settes til 0 når det ikke er definert
|
|
noen undernummer
|
|
\end{itemize}
|
|
\item I tillegg er det felter for sjekksum og andre opplysninger som
|
|
er unike for hver type (og undertype) av meldingene
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
\begin{frame}%[allowframebreaks]
|
|
\frametitle{ICMPv6}
|
|
%\pause
|
|
\begin{itemize}[<+->]
|
|
\item Feilmeldinger:
|
|
\begin{itemize}[<+->]
|
|
\item 1: Destination Unreachable
|
|
\item 2: Packet Too Big
|
|
\item 3: Time Exceeded
|
|
\item 4: Parameter Problem
|
|
\item 100: Private eksperimenter
|
|
\item 101: Private eksperimenter
|
|
\item 127: Reservert for utvidelse av feilmeldingene
|
|
\end{itemize}
|
|
\item Informative meldinger:
|
|
\begin{itemize}[<+->]
|
|
\item 128: Echo request\hfill(ping)
|
|
\item 129: Echo reply\hfill(pong)
|
|
\item 200: Private eksperimenter
|
|
\item 201: Private eksperimenter
|
|
\item 255: Reservert for utvidelse av informative meldinger
|
|
\end{itemize}
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
\section{Multicast Listener Discovery}
|
|
\begin{frame}%[allowframebreaks]
|
|
\frametitle{ICMPv6}
|
|
\framesubtitle{Multicast Listener Discovery}
|
|
%\pause
|
|
\begin{itemize}%[<+->]
|
|
\item Definert: \rfc{2710}
|
|
\item Angir tre nye ICMPv6-meldinger:
|
|
\begin{itemize}%[<+->]
|
|
\item 130: Multicast Listener Query
|
|
\item 131: Multicast Listener Report
|
|
\item 132: Multicast Listener Done
|
|
\end{itemize}
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
\section{Neighbor Discovery}
|
|
\begin{frame}%[allowframebreaks]
|
|
\frametitle{ICMPv6}
|
|
\framesubtitle{Neighbor Discovery}
|
|
\pause
|
|
\begin{itemize}[<+->]
|
|
\item Definert: \rfc{4861}
|
|
\item Angir fem nye ICMPv6-meldinger:
|
|
\begin{itemize}[<+->]
|
|
\item 133: Router Solicitation
|
|
\item 134: Router Advertisement
|
|
\item 135: Neighbor Solicitation
|
|
\item 136: Neighbor Advertisement
|
|
\item 137: Redirect
|
|
\end{itemize}
|
|
\item Sentral ved autokonfigurering av adresser
|
|
\item Brukes for å bekrefte at nodene er oppegående og bestemme
|
|
lag-2-adressene til mottakere
|
|
\item Neighbor Discovery gjennomgås i detalj i foredraget
|
|
for de viderekomne
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
\section{Router Renumbering}
|
|
\begin{frame}%[allowframebreaks]
|
|
\frametitle{ICMPv6}
|
|
\framesubtitle{Router Renumbering}
|
|
%\pause
|
|
\begin{itemize}%[<+->]
|
|
\item Definert: \rfc{2894}
|
|
\item Angir én ny ICMPv6-melding:
|
|
\begin{itemize}%[<+->]
|
|
\item 138: Router Renumbering
|
|
\end{itemize}
|
|
\item \rfc{2894} angir
|
|
følgende undertyper:
|
|
\begin{itemize}%[<+->]
|
|
\item 0: Router Renumbering Command
|
|
\item 1: Router Renumbering Result
|
|
\item 255: Sequence Number Reset
|
|
\end{itemize}
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
\section{Inverse Neighbor Discovery}
|
|
\begin{frame}%[allowframebreaks]
|
|
\frametitle{ICMPv6}
|
|
\framesubtitle{Inverse Neighbor Discovery}
|
|
%\pause
|
|
\begin{itemize}%[<+->]
|
|
\item Definert: \rfc{3122}
|
|
\item Angir to nye ICMPv6-meldinger:
|
|
\begin{itemize}%[<+->]
|
|
\item 141: Inverse Neighbor Discovery Solicitation
|
|
\item 142: Inverse Neighbor Discovery Advertisement
|
|
\end{itemize}
|
|
\item Gjør det mulig for én node å lære IPv6-adressen(e) til en
|
|
annen node i samme VLAN, når man bare vet lag-2-adressa til den
|
|
andre noden
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
\section{Version 2 Multicast Listener Report}
|
|
\begin{frame}%[allowframebreaks]
|
|
\frametitle{ICMPv6}
|
|
\framesubtitle{Version 2 Multicast Listener Report}
|
|
%\pause
|
|
\begin{itemize}%[<+->]
|
|
\item Definert: \rfc{3810}
|
|
\item Angir én ny ICMPv6-melding:
|
|
\begin{itemize}%[<+->]
|
|
\item 143: Version 2 Multicast Listener Report
|
|
\end{itemize}
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
\section{Mobile IPv6}
|
|
\begin{frame}%[allowframebreaks]
|
|
\frametitle{ICMPv6}
|
|
\framesubtitle{Mobile IPv6}
|
|
%\pause
|
|
\begin{itemize}%[<+->]
|
|
\item Definert: \rfc{6275}
|
|
\item Angir fire nye ICMPv6-meldinger:
|
|
\begin{itemize}%[<+->]
|
|
\item 144: Home Agent Address Discovery Request
|
|
\item 145: Home Agent Address Discovery Reply
|
|
\item 146: Mobile Prefix Solicitation
|
|
\item 147: Mobile Prefix Advertisement
|
|
\end{itemize}
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
\section{SEcure Neighbor Discovery (SEND)}
|
|
\begin{frame}%[allowframebreaks]
|
|
\frametitle{ICMPv6}
|
|
\framesubtitle{SEcure Neighbor Discovery (SEND)}
|
|
%\pause
|
|
\begin{itemize}%[<+->]
|
|
\item Definert: \rfc{3971}
|
|
\item Angir to nye ICMPv6-meldinger:
|
|
\begin{itemize}%[<+->]
|
|
\item 148: Certification Path Solicitation
|
|
\item 149: Certification Path Advertisement
|
|
\end{itemize}
|
|
\item Med SEND unngås DoS-problemene til Neighbor Discovery
|
|
\item Routerne deler ut kryptografisk genererte adresser \rfc{3972}
|
|
\item Dette krever sertifikatstruktur (RPKI, \rfc{6494}) i routere og i klienter
|
|
\item Ikke implementert i Cisco IOS 12.2(55)SE for Catalyst 3560G
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
\section{Multicast Router Discovery}
|
|
\begin{frame}%[allowframebreaks]
|
|
\frametitle{ICMPv6}
|
|
\framesubtitle{Multicast Router Discovery}
|
|
%\pause
|
|
\begin{itemize}%[<+->]
|
|
\item Definert: \rfc{4286}
|
|
\item Angir tre nye ICMPv6-meldinger:
|
|
\begin{itemize}%[<+->]
|
|
\item 151: Multicast Router Advertisement
|
|
\item 152: Multicast Router Solicitation
|
|
\item 153: Multicast Router Termination
|
|
\end{itemize}
|
|
\item Catalyst 3560G har ikke støtte for annet enn IPv4-multicast
|
|
\item Ved FSI har vi ikke fått testet IPv6-multicast
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
\section{FMIPv6}
|
|
\begin{frame}%[allowframebreaks]
|
|
\frametitle{ICMPv6}
|
|
\framesubtitle{FMIPv6}
|
|
%\pause
|
|
\begin{itemize}%[<+->]
|
|
\item Definert: \rfc{5568}
|
|
\item Angir én ny ICMPv6-melding:
|
|
\begin{itemize}%[<+->]
|
|
\item 154: FMIPv6, Fast handovers, Mobile IPv6
|
|
\end{itemize}
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
\section{RPL Control Message}
|
|
\begin{frame}%[allowframebreaks]
|
|
\frametitle{ICMPv6}
|
|
\framesubtitle{RPL Control Message}
|
|
%\pause
|
|
\begin{itemize}%[<+->]
|
|
\item Definert: \rfc{6550}
|
|
\item Angir én ny ICMPv6-melding:
|
|
\begin{itemize}%[<+->]
|
|
\item 155: RPL Control Message
|
|
\end{itemize}
|
|
\item IPv6 Routing Protocol for Low-Power and Lossy Networks
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
\section{ILNPv6 Locator Update Message}
|
|
\begin{frame}%[allowframebreaks]
|
|
\frametitle{ICMPv6}
|
|
\framesubtitle{ILNPv6 Locator Update Message}
|
|
%\pause
|
|
\begin{itemize}%[<+->]
|
|
\item Definert: \rfc{6743}
|
|
\item Angir én ny ICMPv6-melding:
|
|
\begin{itemize}%[<+->]
|
|
\item 156: ILNPv6 Locator Update Message
|
|
\end{itemize}
|
|
\item Identifier-Locator Network Protocol
|
|
\item En eksperimentell måte å håndtere digitale nomader
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
\section{Duplicate Address}
|
|
\begin{frame}%[allowframebreaks]
|
|
\frametitle{ICMPv6}
|
|
\framesubtitle{Duplicate Address}
|
|
%\pause
|
|
\begin{itemize}%[<+->]
|
|
\item Definert: \rfc{6775}
|
|
\item Angir to nye ICMPv6-meldinger:
|
|
\begin{itemize}%[<+->]
|
|
\item 157: Duplicate Address Request
|
|
\item 158: Duplicate Address Confirmation
|
|
\end{itemize}
|
|
\item Neighbor Discovery Optimization for IPv6 over Low-Power
|
|
Wireless Personal Area Networks (6LoWPANs)
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
\part{Neighbor Discovery}
|
|
|
|
\begin{frame}
|
|
\partpage
|
|
\end{frame}
|
|
|
|
\section*{Oversikt over del~8: Neighbor Discovery}
|
|
\begin{frame}[allowframebreaks]
|
|
\frametitle{Oversikt over del~8: Neighbor Discovery}
|
|
\tableofcontents%[pausesections]
|
|
\end{frame}
|
|
|
|
\begin{frame}%[allowframebreaks]
|
|
\frametitle{Neighbor Discovery}
|
|
\pause
|
|
\begin{itemize}[<+->]
|
|
\item Definert: \rfc{4861}
|
|
\item Angir fem nye ICMPv6-meldinger:
|
|
\begin{itemize}[<+->]
|
|
\item 133: Router Solicitation
|
|
\item 134: Router Advertisement
|
|
\item 135: Neighbor Solicitation
|
|
\item 136: Neighbor Advertisement
|
|
\item 137: Redirect
|
|
\end{itemize}
|
|
\item Sentral ved autokonfigurering av adresser
|
|
\item Brukes for å bekrefte at nodene er oppegående og bestemme
|
|
lag-2-adressene til mottakere
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
\section{Router Solicitation}
|
|
\begin{frame}[fragile]%[allowframebreaks]
|
|
\frametitle{Neighbor Discovery}
|
|
\framesubtitle{Router Solititation}
|
|
\pause
|
|
\begin{Verbatim}[fontsize=\tiny]
|
|
Internet Control Message Protocol v6
|
|
Type: Router Solicitation (133)
|
|
Code: 0
|
|
Checksum: 0xc065 [correct]
|
|
Reserved: 00000000
|
|
ICMPv6 Option (Source link-layer address : 00:21:70:73:68:6e)
|
|
Type: Source link-layer address (1)
|
|
Length: 1 (8 bytes)
|
|
Link-layer address: Dell_73:68:6e (00:21:70:73:68:6e)
|
|
\end{Verbatim}
|
|
\pause
|
|
\begin{itemize}[<+->]
|
|
\item Bla, bla, bla
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
\section{Router Advertisement}
|
|
\begin{frame}[fragile]%[allowframebreaks]
|
|
\frametitle{Neighbor Discovery}
|
|
\framesubtitle{Router Advertisement}
|
|
\pause
|
|
\begin{Verbatim}[fontsize=\tiny]
|
|
Internet Control Message Protocol v6
|
|
Type: Router Advertisement (134)
|
|
Code: 0
|
|
Checksum: 0xfa8c [correct]
|
|
Cur hop limit: 64
|
|
Flags: 0x48
|
|
0... .... = Managed address configuration: Not set
|
|
.1.. .... = Other configuration: Set
|
|
..0. .... = Home Agent: Not set
|
|
...0 1... = Prf (Default Router Preference): High (1)
|
|
.... .0.. = Proxy: Not set
|
|
.... ..0. = Reserved: 0
|
|
Router lifetime (s): 1800
|
|
Reachable time (ms): 0
|
|
Retrans timer (ms): 0
|
|
ICMPv6 Option (Source link-layer address : 00:17:e0:77:14:57)
|
|
Type: Source link-layer address (1)
|
|
Length: 1 (8 bytes)
|
|
Link-layer address: Cisco_77:14:57 (00:17:e0:77:14:57)
|
|
ICMPv6 Option (MTU : 1500)
|
|
Type: MTU (5)
|
|
Length: 1 (8 bytes)
|
|
Reserved
|
|
MTU: 1500
|
|
\end{Verbatim}
|
|
\pause
|
|
\begin{itemize}[<+->]
|
|
\item Bla, bla, bla
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
\begin{frame}[fragile]%[allowframebreaks]
|
|
\frametitle{Neighbor Discovery}
|
|
\framesubtitle{Router Advertisement}
|
|
\pause
|
|
\begin{Verbatim}[fontsize=\tiny]
|
|
ICMPv6 Option (Prefix information : 2001:700:1100:3::/64)
|
|
Type: Prefix information (3)
|
|
Length: 4 (32 bytes)
|
|
Prefix Length: 64
|
|
Flag: 0xc0
|
|
1... .... = On-link flag(L): Set
|
|
.1.. .... = Autonomous address-configuration flag(A): Set
|
|
..0. .... = Router address flag(R): Not set
|
|
...0 0000 = Reserved: 0
|
|
Valid Lifetime: 2592000
|
|
Preferred Lifetime: 604800
|
|
Reserved
|
|
Prefix: it.ip6.fig.ol.no (2001:700:1100:3::)
|
|
\end{Verbatim}
|
|
\pause
|
|
\begin{itemize}[<+->]
|
|
\item Bla, bla, bla
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
\section{Neighbor Solicitation}
|
|
\begin{frame}%[allowframebreaks]
|
|
\frametitle{Neighbor Discovery}
|
|
\framesubtitle{Neighbor Solititation}
|
|
\pause
|
|
\begin{itemize}[<+->]
|
|
\item Bla, bla, bla
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
\section{Neighbor Solicitation}
|
|
\begin{frame}%[allowframebreaks]
|
|
\frametitle{Neighbor Discovery}
|
|
\framesubtitle{Neighbor Solititation}
|
|
\pause
|
|
\begin{itemize}[<+->]
|
|
\item Bla, bla, bla
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
\section{Redirect}
|
|
\begin{frame}%[allowframebreaks]
|
|
\frametitle{Neighbor Discovery}
|
|
\framesubtitle{Redirect}
|
|
\pause
|
|
\begin{itemize}[<+->]
|
|
\item Bla, bla, bla
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
\part{DHCPv6}
|
|
|
|
\begin{frame}
|
|
\partpage
|
|
\end{frame}
|
|
|
|
\section*{Oversikt over del~9: DHCPv6}
|
|
\begin{frame}[allowframebreaks]
|
|
\frametitle{Oversikt over del~9: DHCPv6}
|
|
\tableofcontents%[pausesections]
|
|
\end{frame}
|
|
|
|
\section{DHCPv6}
|
|
\begin{frame}%[allowframebreaks]
|
|
\frametitle{DHCPv6}
|
|
\pause
|
|
\begin{itemize}[<+->]
|
|
\item DHCPv6 er definert i \rfc{3315} med oppdateringer fra
|
|
\rfc{4361}, \rfc{5494}, \rfc{6221}, \rfc{6422} og \rfc{6644}
|
|
\item Kommunikasjonen foregår først med multicast og UDP, senere
|
|
unicast og UDP
|
|
\item Klientene bruker port 546 og serverne/relay bruker 547
|
|
\item Klientene bruker sin egen link-local-adresse som avsender og
|
|
multicast-adressa \texttt{FF02::1:2} som mottaker
|
|
\item Serverne svarer med sin link-local-adresser som avsender og
|
|
klientens link-local-adresse som mottaker
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
% Husk å ta bort allowframebreaks og dele teksten inn i enkeltframes, for underpunktene forsvinner i foredrags-filene. :-O
|
|
\section{Meldinger}
|
|
\begin{frame}[allowframebreaks]
|
|
\frametitle{DHCPv6}
|
|
\framesubtitle{Meldinger}
|
|
%\pause
|
|
\begin{itemize}%[<+->]
|
|
\item Solicit
|
|
\begin{itemize}%[<+->]
|
|
\item Fra klient til server/relay
|
|
\end{itemize}
|
|
\item Advertise
|
|
\begin{itemize}%[<+->]
|
|
\item Fra server/relay til klient
|
|
\end{itemize}
|
|
\item Request
|
|
\begin{itemize}%[<+->]
|
|
\item Fra klient til spesifikk server
|
|
\end{itemize}
|
|
\item Confirm
|
|
\begin{itemize}%[<+->]
|
|
\item Fra server/relay til klient
|
|
\end{itemize}
|
|
\item Renew
|
|
\begin{itemize}%[<+->]
|
|
\item Fra klient til server/relay
|
|
\end{itemize}
|
|
\item Rebind
|
|
\begin{itemize}%[<+->]
|
|
\item Fra klient til server/relay
|
|
\end{itemize}
|
|
\framebreak
|
|
\item Reply
|
|
\begin{itemize}%[<+->]
|
|
\item Fra server til klient
|
|
\end{itemize}
|
|
\item Release
|
|
\begin{itemize}%[<+->]
|
|
\item Fra klient til server/relay
|
|
\end{itemize}
|
|
\item Decline
|
|
\begin{itemize}%[<+->]
|
|
\item Fra klient til server/relay
|
|
\end{itemize}
|
|
\item Reconfigure
|
|
\begin{itemize}%[<+->]
|
|
\item Fra server til klient
|
|
\end{itemize}
|
|
\item Information-request
|
|
\begin{itemize}%[<+->]
|
|
\item Fra klient til server/relay
|
|
\end{itemize}
|
|
\item Relay-forward
|
|
\begin{itemize}%[<+->]
|
|
\item Fra relay til relay/server
|
|
\end{itemize}
|
|
\framebreak
|
|
\item Relay-reply
|
|
\begin{itemize}%[<+->]
|
|
\item Fra server/relay til relay
|
|
\end{itemize}
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
\section{DHCP Unique Identifier}
|
|
\begin{frame}%[allowframebreaks]
|
|
\frametitle{DHCPv6}
|
|
\framesubtitle{DHCP Unique Identifier, DUID}
|
|
\pause
|
|
\begin{itemize}[<+->]
|
|
\item Klientene identifiseres med DHCP Unique Identifier, DUID, som
|
|
har variabel lengde og format
|
|
\item Klientene kan ha flere nettverksgrensesnitt
|
|
\item Hvert grensesnitt har i tillegg sin Identity Association
|
|
Identifier, IAID, lengde 32 bit
|
|
\item Klientene oppgir aktuell DUID og IAID i forespørslene
|
|
\item DHCPv6-serverne har, og oppgir, sine egne DUID og IAID i
|
|
svarene
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
\begin{frame}%[allowframebreaks]
|
|
\frametitle{DHCPv6}
|
|
\framesubtitle{DHCP Unique Identifier, DUID}
|
|
\pause
|
|
\begin{itemize}[<+->]
|
|
\item DUID finnes i tre varianter:
|
|
\begin{itemize}[<+->]
|
|
\item Type 1: Linklagsadresse med tidspunkt for generering,
|
|
\texttt{DUID-LLT}
|
|
\item Type 2: Unik identifikator basert på Enterprise-nummer
|
|
utdelt av IANA
|
|
\item Type 3: Linklagsadresse, \texttt{DUID-LL}
|
|
\end{itemize}
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
\begin{frame}%[allowframebreaks]
|
|
\frametitle{DHCPv6}
|
|
\framesubtitle{DHCP Unique Identifier, DUID}
|
|
\pause
|
|
\begin{itemize}[<+->]
|
|
\item Type 1 kan se slik ut:\\ \texttt{\color{red}00 01
|
|
\color{violet}00 01 \color{brown}13 10 43 9B \color{black}00 26
|
|
18 F2 72 40}
|
|
\begin{itemize}[<+->]
|
|
\item \texttt{\color{red}00 01} angir at dette er DUID type 1.
|
|
\item \texttt{\color{violet}00 01} angir at det kommer en
|
|
MAC-48-adresse til slutt
|
|
\item \texttt{\color{brown}13 10 43 9B} angir klokkeslettet målt i
|
|
sekunder siden 1.~januar 2000 UTC
|
|
\begin{itemize}[<+->]
|
|
\item I dette tilfellet: \texttt{0x1310439B}~s, 319832987~s,
|
|
10.1351038909~år etter 1.~januar 2000 UTC, altså 18.~februar
|
|
2010, kl.~18:29:47 UTC
|
|
\end{itemize}
|
|
\item \texttt{00 26 18 F2 72 40} er MAC-48-adressa for systemet
|
|
som dette eksempelet er hentet fra
|
|
\end{itemize}
|
|
\item Type 3 kan se slik ut:\\ \texttt{\color{red}00 03
|
|
\color{violet}00 01 \color{black}00 26 18 F2 72 40}
|
|
\begin{itemize}[<+->]
|
|
\item \texttt{\color{red}00 03} angir at dette er DUID type 3.
|
|
\item \texttt{\color{violet}00 01} angir at det kommer en
|
|
MAC-48-adresse til slutt
|
|
\item \texttt{00 26 18 F2 72 40} er MAC-48-adressa for systemet
|
|
som dette eksempelet er hentet fra
|
|
\end{itemize}
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
\begin{frame}%[allowframebreaks]
|
|
\frametitle{DHCPv6}
|
|
\framesubtitle{DHCP Unique Identifier, DUID}
|
|
\pause
|
|
\begin{itemize}[<+->]
|
|
\item Type 1 er vanlig i Windows, og lagres i \texttt{Dhcpv6DUID} i
|
|
\texttt{HKEY\_LOCAL\_MACHINE\Textbackslash SYSTEM\Textbackslash
|
|
CurrentControlSet\Textbackslash services\Textbackslash
|
|
TCPIP6\Textbackslash Parameters}
|
|
\item Type 3 er enklere og mer forutsigbart, og det beste valget for
|
|
statisk tildeling av IPv6-adresse med tanke på reinstallasjon av
|
|
OS
|
|
\item Jeg har ikke funnet noen måte å tvinge en bestemt DUID-type i
|
|
Windows, annet enn å sette \texttt{Dhcpv6DUID} manuelt eller
|
|
gjennom skript, og naturlig nok restarte Windows etterpå
|
|
\item \href{http://klub.com.pl/dhcpv6/}{Dibbler} og Unix-systemer er
|
|
tradisjonelt langt snillere, og lar oss angi i konfigurasjonen de
|
|
gangene vi ønsker \texttt{DUID-LL} istedet for \texttt{DUID-LLT}
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
\part{Avansert multicast}
|
|
|
|
\begin{frame}
|
|
\partpage
|
|
\end{frame}
|
|
|
|
\section*{Oversikt over del~10: Avansert multicast}
|
|
\begin{frame}[allowframebreaks]
|
|
\frametitle{Oversikt over del~10: Avansert multicast}
|
|
\tableofcontents%[pausesections]
|
|
\end{frame}
|
|
|
|
\section{Multicastflaggene}
|
|
\begin{frame}%[allowframebreaks]
|
|
\frametitle{Avansert multicast}
|
|
\framesubtitle{Multicastflaggene}
|
|
\pause
|
|
\begin{itemize}[<+->]
|
|
\item Bla, bla, bla
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
\section{Når \texttt{T} er satt til \texttt{1}}
|
|
\begin{frame}%[allowframebreaks]
|
|
\frametitle{Avansert multicast}
|
|
\framesubtitle{Når \texttt{T} er satt til \texttt{1}}
|
|
\pause
|
|
\begin{itemize}[<+->]
|
|
\item Bla, bla, bla
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
\section{Når \texttt{PT} er satt til \texttt{11}}
|
|
\begin{frame}%[allowframebreaks]
|
|
\frametitle{Avansert multicast}
|
|
\framesubtitle{Når \texttt{PT} er satt til \texttt{11}}
|
|
\pause
|
|
\begin{itemize}[<+->]
|
|
\item Bla, bla, bla
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
\section{Når \texttt{RPT} er satt til \texttt{111}}
|
|
\begin{frame}%[allowframebreaks]
|
|
\frametitle{Avansert multicast}
|
|
\framesubtitle{Når \texttt{RPT} er satt til \texttt{111}}
|
|
\pause
|
|
\begin{itemize}[<+->]
|
|
\item Bla, bla, bla
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
\part{Konfigurasjon av IPv6}
|
|
|
|
\begin{frame}
|
|
\partpage
|
|
\end{frame}
|
|
|
|
\section*{Oversikt over del~11: Konfigurasjon av IPv6}
|
|
\begin{frame}[allowframebreaks]
|
|
\frametitle{Oversikt over del~11: Konfigurasjon av IPv6}
|
|
\tableofcontents%[pausesections]
|
|
\end{frame}
|
|
|
|
\section{Cisco IOS}
|
|
\subsection{IPv6-routing}
|
|
\begin{frame}%[allowframebreaks]
|
|
\frametitle{Konfigurasjon av IPv6}
|
|
\framesubtitle{Cisco IOS: IPv6-routing}
|
|
\pause
|
|
\begin{enumerate}[<+->]
|
|
\item \texttt{configure terminal}
|
|
\item \alert{\texttt{sdm prefer dual-ipv4-and-ipv6 default}}\hfill(Rekonfigurere \href{http://en.wikipedia.org/wiki/Content-addressable_memory}{TCAM})
|
|
\item \texttt{end}
|
|
\item \texttt{reload}
|
|
\item \texttt{configure terminal}
|
|
\item \texttt{interface \textit{interface-id}}
|
|
\item \texttt{no switchport}\hfill(Aktuelt for routergrensesnitt)
|
|
\item \alert{\texttt{ipv6 address \textit{ipv6-address}}}
|
|
\item \texttt{ipv6 nd ra suppress}\hfill(Aktuelt for routergrensesnitt)
|
|
\item \texttt{exit}
|
|
\item \alert{\texttt{ip routing}}\hfill(Nødvendig for IP-routing i det hele tatt)
|
|
\item \alert{\texttt{ipv6 unicast-routing}}
|
|
\item \texttt{no ipv6 source-route}
|
|
\item \texttt{end}
|
|
\end{enumerate}
|
|
\end{frame}
|
|
|
|
\begin{frame}%[allowframebreaks]
|
|
\frametitle{Konfigurasjon av IPv6}
|
|
\framesubtitle{Cisco IOS: IPv6-routing}
|
|
\begin{enumerate}[<+->]
|
|
\item \alert{\texttt{interface GigabitEthernet0/49}}
|
|
\item \texttt{description Linknett mellom FiG og Uninett/HiG}
|
|
\item \alert{\texttt{no switchport}}
|
|
\item \texttt{ip address 128.39.46.10 255.255.255.252}
|
|
\item \texttt{ip access-group InetIPv4Inn in}
|
|
\item \texttt{ip access-group InetIPv4Ut out}
|
|
\item \texttt{ip pim sparse-mode}
|
|
\item \texttt{ip igmp version 3}
|
|
\item \alert{\texttt{ipv6 address 2001:700:0:11D::2/64}}
|
|
\item \alert{\texttt{ipv6 nd ra suppress}}
|
|
\item \alert{\texttt{ipv6 traffic-filter InetIPv6Inn in}}
|
|
\item \alert{\texttt{ipv6 traffic-filter InetIPv6Ut out}}
|
|
\end{enumerate}
|
|
\end{frame}
|
|
|
|
\subsection{ACL-er}
|
|
\begin{frame}[allowframebreaks]
|
|
\frametitle{Konfigurasjon av IPv6}
|
|
\framesubtitle{Cisco IOS: ACL-er}
|
|
%\pause
|
|
\begin{enumerate}%[<+->]
|
|
\item \texttt{configure terminal}
|
|
\item \texttt{ipv6 access-list \textit{access-list-name}}
|
|
\item \texttt{\textbf{deny}} | \texttt{\textbf{permit}
|
|
\textit{protocol}}
|
|
\{\texttt{\textit{source-ipv6-prefix/prefix-length}} |
|
|
\texttt{\textbf{any}} |
|
|
\texttt{\textbf{host}~\textit{source-ipv6-address}}\}
|
|
[\texttt{\textit{operator~port-number}}]
|
|
\{\texttt{\textit{destination-ipv6-prefix/prefix-length}} |
|
|
\texttt{\textbf{any}} |
|
|
\texttt{\textbf{host}~\textit{destination-ipv6-address}}\}
|
|
[\texttt{\textit{operator~port-number}}]
|
|
[\texttt{\textbf{dest-option}}]
|
|
[\texttt{\textbf{dest-option-type}~\textit{value}}]
|
|
[\texttt{\textbf{dscp}~\textit{value}}]
|
|
[\texttt{\textbf{flow-label}~\textit{value}}]
|
|
[\texttt{\textbf{fragments}}]
|
|
[\texttt{\textbf{hbh}}]
|
|
[\texttt{\textbf{log}}]
|
|
[\texttt{\textbf{log-input}}]
|
|
[\texttt{\textbf{mobility}}]
|
|
[\texttt{\textbf{mobility-type}~\textit{value}}]
|
|
[\texttt{\textbf{reflect}~\textit{access-list-name}}]
|
|
[\texttt{\textbf{routing}}]
|
|
[\texttt{\textbf{routing-type}~\textit{value}}]
|
|
[\texttt{\textbf{sequence}~\textit{value}}]
|
|
[\texttt{\textbf{time-range}~\textit{name}}]
|
|
[\texttt{\textbf{undetermined-transport}}]
|
|
\item \texttt{\textbf{deny}} | \texttt{\textbf{permit} tcp}
|
|
\{\texttt{\textit{source-ipv6-prefix/prefix-length}} |
|
|
\texttt{\textbf{any}} |
|
|
\texttt{\textbf{host}~\textit{source-ipv6-address}}\}
|
|
[\texttt{\textit{operator~port-number}}]
|
|
\{\texttt{\textit{destination-ipv6-prefix/prefix-length}} |
|
|
\texttt{\textbf{any}} |
|
|
\texttt{\textbf{host}~\textit{destination-ipv6-address}}\}
|
|
[\texttt{\textit{operator~port-number}}]
|
|
[\texttt{\textbf{ack}}]
|
|
[\texttt{\textbf{dest-option}}]
|
|
[\texttt{\textbf{dest-option-type}~\textit{value}}]
|
|
[\texttt{\textbf{dscp}~\textit{value}}]
|
|
[\texttt{\textbf{established}}]
|
|
[\texttt{\textbf{fin}}]
|
|
[\texttt{\textbf{flow-label}~\textit{value}}]
|
|
[\texttt{\textbf{hbh}}]
|
|
[\texttt{\textbf{log}}]
|
|
[\texttt{\textbf{log-input}}]
|
|
[\texttt{\textbf{mobility}}]
|
|
[\texttt{\textbf{mobility-type}~\textit{value}}]
|
|
[\texttt{\textbf{psh}}]
|
|
[\texttt{\textbf{reflect}~\textit{access-list-name}}]
|
|
[\texttt{\textbf{routing}}]
|
|
[\texttt{\textbf{routing-type}~\textit{value}}]
|
|
[\texttt{\textbf{rst}}]
|
|
[\texttt{\textbf{sequence}~\textit{value}}]
|
|
[\texttt{\textbf{syn}}]
|
|
[\texttt{\textbf{time-range}~\textit{name}}]
|
|
[\texttt{\textbf{urg}}]
|
|
\item \texttt{\textbf{deny}} | \texttt{\textbf{permit} udp}
|
|
\{\texttt{\textit{source-ipv6-prefix/prefix-length}} |
|
|
\texttt{\textbf{any}} |
|
|
\texttt{\textbf{host}~\textit{source-ipv6-address}}\}
|
|
[\texttt{\textit{operator~port-number}}]
|
|
\{\texttt{\textit{destination-ipv6-prefix/prefix-length}} |
|
|
\texttt{\textbf{any}} |
|
|
\texttt{\textbf{host}~\textit{destination-ipv6-address}}\}
|
|
[\texttt{\textit{operator~port-number}}]
|
|
[\texttt{\textbf{dest-option}}]
|
|
[\texttt{\textbf{dest-option-type}~\textit{value}}]
|
|
[\texttt{\textbf{dscp}~\textit{value}}]
|
|
[\texttt{\textbf{flow-label}~\textit{value}}]
|
|
[\texttt{\textbf{hbh}}]
|
|
[\texttt{\textbf{log}}]
|
|
[\texttt{\textbf{log-input}}]
|
|
[\texttt{\textbf{mobility}}]
|
|
[\texttt{\textbf{mobility-type}~\textit{value}}]
|
|
[\texttt{\textbf{reflect}~\textit{access-list-name}}]
|
|
[\texttt{\textbf{routing}}]
|
|
[\texttt{\textbf{routing-type}~\textit{value}}]
|
|
[\texttt{\textbf{sequence}~\textit{value}}]
|
|
[\texttt{\textbf{time-range}~\textit{name}}]
|
|
\item \texttt{\textbf{deny}} | \texttt{\textbf{permit} icmp}
|
|
\{\texttt{\textit{source-ipv6-prefix/prefix-length}} |
|
|
\texttt{\textbf{any}} |
|
|
\texttt{\textbf{host}~\textit{source-ipv6-address}}\}
|
|
\{\texttt{\textit{destination-ipv6-prefix/prefix-length}} |
|
|
\texttt{\textbf{any}} |
|
|
\texttt{\textbf{host}~\textit{destination-ipv6-address}}\}
|
|
[\{\texttt{\textit{icmp-type}} [\texttt{\textit{icmp-code}}]\} | \texttt{\textit{icmp-message}}]
|
|
[\texttt{\textbf{dest-option}}]
|
|
[\texttt{\textbf{dest-option-type}~\textit{value}}]
|
|
[\texttt{\textbf{dscp}~\textit{value}}]
|
|
[\texttt{\textbf{flow-label}~\textit{value}}]
|
|
[\texttt{\textbf{log}}]
|
|
[\texttt{\textbf{log-input}}]
|
|
[\texttt{\textbf{mobility}}]
|
|
[\texttt{\textbf{mobility-type}~\textit{value}}]
|
|
[\texttt{\textbf{reflect}~\textit{access-list-name}}]
|
|
[\texttt{\textbf{routing}}]
|
|
[\texttt{\textbf{routing-type}~\textit{value}}]
|
|
[\texttt{\textbf{sequence}~\textit{value}}]
|
|
[\texttt{\textbf{time-range}~\textit{name}}]
|
|
\item \texttt{\textbf{evaluate} \textit{reflexive-access-list-name}}
|
|
[\texttt{\textbf{sequence}~\textit{value}}]
|
|
\item \texttt{\textbf{remark} \textit{comment}}
|
|
\item \texttt{exit}\\
|
|
Husk:\\
|
|
\texttt{\textit{operator}} $\in$ \{\texttt{\textbf{gt}} |
|
|
\texttt{\textbf{lt}} | \texttt{\textbf{neq}} |
|
|
\texttt{\textbf{eq}} | \texttt{\textbf{range}}\}\\
|
|
\texttt{\textbf{reflect}} er bare gyldig for \texttt{\textbf{permit}}-regler
|
|
\framebreak
|
|
\item \texttt{interface \textit{interface-id}}
|
|
\item \texttt{\textbf{ipv6 traffic-filter} \textit{access-list-name} \{\textbf{in} | \textbf{out}\}}
|
|
\item \texttt{end}
|
|
\end{enumerate}
|
|
\framebreak
|
|
\begin{itemize}%[<+->]
|
|
\item Alle IPv6-ACL-er har følgende 5 regler innebygget
|
|
(eng.~implicit) på slutten:
|
|
\begin{enumerate}%[<+->]
|
|
\item \texttt{\textbf{permit} icmp \textbf{any} \textbf{any} nd-na}
|
|
\item \texttt{\textbf{permit} icmp \textbf{any} \textbf{any} nd-ns}
|
|
\item \texttt{\textbf{permit} icmp \textbf{any} \textbf{any} router-advertisement}
|
|
\item \texttt{\textbf{permit} icmp \textbf{any} \textbf{any} router-solicitation}
|
|
\item \texttt{\textbf{deny\phantom{it}} ipv6 \textbf{any} \textbf{any}}
|
|
\end{enumerate}
|
|
\item Disse reglene tillater Neighbor Discovery, og blokkerer all
|
|
annen IPv6-trafikk
|
|
\item Dine egne regler kommer \textit{alltid\/} før de 5 reglene
|
|
over, og kanskje må du kopiere de innebygde reglene og gjøre dine
|
|
egne justeringer, for eksempel slå på logging av blokkert trafikk
|
|
\framebreak
|
|
\item Ønsker du logging av blokkert trafikk, men vil samtidig ikke
|
|
blokkere Neighbor Discovery, så må du gjøre slik:
|
|
\begin{enumerate}
|
|
\item \texttt{\textbf{remark} Øvrige regler kommer før denne linja}
|
|
\item \texttt{\textbf{permit} icmp \textbf{any any} nd-na}
|
|
\item \texttt{\textbf{permit} icmp \textbf{any any} nd-ns}
|
|
\item \texttt{\textbf{permit} icmp \textbf{any any} router-advertisement}
|
|
\item \texttt{\textbf{permit} icmp \textbf{any any} router-solicitation}
|
|
\item \texttt{\textbf{deny\phantom{it}} ipv6 \textbf{any any \alert{log}}}
|
|
\item \texttt{\textbf{remark} Her kommer de skjulte, implisitte reglene}
|
|
\item \texttt{\textit{\textbf{permit} icmp \textbf{any} \textbf{any} nd-na}}
|
|
\item \texttt{\textit{\textbf{permit} icmp \textbf{any} \textbf{any} nd-ns}}
|
|
\item \texttt{\textit{\textbf{permit} icmp \textbf{any} \textbf{any} router-advertisement}}
|
|
\item \texttt{\textit{\textbf{permit} icmp \textbf{any} \textbf{any} router-solicitation}}
|
|
\item \texttt{\textit{\textbf{deny\phantom{it}} ipv6 \textbf{any} \textbf{any}}}
|
|
\end{enumerate}
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
\subsection{DHCPv6}
|
|
\begin{frame}%[allowframebreaks]
|
|
\frametitle{Konfigurasjon av IPv6}
|
|
\framesubtitle{Cisco IOS: DHCPv6}
|
|
\pause
|
|
\begin{itemize}[<+->]
|
|
\item \texttt{ipv6 dhcp pool offisiell}
|
|
\begin{itemize}[<+->]
|
|
\item \texttt{dns-server 2001:700:1100:1::3}
|
|
\item \texttt{dns-server 2001:700:1100:1::2}
|
|
\item \texttt{domain-name fig.ol.no}
|
|
\item \texttt{sntp address 2001:700:1100:1::2}
|
|
\item \texttt{sntp address 2001:700:1100:1::3}
|
|
\item \texttt{sntp address 2001:700:1100:1::4}
|
|
\item \texttt{information refresh 0 2}
|
|
\end{itemize}
|
|
\item \texttt{interface Vlan48}
|
|
\begin{itemize}[<+->]
|
|
\item \texttt{ipv6 dhcp server offisiell}
|
|
\end{itemize}
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
\begin{frame}%[allowframebreaks]
|
|
\frametitle{Konfigurasjon av IPv6}
|
|
\framesubtitle{Cisco IOS: DHCPv6}
|
|
%\pause
|
|
\begin{itemize}%[<+->]
|
|
\item \texttt{ipv6 dhcp pool ULA}
|
|
\begin{itemize}%[<+->]
|
|
\item \texttt{dns-server 2001:700:1100:1::3}
|
|
\item \texttt{dns-server 2001:700:1100:1::2}
|
|
\item \texttt{domain-name fig.netlocal}
|
|
\item \texttt{sntp address 2001:700:1100:1::2}
|
|
\item \texttt{sntp address 2001:700:1100:1::3}
|
|
\item \texttt{sntp address 2001:700:1100:1::4}
|
|
\item \texttt{information refresh 0 2}
|
|
\end{itemize}
|
|
\item \texttt{interface Vlan31}
|
|
\begin{itemize}%[<+->]
|
|
\item \texttt{ipv6 dhcp server ULA}
|
|
\end{itemize}
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
\section{OS-konfig}
|
|
\begin{frame}%[allowframebreaks]
|
|
\frametitle{Konfigurasjon av IPv6}
|
|
\framesubtitle{OS-konfig}
|
|
\pause
|
|
\begin{itemize}[<+->]
|
|
\item De fleste moderne operativsystemer har IPv6-støtte
|
|
\item Windows 2000 har en eksperimentell IPv6-protokoll, men mangler
|
|
DNS-oppslag for \texttt{AAAA}
|
|
\item IPv6 må installeres manuelt i Windows XP og Server 2003
|
|
\begin{itemize}[<+->]
|
|
\item DNS-oppslag sendes alltid over \alert{IPv4}
|
|
\end{itemize}
|
|
\item IPv6 er påskrudd i Windows Vista, Server 2008 og nyere versjoner
|
|
\item Linux og *BSD har hatt IPv6-støtte i lang tid
|
|
\item Autokonfig med tilfeldig grensesnittidentifikator er det mest
|
|
vanlige for skrivebordssystemer
|
|
\item Manuell konfigurasjon er mest vanlig for serversystemer
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
\begin{frame}%[allowframebreaks]
|
|
\frametitle{Konfigurasjon av IPv6}
|
|
\framesubtitle{OS-konfig}
|
|
%\pause
|
|
\begin{itemize}[<+->]
|
|
\item Windows: \texttt{netsh interface ipv6 set address\ "\textit{navn-på-grensesnitt}"\ \textit{IPv6-adresse}}
|
|
\begin{itemize}[<+->]
|
|
\item \texttt{netsh interface ipv6 set address\ "Lokal tilkobling"\ 2001:700:1100:8008::1337}
|
|
\end{itemize}
|
|
\item Konfigurasjon gjennom grafisk grensesnitt i «Kontrollpanelet» er også mulig
|
|
\item *BSD: \texttt{ifconfig \textit{navn-på-grensesnitt} inet6 \textit{IPv6-adresse} prefixlen \textit{prefikslengde}}
|
|
\begin{itemize}[<+->]
|
|
\item \texttt{ifconfig em0 inet6 2001:700:1100:8008::1337 prefixlen 64}
|
|
\end{itemize}
|
|
\item Vanligvis lagres slike innstillingene permanent, for eksempel i \texttt{/etc/rc.conf}
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
\part{Noen RFC-er om IPv6}
|
|
|
|
\begin{frame}
|
|
\partpage
|
|
\end{frame}
|
|
|
|
\section*{Oversikt over del~12: Noen RFC-er om IPv6}
|
|
\begin{frame}[allowframebreaks]
|
|
\frametitle{Oversikt over del~12: Noen RFC-er om IPv6}
|
|
\tableofcontents%[pausesections]
|
|
\end{frame}
|
|
|
|
\section{Noen RFC-er om IPv6}
|
|
\begin{frame}%[allowframebreaks]
|
|
\frametitle{Noen RFC-er om IPv6}
|
|
%\pause
|
|
\begin{itemize}%[<+->]
|
|
\item IPv6-spesifikasjon: \rfc{2460}, \rfc{5095}, \rfc{5722},
|
|
\rfc{5871}, \rfc{6437}, \rfc{6564}, \rfc{6935} og \rfc{6946}
|
|
\item ICMPv6: \rfc{4443} og \rfc{4884}
|
|
\item Neighbor Discovery: \rfc{4861}, \rfc{5942} og \rfc{6980}
|
|
\item Krav til IPv6-noder: \rfc{6434}
|
|
\item Path MTU: \rfc{1981}
|
|
\item DHCPv6: \rfc{3315}, \rfc{4361}, \rfc{5494}, \rfc{6221},
|
|
\rfc{6422} og \rfc{6644}
|
|
\item Overføring av IPv6-pakker over Ethernet: \rfc{2464} og
|
|
\rfc{6085}
|
|
\item Adressearkitektur: \rfc{4291}, \rfc{5952} og \rfc{6052}
|
|
\item Unicastadresser: \rfc{3587}
|
|
\item ULA: \rfc{4193}
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
\begin{frame}%[allowframebreaks]
|
|
\frametitle{Noen RFC-er om IPv6}
|
|
%\pause
|
|
\begin{itemize}%[<+->]
|
|
\item Autokonfigurering av adresser: \rfc{4862}
|
|
\item Tilfeldig grensesnittidentifikator: \rfc{4941}
|
|
\item Prefiks-baserte multicastadresser: \rfc{3306}, \rfc{3956} og
|
|
\rfc{4489}
|
|
\item IPsec: \rfc{4301}, \rfc{4302}, \rfc{4303}, \rfc{4304},
|
|
\rfc{4307}, \rfc{4308}, \rfc{4309}, \rfc{4312}, \rfc{4835} og
|
|
\rfc{5996}
|
|
\item For programmerere av nettverksprogrammer: \rfc{4038}
|
|
\item Grunnleggende krav til IPv6-routere hos sluttbrukere (CER): \rfc{7084}
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
\end{document}
|
|
|
|
Local Variables:
|
|
TeX-PDF-mode:t
|
|
End:
|