%Teilweise Erzeugt mit dem LaTeX-Generator: http://latex.sehnot.de

%Schriftgröße, Layout, Papierformat, Art des Dokumentes
\documentclass[10pt,oneside,a4paper]{scrartcl}

%Einstellungen der Seitenränder
\usepackage[left=2cm,right=2cm,top=1.5cm,bottom=1.5cm,includeheadfoot]{geometry}

%neue Rechtschreibung
\usepackage[ngerman]{babel}

%Umlaute ermöglichen
\usepackage[utf8]{inputenc}

%Gesamtseitenzahl
\usepackage{lastpage}

% Kopf- und Fußzeile
\usepackage[automark]{scrpage2}

%Quellcode-Listings
\usepackage{listings}

%Hyperlinks
\usepackage{hyperref}

%Kopfzeile
\ihead{Netzwerktechnik}
\chead{}
\ohead{http://kohnlehome.de/netz/ipv6.pdf}
\setheadsepline{0.5pt}

%Fußzeile
\setfootsepline{0.5pt}
\ifoot{Franz Kohnle}
\cfoot{Seite \thepage\ von  \pageref{LastPage}}
\ofoot{\today}

\pagestyle{scrheadings}

\begin{document}

% Überschrift 
\begin{center}
\LARGE % Schriftgröße
\bfseries % Fettdruck
\sffamily % Serifenlose Schrift
IPv6
\end{center}


\section{Anzahl}
Es gibt $2^{128}$ verschiedene Adressen. Das entspricht  $10^{17}$ Adressen pro $mm^{2}$ Erdoberfläche.
\section{Adressnotation}
\begin{itemize}
\item hexadezimal, 8 Blöcke: \texttt{0011:2233:4455:6677:8899:AABB:CCDD:EEFF /64}
\item führende Nullen innerhalb eines Blocks können weggelassen werden
\item zusammenhängende Blöcke aus Nullen (0000) können durch :: ersetzt werden
\item URL-Notation: \texttt{http://[1234::5]:80}
\item Prefix Length (statt Subnetmaske): nur Slash-Schreibweise, meist \texttt{/64}
\end{itemize}

\section{Bestandteile einer Global-Unicast-Adresse}
\begin{verbatim}
 <---------------------- 128 Bit ----------------------->
+----------------+--------+------------------------------+
| global-routing | subnet |           interface          |
|    -prefix     |  -id   |             -id              |
+----------------+--------+------------------------------+
                           <---------- 64 Bit ---------->
\end{verbatim}

\section{Adressbereiche}
\renewcommand{\arraystretch}{1.2}
\begin{tabular}{l | l | r}
Name & Bereich & vgl. IPv4\\ \hline\hline
default route & \texttt{::/0} & \texttt{0.0.0.0 /0}\\
unspecified address & \texttt{::/128} & \texttt{0.0.0.0}\\
loopback & \texttt{::1 /128} & \texttt{127.0.0.1}\\ \hline

IPv4 mapped & \texttt{::ffff:0:0/96} & - \\ 
IPv4 translated & \texttt{::ffff:0:0:0/96} & - \\ \hline

LLA: link local unicast & \texttt{FE80:: /10} & -\\
ULA: unique local unicast & \texttt{FC00:: /7} & private Adressen\\
GUA: global unicast & \texttt{2000:: /3} & öffentliche Adressen\\ \hline

Teredo tunnel & \texttt{2001::/32} & - \\ 
for documentation & \texttt{2001:db8::/32} & - \\ 
ORCHIDv2 & \texttt{2001:20::/28} & - \\ 
6to4 & \texttt{2002::/16} & - \\ \hline

multicast & \texttt{FF00:: /8} & Broadcast / Multicast\\
all nodes & \texttt{FF02::1} & Broadcast\\
solicited-node multicast & \texttt{FF02::1:FFXX:XXXX} & Broadcast für ARP-Request\\
all routers & \texttt{FF02::2} & -\\
ospf & \texttt{FF02::5}, \texttt{FF02::6} & \texttt{224.0.0.5}, \texttt{224.0.0.6}\\
ripv2 & \texttt{FF02::9} & \texttt{224.0.0.9}\\
eigrp & \texttt{FF02::A} & \texttt{224.0.0.10}\\
\end{tabular}

\newpage
\section{ICMPv6}
\subsection{ICMPv6 Error Messages}
\begin{itemize}
\item Destination Unreachable
\item Packet Too Big
\item Time Exceeded
\item Parameter Problem
\end{itemize}

\subsection{ICMPv6 Informational Messages}
\begin{itemize}
\item Echo Request
\item Echo Reply
\end{itemize}

\subsection{ICMPv6 Informational Messages NDP (Neighbor Discovery Protocol)}
\begin{itemize}
\item RS: Router Solicitation
\item RA: Router Advertisement (regelmäßig und als Antwort auf RS)
\item Neighbor Solicitation (vgl. IPv4 ARP-Request)
\item Neighbor Advertisement (vgl. IPv4 ARP-Reply)
\item Redirect Message
\end{itemize}

\section{Interface-ID}
\begin{itemize}
\item Konfiguration durch Admin
\item Random (Windows)
\item EUI-64
\begin{enumerate}
\item Bsp. MAC = 0123.4567.89AB
\item linke Hälfte der MAC + FFFE + rechte Hälfte der MAC $\Rightarrow$ 0123:45FF:FE67:89AB
\item 7.Bit invertieren $\Rightarrow$ Interface-ID = 0323:45FF:FE67:89AB
\end{enumerate}
\end{itemize}

\section{SLAAC (Stateless Address Autoconfiguration)}
\begin{enumerate}
\item Client schickt Router Solicitation an FF02::2 (alle Router)
\item Router schickt Router Advertisement incl. Global-Prefix zurück an FF02::1 (Subnet Broadcast)
\item Client verwendet Global-Prefix des Routers + eigene Interface-ID
\end{enumerate}

\newpage

\section{DHCPv6}
\subsection*{Flags im RA (Router Advertisement)}
\begin{itemize}
\item M-Flag (Managed Address Configuration): Client soll GUA von Stateful DHCPv6-Server abfragen
\item O-Flag (Other Configuration): Client soll zusätzliche Informationen von DHCPv6-Server abfragen
\end{itemize}

\begin{tabular}[t]{c|c|c|c|c|c|c}
M & O & GUA  & Prefix & Interface-Id & Gateway & DNS, ...  \\ 
Flag & Flag &  Assignment &  &  &  &   \\ \hline\hline

1 & 1 & Stateful DHCPv6 &  vom & vom & vom & vom \\ 
 &  & DHCPv6 only & DHCPv6-Server &  DHCPv6-Server & Router &  DHCPv6-Server\\ \hline

0 & 1 & Stateless DHCPv6 &  vom & von & vom & vom \\ 
 &  & SLAAC with DHCPv6 & Router & SLAAC & Router &  DHCPv6-Server\\ \hline

0 & 0 & Stateless &  vom & von & vom & - \\ 
 &  & SLAAC only & Router & SLAAC & Router &   \\ \hline

%0 & 1 & Stateless DHCPv6  & Prefix, Gateway & DNS, ... \\
% &  & SLAAC with DHCPv6 &  &  \\ \hline

%0 & 0 & Autoconfiguration & Prefix, Gateway & - \\ 
% &  & SLAAC only &  &  \\ \hline



\end{tabular}

\section{DNS}
\begin{itemize}
\item Standard Query A: IPv4
\item Standard Query AAAA: IPv6
\end{itemize}

\end{document}
