{\Huge \insertframetitle}
\vskip.25em
{\Large\insertframesubtitle}
- \vspace{1cm}
+ \vskip.25em
+ %\vspace{1cm}\\
\insertnote}
}
-%\setbeamerfont{note page}{size=\large}
-%\setbeameroption{show notes on second screen=bottom}
+\mode<beamer>{%
+\setbeamerfont{note page}{size=\large}
+\setbeameroption{show notes on second screen=bottom}
+}
\usemintedstyle{friendly}
\usemintedstyle[sourcelist,linux-config]{autumn}
\usetheme[hideothersubsections,left]{Goettingen}
-\definecolor{blau}{RGB}{35, 100, 170}
-\definecolor{hellblau}{RGB}{61, 165, 217}
-\definecolor{gelb}{RGB}{254, 198, 1}
+%\definecolor{hellblau}{RGB}{61, 165, 217}
+\definecolor{kuerzung}{RGB}{254, 198, 1}
\definecolor{orange}{RGB}{234, 155, 23}
\definecolor{dunkelblau}{RGB}{11, 12, 93}
\definecolor{gruen}{RGB}{137, 252, 0}
\definecolor{coolblack}{rgb}{0.0, 0.18, 0.39}
\definecolor{DarkGreen}{rgb}{0.0, 0.6, 0.0}
\definecolor{ao}{rgb}{0.12, 0.3, 0.17}
+\definecolor{realRFC}{rgb}{0.1, 0.1, 0.44}
+\definecolor{witzRFC}{rgb}{0.01, 0.75, 0.24}
+\definecolor{prefix}{rgb}{0.5, 0.5, 0.0}
+\definecolor{IID}{rgb}{0.56, 0.0, 1.0}
+\definecolor{CIDR}{rgb}{0.0, 0.29, 0.29}
\graphicspath{{Bilder/}}
\title[IPv6]{IPv6 unter Linux}
\subtitle{Eine kleine Einführung}
\author[ratten]{\textbf{Bücherratten}}
-\institute{\textbf{Berliner Haecksen Frühstück}}
-\date{01.04.2023}
+\institute{\textbf{AfRA}}
+\date{19.05.2023}
%\titlegraphic{\includegraphics[scale=0.3]{Taube01-Kabel-final.jpg}}
\item{RFCs}
\begin{itemize}
\item{an RFCs gehalten}
- \item{Humorvolle RFCs werden durch \textcolor{RedViolet}{Violett} hervorgehoben}
+ \item{Humorvolle RFCs werden durch \textcolor{witzRFC}{grün} hervorgehoben}
\end{itemize}
\item{in Beispiel-Befehlen: $<$zuersetzen$>$ entsprechend ersetzen}
\end{itemize}
\item{Linuxerin seit Kernel 2.6.24 (2009)}
\item{FreeSoftware Aktivistin}
\item{Zugehörigkeiten zu: Haecksen, LinuxWorks!, BeLUG, FSFE}
- \item{LieblingsDistro: ArchLinux, Fedora}
\end{itemize}
\end{frame}
\end{itemize}
\end{frame}
-\subsection{Die Spielwiese}
+%% \subsubsection{Die Spielwiese}
+%% \begin{frame}
+%% \frametitle{Die Spielwiese}
+%% \framesubtitle{Vorstellung von Brieftaube}
+%% \begin{itemize}
+%% \item{Raspberry Pi Version 4}
+%% \item{Wlan-Accesspoint}
+%% \begin{itemize}
+%% \item{ESSID: Brieftauben-Wlan}
+%% \item{! Ohne Passwort!}
+%% \end{itemize}
+%% \item{ssh-Server}
+%% \begin{itemize}
+%% \item{User: dove}
+%% \item{Passwort: IPoAC}
+%% \end{itemize}
+%% \item{git-Server}
+%% \begin{itemize}
+%% \item{\url{git@[fd00:feed:c0ff:ee00:e65f:1ff:fe46:edc8]:/Vortraege-2023/IPv6}}
+%% \end{itemize}
+%% \item{Doku}
+%% \begin{itemize}
+%% \item{Tuxteam-Repo: \url{http://git.tuxteam.de/gitweb/?p=susannes-git/Ipv6-Vortrag.git;a=tree}}
+%% \item{Bieftauben-Repo: \url{http://[fd00:feed:c0ff:ee00:e65f:1ff:fe46:edc9]/Vortraege-2023/IPv6}}
+%% \end{itemize}
+%% \end{itemize}
+%% \end{frame}
+
+\subsection[IPv6 Vorraussetzungen]{Vorraussetzungen für IPv6}
\begin{frame}
- \frametitle{Die Spielwiese}
- \framesubtitle{Vorstellung von Brieftaube}
- \begin{itemize}
- \item{Raspberry Pi Version 4}
- \item{Wlan-Accesspoint}
- \begin{itemize}
- \item{ESSID: Brieftauben-Wlan}
- \item{! Ohne Passwort!}
- \end{itemize}
- \item{ssh-Server}
- \begin{itemize}
- \item{User: dove}
- \item{Passwort: IPoAC}
- \end{itemize}
- \item{git-Server}
- \begin{itemize}
- \item{\url{git@[fd00:feed:c0ff:ee00:e65f:1ff:fe46:edc8]:/Vortraege-2023/IPv6}}
- \end{itemize}
- \item{Doku}
- \begin{itemize}
- \item{Tuxteam-Repo: \url{http://git.tuxteam.de/gitweb/?p=susannes-git/Ipv6-Vortrag.git;a=tree}}
- \item{Bieftauben-Repo: \url{http://[fd00:feed:c0ff:ee00:e65f:1ff:fe46:edc9]/Vortraege-2023/IPv6}}
- \end{itemize}
- \end{itemize}
+ \frametitle{Voraussetzungen für IPv6}
+ \framesubtitle{Zusammenfassung}
+ \textcolor{realRFC}{RFC 8504} - 2019
+ \begin{itemize}
+ \item{Fähigkeit IPv6-Paket zu empfangen und zu senden}
+ \item{zu gewährleisten ist (MUST):}
+ \item{Präfixerkennung}
+ \item{Multicast}
+ \item{ICMPv6 (ping)}
+ \begin{itemize}
+ \item{Neigbour Unreachable Discovery für alle Pfade zwischen Hosts und Nachbar Nodes}
+ \item{Duplicate Address Dectection}
+ \end{itemize}
+ \begin{itemize}
+ \item{Routererkennung}
+ \begin{itemize}
+ \item{Advertisement und Solicitation}
+ \item{DNS Option in Router-Advertisement}
+ \end{itemize}
+ \end{itemize}
+ \item{Pfad MTU und Größen-Erkennung}
+ \item{StateLessAddressAutoConfiguration}
+ \end{itemize}
\end{frame}
\subsection{IPv6 aktivieren unter Linux}
\end{itemize}
\end{frame}
+\subsection[IPoAC]{IP over Avian Carrier}
+\begin{frame}
+ \frametitle{Tauben und IPv6}
+ \label{IPoAC}
+ \only<|beamer:0>{alternative Transportmöglichkeit: \hyperlink{IPoSN}{\beamergotobutton{IPoSN}}}
+ \center{\includegraphics[scale=0.4]{Taube03.jpg}}
+\end{frame}
+
+\begin{frame}
+ \frametitle{IP over Avian Carrier}
+ \framesubtitle{IP-Transport mittels Brieftauben}
+ \small{
+ \begin{itemize}
+ \item{Zeitliche Spezifizierung}
+ \begin{itemize}
+ \item{erstmal in \textcolor{witzRFC}{RFC 1149} 1990 erwähnt}
+ \item{seit 1999 Quality of Service fähig \textcolor{witzRFC}{(RFC 2549)}}
+ \item{mit \textcolor{witzRFC}{RFC 6214 (2011)} IPv6 für IPoAC spezifiziert}
+ \end{itemize}
+ \vspace{-0.3cm}
+ \item{praktische Umsetzung:}
+ \begin{itemize}
+ \item{IP-Pakete in Hexadezimal auf Papierrollen drucken}
+ \item{Rollen um die Beine des AC(Avian Carriers) legen}
+ \item{Enden des Papieres mit Panzertape befestigen}
+ \item{länge der Beine bestimmt Bandbreite}
+ \item{Empfang: Panzertape entfernen und Papierrolle einscannen}
+ \end{itemize}
+ \vspace{-0.3cm}
+ \item{typische Probleme:}
+ \begin{itemize}
+ \item{sehr instabil Übertragungswege (Wind\-verhältnissen)}
+ \item{Risiko: Infektion mit H5N1 Virus}
+ \item{ausschließlich point-to-point Verbindungen für jeden AC}
+ \item{hohe Verspätungen}
+ \end{itemize}
+ \end{itemize}}
+ \note{\begin{itemize}
+ \item{H5N1 Sicher\-stel\-lung von angemessene Erkennung und Quarantäne Maßnahmen}
+ \item{wenig Durchfluss und niedriger Höhen Service}
+ \end{itemize}}
+\end{frame}
+
\section[Aussehen]{Aussehen von IPv6}
\subsection[Aufbau]{IPv6-Adressaufbau}
\framesubtitle{Ein Rezept in Hexadezimal}
\begin{itemize}
\item{\textcolor{RedOrange}{128 Bit (Binär)}}
- \item{Hexadezimal (0-9 und a-f) - (\textcolor{MidnightBlue}{RFC 5952}: alle Buchstaben kleinschreiben)}
+ \item{Hexadezimal (0-9 und a-f) - (\textcolor{realRFC}{RFC 5952}: alle Buchstaben kleinschreiben)}
\item{8 Blöcke mit je 4 Hexadezimal-Zahlen bilden}
\item{Blöcke durch : trennen}
- \item{\textcolor{olive}{Präfix} und \textcolor{violet}{Interface Identifier} von jeweils 64 Bit bilden}
- \item{Netzgröße als \textcolor{purple}{CIDR} anhängen}
+ \item{\textcolor{prefix}{Präfix} und \textcolor{IID}{Interface Identifier} von jeweils 64 Bit bilden}
+ \item{Netzgröße als \textcolor{CIDR}{CIDR} anhängen}
\end{itemize}
\vspace{-0.3cm}
\begin{examples}
IPv6-Adresse:\\
- \textcolor{olive}{2001:0db8:0000:0000}:\textcolor{violet}{cd71:37fe:e1ab:1ad1}\textcolor{purple}{/64}\\
- \textcolor{olive}{Präfix}:\textcolor{violet}{Interface Identifier}/\textcolor{purple}{CIDR}
+ \textcolor{prefix}{2001:0db8:0000:0000}:\textcolor{IID}{cd71:37fe:e1ab:1ad1}\textcolor{CIDR}{/64}\\
+ \textcolor{prefix}{Präfix}:\textcolor{IID}{Interface Identifier}/\textcolor{CIDR}{CIDR}
\end{examples}
\end{frame}
+\subsection[Abkürzungen]{Abgekürzte IPv6 Adressen}
\begin{frame}
\frametitle{IPv6 Adress-Aufbau}
\framesubtitle{Abkürzungen}
- \textcolor{MidnightBlue}{RFC 5952}
+ \textcolor{realRFC}{RFC 5952}
\begin{itemize}
\item{Führende Nullen im Block weglassen}
\vspace{-0.3cm}
\begin{examples}
- \textcolor{BlueViolet}{2001:}\textcolor{yellow}{0}\textcolor{BlueViolet}{db8:}\textcolor{yellow}{000}\textcolor{BlueViolet}{0:}\textcolor{yellow}{000}\textcolor{BlueViolet}{0:}\textcolor{yellow}{000}\textcolor{BlueViolet}{0:}\textcolor{yellow}{000}\textcolor{BlueViolet}{0:}\textcolor{yellow}{000}\textcolor{BlueViolet}{0:}\textcolor{yellow}{000}\textcolor{BlueViolet}{1}\\
+ \textcolor{BlueViolet}{2001:}\textcolor{kuerzung}{0}\textcolor{BlueViolet}{db8:}\textcolor{kuerzung}{000}\textcolor{BlueViolet}{0:}\textcolor{kuerzung}{000}\textcolor{BlueViolet}{0:}\textcolor{kuerzung}{000}\textcolor{BlueViolet}{0:}\textcolor{kuerzung}{000}\textcolor{BlueViolet}{0:}\textcolor{kuerzung}{000}\textcolor{BlueViolet}{0:}\textcolor{kuerzung}{000}\textcolor{BlueViolet}{1}\\
\textcolor{BlueViolet}{2001:db8:0:0:0:0:0:1}
\end{examples}
\vspace{-0.3cm}
\item{längste Blöcke von Nullen durch :: ersetzen}
\vspace{-0.3cm}
\begin{examples}
- \textcolor{BlueViolet}{2001:db8:}\textcolor{yellow}{0:0:0:0:0}\textcolor{BlueViolet}{:1}\\
+ \textcolor{BlueViolet}{2001:db8:}\textcolor{kuerzung}{0:0:0:0:0}\textcolor{BlueViolet}{:1}\\
\textcolor{BlueViolet}{2001:db8::1}
\end{examples}
\vspace{-0.3cm}
\item{mehrere Blöcke gleich lang, nur ersten von links mit :: ersetzen}
\vspace{-0.2cm}
\begin{examples}
- \textcolor{BlueViolet}{2001:db8:}\textcolor{yellow}{0:0}:\textcolor{BlueViolet}{4ad:}\textcolor{yellow}{0:0}\textcolor{BlueViolet}{:1}\\
- \textcolor{BlueViolet}{2001:db8::4ad:}\textcolor{yellow}{0:0}\textcolor{BlueViolet}{:1}
+ \textcolor{BlueViolet}{2001:db8:}\textcolor{kuerzung}{0:0}:\textcolor{BlueViolet}{4ad:}\textcolor{kuerzung}{0:0}\textcolor{BlueViolet}{:1}\\
+ \textcolor{BlueViolet}{2001:db8::4ad:}\textcolor{kuerzung}{0:0}\textcolor{BlueViolet}{:1}
\end{examples}
\end{itemize}
\end{frame}
+\subsection{Interface Identifier}
+
\begin{frame}
\frametitle{Rätsel-Time}
\framesubtitle{Was glaubt ihr?}
\end{description}
\end{frame}
-\section{Interface Identifier}
-\subsection{EUI 64}
+\subsubsection{EUI 64 und privacy Extention}
\begin{frame}[fragile]
- \frametitle{EUI 64}
+ \frametitle{EUI 64 und privacy Extension}
\framesubtitle{ein Rezept}
\label{EUI}
\begin{columns}[T]
%\vspace{-1cm}
\begin{column}{0.5\textwidth}
- \textcolor{MidnightBlue}{RFC 4291} - 2006
+ EUI 64 \textcolor{realRFC}{RFC 4291} - 2006
\begin{itemize}
- \item{MAC-Adresse}
+ \item{MAC-Adresse und ff:fe mittig einfügen}
\only<|beamer:0>{\hyperlink{MAC}{\beamergotobutton{MAC-Adressen}}}
- \vspace{-0.2cm}
- \begin{examples}
- \textcolor{Maroon}{52:54:00} \textcolor{Emerald}{0f:71:c0}
- \end{examples}
\vspace{-0.3cm}
- \item{ff:fe mittig einfügen}
\end{itemize}
\begin{example}
- IPv6-Adresse: \textcolor{olive}{fe80::}\textcolor{Maroon}{5\textcolor{red}{0}54:00}ff:fe\textcolor{Emerald}{0f:71c0}
+ IPv6-Adresse: \textcolor{prefix}{fe80::}\textcolor{Maroon}{5\textcolor{red}{0}54:00}ff:fe\textcolor{Emerald}{0f:71c0}
\end{example}
\end{column}
\pause
\begin{column}{0.5\textwidth}
- Vorteile der EUI-64-Adresse:
- \begin{itemize}
- \item{Spezifische Werbung je nach verwendeter Hardware}
- \item{Tracking über unbegrenzten Zeitraum}
- \item{jedes Gerät im Internet ist eindeutig identifizierbar}
- \item{...}
- \end{itemize}
+ Privacy Extension \textcolor{realRFC}{RFC 4941} - 2007
+ \begin{itemize}
+ \item{NTP-(Network Time Protocol) Zeitstempel}
+ \item{MAC-Adresse}
+ \end{itemize}
+ daraus MD5-Hash mit 64Bit Länge
\end{column}
- \end{columns}
+ \end{columns}
+ Methoden sind veraltet
+ \note{Zusatzinfos zu Privacy Extension\\
+ \begin{itemize}
+ \item{Die Features:}
+ \begin{itemize}
+ \item{sind temporär}
+ \item{bestehen solange sie genutzt werden}
+ \item{nur für globale Adressen}
+ \end{itemize}
+ \item{Anti-Features:}
+ \begin{itemize}
+ \item{System- und Netzwerkmanagement kann schwieriger sein}
+ \item{Dienste (zB Webseiten) nach außen anbieten}
+ \item{Ende-zu-Ende-Dienste (VoIP, SIP, Messanger) nutzen}
+ \item{\textcolor{red}{Sicherheit von MD5-Summen?}}
+ \end{itemize}
+ \end{itemize}}
\end{frame}
\begin{frame}[fragile]
sysctl -w net.ipv6.conf.all.use_tempaddr=0
sysctl -w net.ipv6.conf.all.addr_gen_mode=0
\end{minted}
- \item{dhcpcd.conf:}
- \begin{minted}{linux-config}
- slaac hwaddr
- \end{minted}
\item{Network-Manager:}
\begin{minted}{bash}
nmcli con modify <ConnectionName> ipv6.addr-gen-mode eui64
\end{itemize}
\end{frame}
-\subsubsection{Privacy Extension}
-\begin{frame}[fragile]
- \frametitle{Privacy-Extension}
- \framesubtitle{ein Bug/Feature Rezept}
- \textcolor{MidnightBlue}{RFC 4941} - 2007
- \begin{itemize}
- \item{NTP-(Network Time Protocol) Zeitstempel}
- \item{MAC-Adresse}
- \end{itemize}
- daraus MD5-Hash mit 64Bit Länge
- \pause
- \begin{itemize}
- \item{Die Features:}
- \begin{itemize}
- \item{sind temporär}
- \item{bestehen solange sie genutzt werden}
- \item{nur für globale Adressen}
- \end{itemize}
- \item{Anti-Features:}
- \begin{itemize}
- \item{System- und Netzwerkmanagement kann schwieriger sein}
- \item{Dienste (zB Webseiten) nach außen anbieten}
- \item{Ende-zu-Ende-Dienste (VoIP, SIP, Messanger) nutzen}
- \item{\textcolor{red}{Sicherheit von MD5-Summen?}}
- \end{itemize}
- \end{itemize}
-\end{frame}
-
\begin{frame}[fragile]
\frametitle{Privacy-Extension}
\framesubtitle{unter Liunx einstellen}
\end{itemize}
\end{frame}
-\subsection{Semantically Opaque Interface Identifiers}
+\subsubsection{Semantically Opaque Interface Identifiers}
\begin{frame}[fragile]
\frametitle{Sematisch undurchsichtige Interface Identifier}
\framesubtitle{Semantically Opaque Interface Identifiers}
\begin{definition}
- \small{\textbf{Semantically Opaque Interface Identifiers} nach \textcolor{MidnightBlue}{RFC 7217} (2014) werden aus Präfix, Interface-Name, Netzwerk\_ID, Duplicate Address Detection Counter und einem geheimen Schlüssel gebildet.}
+ \small{\textbf{Semantically Opaque Interface Identifiers} nach \textcolor{realRFC}{RFC 7217} (2014) werden aus Präfix, Interface-Name, Netzwerk-ID, Duplicate Address Detection Counter und einem geheimen Schlüssel gebildet.}
\end{definition}
\small{
\begin{itemize}
\end{itemize}
\end{itemize}}
\end{frame}
+
\begin{frame}[fragile]
\frametitle{Sematisch undurchsichtige Interface Identifier}
\framesubtitle{Unter Linux einstellen:}
\end{itemize}}
\end{frame}
-\subsection{Temporary Address Extensions}
+\subsubsection{Temporary Address Extensions}
\begin{frame}
\frametitle{Temporary Address Extensions}
\framesubtitle{Der neuste Interface Identifier}
\footnotesize{
\begin{definition}
\vspace{-0.1cm}
- \textbf{Temporary Address Extensions for Stateless Address Auto\-configuration in IPv6} nach \textcolor{MidnightBlue}{RFC 8981} (2021)\\
- Temporäre Interface Identifiers werden nach dem gleichen Algorithmus, wie die se\-man\-tisch undurchsichtigen gebildet. Hier wird die Zeit als Epoch hinzugefügt. Die Adressen sollen nach einer bestimmten Zeit verfallen.
+ \textbf{Temporary Address Extensions for Stateless Address Auto\-configuration in IPv6} nach \textcolor{realRFC}{RFC 8981} (2021)\\
+ Temporäre Interface Identifiers Generierung nach dem gleichen Algorithmus, wie se\-man\-tisch undurchsichtigen. Zeit wird als Epoch hinzugefügt. Die Adressen verfallen nach einer bestimmten Zeit.
\end{definition}}
\vspace{-0.3cm}
\footnotesize{
\item{Vorteil}
\begin{itemize}
\item{für End-Anwender gedacht}
+ \item{soll default Adresse sein}
\item{nicht auf globale Adressen begrenzt}
\item{bevorzugte Adress-Lebenszeit: 1 Tag}
\item{maximaler Gültigkeitszeitraum: 2 Tage}
\item{reverse-DNS Auflösungen werden erschwert}
\end{itemize}
\end{itemize}
- Noch nicht vollständig implementiert. Ausser in OpenBSD (slaacd)}
+ Nicht vollständig in Linux implementiert. In OpenBSD als (slaacd)}
\vspace{0.3cm}
\end{frame}
+\subsection[IPoAC-Adressen]{Interface Identifier bei Brieftauben}
+\begin{frame}
+ \frametitle{IPv6-Adressen bei Brieftauben}
+ \framesubtitle{Interface Identifier}
+ \begin{itemize}
+ \item{EUI-64 und Privacy Extension:}
+ \begin{itemize}
+ \item{jegliche Form von Link-Layer (Sicherungsschicht) fehlt}
+ \item{keine MAC-Adressen}
+ \end{itemize}
+ \item{Flying Adresses:}
+ \begin{itemize}
+ \item{Complex Addressing in IPv6 \textcolor{witzRFC}{RFC 8135} - 2017}
+ \item{nicht näher spezfiziert}
+ \item{benutzten den ICAO Class G Luftraum unterhalb der Wolken und können von unteren Layer Technologien erwartet werden}
+ \item{Verwechlsungsgefahr mit Floating Addresses}
+ \begin{itemize}
+ \item{falls Wasservögel als Avian Carrier eigesetzt werden}
+ \item{Adressen mit Panzertape am Gerät befestigen, dies garantiert KEINE Wasserdichte des Gerätes}
+ \end{itemize}
+ \end{itemize}
+ \item{Semantically Opaque Interface Identifiers und Temporary Address Extensions}
+ \begin{itemize}
+ \item{möglich da MAC-Adressen unabhänig}
+ \end{itemize}
+ \end{itemize}
+\end{frame}
+
\section[Adressen]{unterschiedliche IPv6-Adress-Bereiche}
\subsection{Unicast}
\includegraphics[width=\textwidth]{Unicast.png}
\end{frame}
+\subsubsection{Unicast Adress-Bereiche}
+
+\begin{frame}
+ \frametitle{IPv6 - Unicast-Bereiche}
+ \framesubtitle{Struktur}
+ \begin{columns}[T]
+ %\vspace{-1cm}
+ \begin{column}{0.4\textwidth}
+ \begin{itemize}
+ \item{Zone \%}
+ \item{Host ::1/128}
+ \item{Link-Local fe80::/10}
+ \item{Unique Local fc00::/7}
+ \item{Site-Local veraltet}
+ \item{Global 2000::/3}
+ \end{itemize}
+ \end{column}
+ \begin{column}{0.6\textwidth}
+ \includegraphics[scale=0.15]{strukt.png}
+ \end{column}
+ \end{columns}
+\end{frame}
+
\subsubsection{LinkLocalAdressen}
\begin{frame}
\frametitle{Die Link Lokal Unicast Adresse}
\framesubtitle{IPv6 LLAs oder LLU}
- \textcolor{MidnightBlue}{RFC 4291} - 2006
+ \textcolor{realRFC}{RFC 4291} - 2006\\
+ \\
+ \begin{tabular}{c|c|c}
+ 10 Bits & 54 Bits & 64 Bits \\\hline
+ Präfix & 0 & Interface Indentifier\\\hline
+ \textcolor{prefix}{fe80} & 0 &\textcolor{IID}{fcc1:87ff:fe6a:ead6}\\
+ \end{tabular}\\
\begin{itemize}
\item{für in sich geschlossene lokale Netzwerke (zB: das LAN zu Hause)}
\item{wird immer erstellt, auch ohne Router}
- \item{erkennbar am \textcolor{olive}{Präfix: fe80::/10}}
+ \item{erkennbar am \textcolor{prefix}{Präfix: fe80::/10}}
\item{eindeutige Interface Adressen}
\item{Gültigkeit auf Netzsegment beschränkt}
\item{für automatische Adresskonfiguration}
\item{wird nicht in andere Netze geroutet}
\end{itemize}
- \begin{tabular}{c|c|c}
- 10 Bits & 54 Bits & 64 Bits \\\hline
- Präfix & 0 & Interface Indentifier\\\hline
- \textcolor{olive}{fe80} & 0 &\textcolor{violet}{fcc1:87ff:fe6a:ead6}\\
- \end{tabular}\\
\end{frame}
-\subsubsection{Zonen bei LinkLocalAdress}
\begin{frame}[fragile]
\frametitle{Die Zone}
\framesubtitle{LinkLocalAdress?? In welcher Zone?}
- \textcolor{MidnightBlue}{RFC 4007} - 2005
+ \textcolor{realRFC}{RFC 4007} - 2005
\includegraphics[width=\textwidth]{Zone.png}
\vspace{-0.5cm}
\begin{itemize}
\begin{frame}
\frametitle{Was ist Unique Local?}
- \textcolor{MidnightBlue}{RFC 4193} - 2005\\
- Struktur der Unique Local Address (ULA):
+ \textcolor{realRFC}{RFC 4193} - 2005\\
+ \\
\begin{tabular}{c|c|c|c}
8 Bits & 40 Bits & 16 Bits & 64 Bits \\\hline
Präfix & Globale ID &Subnet ID & Interface Indentifier\\\hline
- \textcolor{olive}{fd0} & 0 & 0 & \textcolor{violet}{fcc1:87ff:fd80:ead6}\\
+ \textcolor{prefix}{fd0} & 0 & 0 & \textcolor{IID}{fcc1:87ff:fd80:ead6}\\
\end{tabular}
\begin{itemize}
\item{für lokale private Netze}
\item{halbwegs global eindeutig}
\item{kann in ein anderes Netz geroutet werden}
\item{müssen nicht registriert werden}
- \item{\textcolor{olive}{Präfix fc00::/7} (global) oder \textcolor{olive}{fd00::/8} (local)}
- \item{aktuell nur \textcolor{olive}{Präfix fd00::/8} vergeben}
+ \item{es gab mehrere Versuche, ULAs zu registrieren (\url{https://ungleich.ch/u/projects/ipv6ula/})}
+ \item{Wird in Dual-Stack nicht bevorzugt benutzt(\textcolor{realRFC}{RFC 6724)}}
+ \item{Diskussion: ob ULAs überhaupt gebraucht werden}
+ \item{\textcolor{prefix}{Präfix fc00::/7} (global) oder \textcolor{prefix}{fd00::/8} (local)}
+ \item{aktuell nur \textcolor{prefix}{Präfix fd00::/8} vergeben}
\end{itemize}
\end{frame}
\item{SHA-1 Wert von 160bit länge aus dem Key errechnen}
\item{die letzten signifikanten 40 Bits als Global ID verwenden}
\end{itemize}
- \item{es gab mehrere Versuche, ULAs zu registrieren (\url{https://ungleich.ch/u/projects/ipv6ula/})}
- \item{Wird in Dual-Stack nicht bevorzugt benutzt(\textcolor{MidnightBlue}{RFC 6724)}}
- \item{Nat66 sehr kompliziert...}
- \item{Diskussion: ob ULAs überhaupt gebraucht werden}
- \item{Site-local-Address sind bereits abgeschafft (\textcolor{MidnightBlue}{RFC 3879} 2004)}
\end{itemize}
\end{frame}
\begin{frame}
\frametitle{Was sind Globale Unicast Adressen?}
- \textcolor{MidnightBlue}{RFC 3587} - 2003 Adressformat\\
- \textcolor{MidnightBlue}{RFC 4291} - 2006\\
+ \textcolor{realRFC}{RFC 3587} - 2003\\
+ \textcolor{realRFC}{RFC 4291} - 2006\\
+ \\
\begin{tabular}{c|c|c}
n Bits & m Bits & 64 Bits \\\hline
Präfix & Subnet ID & Interface Indentifier\\\hline
- \textcolor{olive}{2001} & 1 &\textcolor{violet}{fcc1:87ff:fd80:ead6}\\
+ \textcolor{prefix}{2001} & 1 &\textcolor{IID}{fcc1:87ff:fd80:ead6}\\
\end{tabular}\\
\begin{itemize}
\item{Der Präfix ist nicht genau spezifiziert}
\item{wenn die ersten 3 Bits des Präfix 0 sind ist kein Interface Identifier erforderlich}
- \item{Momentan werden 2000::/3 verteilt:}
+ \item{Momentan werden \textcolor{prefix}{2000::/3} verteilt:}
\item{Adressen werden im Internet geroutet}
\item{sind weltweit erreichbar}
\end{itemize}
\end{frame}
+
\begin{frame}
\frametitle{Was sind Globale Unicast Adressen?}
\framesubtitle{Hierarchische Struktur}
\center{\includegraphics[width=\textwidth]{Hierachie.png}}
\end{frame}
-\begin{frame}
- \frametitle{IPv6 - Unicast-Bereiche}
- \framesubtitle{Struktur}
- \begin{columns}[T]
- %\vspace{-1cm}
- \begin{column}{0.4\textwidth}
- \begin{itemize}
- \item{Zone \%}
- \item{Host ::1/128}
- \item{Link-Local fe80::/10}
- \item{Unique Local fc00::/7}
- \item{Site-Local veraltet}
- \item{Global 2000::/3}
- \end{itemize}
- \end{column}
- \begin{column}{0.6\textwidth}
- \includegraphics[scale=0.15]{strukt.png}
- \end{column}
- \end{columns}
-\end{frame}
-
\subsection{Multicast Adressen}
\begin{frame}
\frametitle{Was sind Multicast Adressen?}
\framesubtitle{Aufbau}
\label{Multicast}
- \textcolor{MidnightBlue}{RFC 4291} - 2006\\
- \textcolor{MidnightBlue}{RFC 7346} - 2014\\
- \textcolor{MidnightBlue}{RFC 3306} - 2002\\
- \textcolor{MidnightBlue}{RFC 3307} - 2002
- \begin{tabular}{c|c|c|c|c|p{1.1cm}|c}
+ \begin{tabular}{rr}
+ \textcolor{realRFC}{RFC 4291} - 2006 & \textcolor{realRFC}{RFC 7346} - 2014\\
+ \textcolor{realRFC}{RFC 3306} - 2002 & \textcolor{realRFC}{RFC 3307} - 2002\\
+ \end{tabular}
+
+ \includegraphics[width=\textwidth]{Multicast.png}
+ \scriptsize{\begin{tabular}{c|c|c|c|c|p{1.1cm}|c}
8 Bit&4 Bit&4 Bit&8 Bit&8 Bit&64 Bit&32 Bits \\\hline
- \textcolor{olive}{Präfix} & \textcolor{Goldenrod}{Flags} & \textcolor{orange}{Scope}& reserved & plen & Network prefix & Group ID\\\hline
- \textcolor{olive}{ff} & \textcolor{Goldenrod}{0} & \textcolor{orange}{0} & 0 & plen & 0 & GroupID \\\hline
- \end{tabular}
- plen=anzahl der Bits im Netzwerk Prefix Feld\\
- network prefix = Prefix des Subnetzes zu dem die Multicast Adresse gehört\\
- Group ID = entweder Zufallszahl bei dynamischen Adressen oder fest von der IANA für bestimmte Services vergeben
+ \textcolor{prefix}{Präfix} & \textcolor{Goldenrod}{Flags} & \textcolor{orange}{Scope}& reserved & plen & Network prefix & Group ID \\\hline
+ \textcolor{prefix}{ff} & \textcolor{Goldenrod}{0} & \textcolor{orange}{0} & 0 & plen & 0 & GroupID \\\hline
+ \end{tabular}}\\
+ \\
+
+ \footnotesize{plen = Anzahl Bits im Netzwerk Prefix Feld\\
+ network prefix = Subnetz-Präfix der Multicast Adresse\\
+ Group ID = von IANA für bestimmte Services vergeben oder Zufallszahl}
\only<|beamer:0>{\hyperlink{Multicast Scope}{\beamergotobutton{Multicast Group ID}}}
- \end{frame}
-\begin{frame}
- \frametitle{Was sind Multicast Adressen?}
- \framesubtitle{good to know}
- \includegraphics[width=\textwidth]{Multicast.png}
- \vspace{-0.5cm}
- \begin{itemize}
- \item{sprechen Gruppen von Adressen an}
- \item{es wird zwischen dauerhaften und dynamischen Adressen unterschieden}
- \item{ein Gerät kann zu vielen Multicast Gruppen gehören}
- \item{IANA betreibt Multicast Address Space Registry \tiny{(\url{https://www.iana.org/assignments/ipv6-multicast-addresses/ipv6-multicast-addresses.xhtml}})}
- \end{itemize}
+ \note{\begin{itemize}
+ \item{sprechen Gruppen von Adressen an}
+ \item{es wird zwischen dauerhaften und dynamischen Adressen unterschieden}
+ \item{ein Gerät kann zu vielen Multicast Gruppen gehören}
+ \end{itemize}}
\end{frame}
\begin{frame}[shrink]
\subsection{Anycast Adressen}
\begin{frame}
\frametitle{Was sind Anycast Adressen}
- \textcolor{MidnightBlue}{RFC 4291} - 2006\\
+ \textcolor{realRFC}{RFC 4291} - 2006\\
\vspace{-0.5cm}
\center{
\includegraphics[scale=0.4]{Anicast.png}
- \begin{tabular}{c|c|c}
- \textcolor{olive}{n Bits} & \textcolor{violet}{128-n bits}\\\hline
- \textcolor{olive}{Subnet Präfix} & \textcolor{violet}{Interface Identifier}\\\hline
- \textcolor{olive}{fd::}&0\\
- \end{tabular}}
-
+ \begin{tabular}{c|c|c}
+ \textcolor{prefix}{n Bits} & \textcolor{IID}{128-n bits}\\\hline
+ \textcolor{prefix}{Subnet Präfix} & \textcolor{IID}{Interface Identifier}\\\hline
+ \textcolor{prefix}{fd::}&0\\
+ \end{tabular}}
\begin{itemize}
\item{kann auf mehreren Interfaces konfiguriert sein}
\item{spricht nur die nächste Adresse an}
\item{haben keinen speziellen Adressbereich}
\item{sind Unicast-Adressen, mit dem Interface Identifier auf null gesetzt}
- \item{Nutzen: zB LoadBalancing}
\end{itemize}
+ \note{\begin{itemize}
+ \item{Nutzen: zB LoadBalancing}
+ \end{itemize}}
\end{frame}
\section{besondere IPv6 Adressen}
weitere besondere IPv6-Adressen \url{https://www.iana.org/assignments/iana-ipv6-special-registry/iana-ipv6-special-registry.xhtml}
\end{frame}
+
+\section[IPoAC Adressen]{IPv6 Bedingungen und Adressen bei Brieftauben}
+\begin{frame}
+ \frametitle{IPv6-Adressen - bei Brieftauben}
+ \framesubtitle{Zusammenfassung}
+ \begin{itemize}
+\item{Adress Bereiche:}
+ \begin{itemize}
+ \item{es kann nur das andere Ende des Links adressiert werden}
+ \item{Unicast Adressen unmöglich zu LinkLocal Adresse zu mappen(nach \textcolor{witzRFC}{RFC 6214)}}
+ \item{Multicast Implementierungsversuche, resultieren in erhöhter Geräuschübertragung, dadurch fehlerhaften Prüfsummen}
+ \end{itemize}
+ \pause
+ \item{Voraussetzungen}
+ \begin{itemize}
+ \item{Fähigkeit IPv6-Paket senden/emfangen \textcolor{green}{\checkmark}}
+ \item{ICMPv6 (ping) \textcolor{orange}{\checkmark}}
+ \item{Multicast \textcolor{red}{X}}
+ \end{itemize}
+ \pause
+ \item{Lösungen: Using 127-Bit IPv6 Präfixe \textcolor{realRFC}{RFC 6164} - 2011 und \textcolor{witzRFC}{6214} - 2011}
+ \begin{itemize}
+ \item{End-Punkt des Links unnummiert oder mit \textcolor{CIDR}{/127} Präfix oder statischer Addresse (\textcolor{witzRFC}{RFC 6214})}
+ \item{nur für point-to-point Kommunikation zwischen Routern}
+ \item{Neigbour Discovery Exhaustion (Tauben hin/her-schicken)}
+ \end{itemize}
+ \end{itemize}
+ \vspace{0.3cm}
+\end{frame}
+
\section{HandsON}
\subsection{ping}
\begin{frame}[fragile]
\frametitle{Das Test-Netzwerk}
\framesubtitle{IP-Adressen checken und pingen}
\begin{itemize}
- \item{Findet den WLAN-AccessPoint mit der ESSID Brieftauben-Wlan}
- \item{Verbindet euch mit dem WLAN, es gibt kein Passwort}
\item{IP-Adresse überprüfen}
\mint{bash}{ip -6 address show}
\item{pingen}
\item[A] \textcolor{red}{fe80:asdf::/20} X fe80::$<$InterfaceIdentifier$>$
\item[B] \textcolor{green}{::1/128} \checkmark für loopback
\item[C] \textcolor{green}{fdb0:0cfe:ed::/64} \checkmark Unique Local Adress
- \item[D] \textcolor{orange}{2001:db8::/32} \checkmark nur für „Dokumentationen \textcolor{MidnightBlue}{RFC 3849} - 2004“
+ \item[D] \textcolor{orange}{2001:db8::/32} \checkmark nur für „Dokumentationen \textcolor{realRFC}{RFC 3849} - 2004“
\end{description}
\end{frame}
\frametitle{SSH}
\framesubtitle{mit IPv6}
\begin{itemize}
- \item{Wlan SSID: Brieftauben-Wlan !kein Passwort!}
\item{ssh}
- \begin{itemize}
- \item{ssh User: dove}
- \item{ssh Passwort: IPoAC}
- \begin{minted}[breakafter=:]{bash}
- ssh <user>@fe80::e65f:1ff:fe46:edc9%<zone>
- ssh <user>@fd00:feed:c0ff:ee00:e65f:1ff:fe46:edc9
- \end{minted}
- \item{hier ist die \textcolor{red}{Zone wichtig} bei LLA's}
- \item{chatten geht mit wall}
- \end{itemize}
+ \begin{minted}[breakafter=:]{bash}
+ ssh dove@fe80::e65f:1ff:fe46:edc9%<zone>
+ ssh dove@fd00:feed:c0ff:ee00:e65f:1ff:fe46:edc9
+ \end{minted}
+ \item{hier ist die \textcolor{red}{Zone wichtig} bei LLA's}
\end{itemize}
\end{frame}
\begin{frame}[fragile]
\frametitle{Webseiten über IPv6}
\framesubtitle{mit curl}
- \begin{itemize}
- \item{Wlan SSID: Brieftauben-Wlan !kein Passwort!}
\begin{minted}[breakafter=:]{bash}
curl -I "http://[fe80::e65f:1ff:fe46:edc9%<zone>]"
curl -I "http://[fd00:feed:c0ff:ee00:e65f:1ff:fe46:edc9]"
\end{minted}
- \end{itemize}
\end{frame}
\begin{frame}
\frametitle{Webbrowser}
\framesubtitle{Webseiten mit IPv6}
\begin{itemize}
- \item{Wlan SSID: Brieftauben-Wlan !kein Passwort!}
\item{\url{http://[fd00:feed:c0ff:ee00:e65f:1ff:fe46:edc8]}}
- \item{ladet euch das Git-Projekt IPv6 herunter}
+ \item{\url{https://[fd00:feed:c0ff:ee00:e65f:1ff:fe46:edc8]}}
\end{itemize}
\end{frame}
-\section[SLAAC]{IPv6 Adressen mittels SLAAC}
-
-\begin{frame}
- \frametitle{Autokonfiguration(SLAAC)}
- \framesubtitle{Stateless Address Auto Configuration}
- \vspace{-0.2cm}
- \small{
- \textcolor{MidnightBlue}{RFC 4862} - 2007
- \vspace{-0.2cm}
- \begin{definition}
- \textbf{StateLessAddressAutoConfiguration} Zustandslose Autokonfiguration einer IPv6-Adresse pro Netzwerk Interface, dabei wird die LinkLocal (\textcolor{olive}{fe80::}) und Globale Adresse (\textcolor{olive}{2000::}) gebildet.
- \end{definition}
- \vspace{-0.3cm}
- \begin{itemize}
- \item{nur bei Multicast fähigen Interfaces}
- \item{erfordert kein manuelles Eingreifen}
- \item{Duplicate Address Dectection (DAD)}
- \item{nutzt lokale Informationen und Router Advertisements}
- \item{wenn kein Router vorhanden, nur die Link Local Adresse}
- \item{kann auch mit DHCPv6 benutzt werden, mehr Kontrolle}
- \item{Router Solications wird auf allen Router Multicast Gruppen ausgeführt}
- \item{wenn Präfix und Interface Identifier zusammen nicht 128 bit ergeben, wird keine Adresse gebildet}
- \end{itemize}}
- \vspace{0.5cm}
-\end{frame}
-
-\subsection{Protokolle im Netzwerk}
-\begin{frame}
- \frametitle{weitere IPv6 Protokolle}
+\section{Protokolle bei IPv6}
+\begin{frame}[fragile]
+ \frametitle{IPv6 Protokolle}
\label{Protokolle}
%\framesubtitle{}
- Informationen im Netzwerk ermitteln mit ICMP - alias ping
+ \textcolor{realRFC}{RFC 4443 - 2006}\\
+ Informationen im Netzwerk werden mit ICMP - alias ping - ausgetauscht.\\
+ ICMPv6 Paket\\
+ \\
+ \begin{bytefield}{32}
+ \bitheader{0,4,8,12,16,20,24,28,32} \\
+ \bitbox{8}{Type} & \bitbox{8}{Code} & \bitbox{16}{Checksum}\\
+ \bitbox{32}{Content}\\
+ \end{bytefield}
+\end{frame}
+
+\subsection{NDP und NUD}
+\begin{frame}
+\label{NDP-NUD}
+ \frametitle{IPv6 Protokolle}
+ \framesubtitle{Neighbor Discovery Protocol und Neighbor Unreachability Dectection}
\begin{definition}
\small{
NDP=Neighbor Discovery Protocol \only<|beamer:0>{\hyperlink{NDP}{\beamergotobutton{NDP}}}\\
- \textcolor{MidnightBlue}{RFC 3122 (2001), 4861 (2007), 9131 (2021)}\\
+ \textcolor{realRFC}{RFC 3122 (2001), 4861 (2007), 9131 (2021)}\\
Wird verwendet um im selben Netz andere Teilnehmer und dazugehörige Informationen zu ermitteln.}
\end{definition}
\pause
\begin{definition}
- \small{
- DAD=Duplicate Address Dectection \only<|beamer:0>{\hyperlink{DAD}{\beamergotobutton{DAD}}}\\
- \textcolor{MidnightBlue}{RFC 4429 (2006), 4862 (2007), 7527 (2015)}\\
- Soll Adress Konfikte verhindern, und doppelt vergebene Adressen erkennen. Es besteht die Pflicht es zu verwenden.}
- \end{definition}
- \pause
- \begin{definition}
- \small{
- NUD=Neighbor Unreachability Dectection \only<|beamer:0>{\hyperlink{NUD}{\beamergotobutton{NUD}}}\\
- \textcolor{MidnightBlue}{RFC 4861 (2007), 7048 (2014)}\\
+ \small{
+ NUD=Neighbor Unreachability Dectection \only<|beamer:0>{\hyperlink{NUD}{\beamergotobutton{NUD}}}\\
+ \textcolor{realRFC}{RFC 4861 (2007), 7048 (2014)}\\
ermittelt, ob die Adresse noch erreichbar ist.}
\end{definition}
\end{frame}
+\begin{frame}[fragile]
+ \frametitle{Das NDP und NUD}
+ \framesubtitle{Neighbor Protocole unter Linux}
+\small{Informationen aus dem Neighbor Discovery Cache abrufen:}
+ \begin{minted}{bash}
+ ip -6 maddress show #multicast Adressen
+ ip -6 neighbour show #aktueller Neighbour Cache
+ ip -6 neigh get <ip> dev <interface> #Informationen aus Cache zu Adresse auf Interface
+ ip -6 neigh show unused # alle unbenutzen Nachbarn
+ ip -6 neigh show to <IP> #Informationen zu Adresse
+ ip -6 neigh show dev <Interface> #Informationen zu Adressen im Interface
+ ip -6 route show table all #IPv6 Routen
+ \end{minted}
+ \small{NUD einsehen unter Linux:}
+ \begin{minted}{bash}
+ ip -6 neighbour show nud all #Status der NUD im Cache
+ ip monitor #Statusänderung
+ \end{minted}
+\end{frame}
+
+\subsection{DAD}
\begin{frame}
- \frametitle{weitere IPv6 Protokolle}
+ \frametitle{IPv6 Protokolle}
+ \framesubtitle{Duplicate Address Dectection}
+ \label{DAD-}
\begin{definition}
- RS=Router-Solicitation \only<|beamer:0>{\hyperlink{RS}{\beamergotobutton{RS}}}\\
- \textcolor{MidnightBlue}{RFC 4861 (2007)}\\
- ICMP Multicast-Nachricht mit der ein Router Advertisement angefordert wird.
- \end{definition}
- \pause
- \begin{definition}
- RA=Router-Advertisement \only<|beamer:0>{\hyperlink{RA}{\beamergotobutton{RA}}}\\
- \textcolor{MidnightBlue}{RFC 4861 (2007)}\\
- ICMP Nachricht mit der ein Router sein vorhandensein im Netz bekannt gibt und verschiedene Informationen an die Teilnehmer des Netzes übermittelt. Wird in regelmäßigen Abständen gesendet.
+ \small{
+ DAD=Duplicate Address Dectection \only<|beamer:0>{\hyperlink{DAD}{\beamergotobutton{DAD}}}\\
+ \textcolor{realRFC}{RFC 4429 (2006), 4862 (2007), 7527 (2015)}\\
+ Soll Adress Konfikte verhindern, und doppelt vergebene Adressen erkennen.}
\end{definition}
+ \begin{itemize}
+ \item{Pflicht DAD bei allen Adressen zu verwenden}
+ \item{DAD kann betriebssystemseitig ausgeschaltet werden}
+ \end{itemize}
\end{frame}
-
\begin{frame}[fragile]
- \frametitle{Das NDP}
- \framesubtitle{Neighbor Discovery Protocol unter Linux}
- Informationen aus dem Neighbor Discovery Cache abrufen:
+ \frametitle{Duplicate Address Dectection}
+ \framesubtitle{DAD unter Linux}
+ DAD Konfiguration im Kernel
\begin{minted}{bash}
- ip -6 maddress show #multicast Adressen
- ip -6 neighbour show #aktueller Neighbour Cache im Kernel
- ip -6 neigh get <ip> dev <interface> #listet Informationen aus dem Cache zu angegeben Adresse auf dem Interface auf
- ip -6 neigh show unused # listet alle Nachbarn, die gerade nicht benutzt werden auf
- ip -6 neigh show to <IP> #listet Informationen zu der Adresse
- ip -6 neigh show dev <Interface> #listet Informationen zu den Adressen im Interface
- ip -6 route show table all #zeigt die IPv6 Routen an
+ sysctl -w net.ipv6.conf.accept_dad=0 #DAD disablen
+ sysctl -w net.ipv6.conf.accept_dad=1 #DAD enablen
+ sysctl -w net.ipv6.conf.accept_dad=2 #DAD disablen wenn Doppelte Adresse gefunden und Interface Identifier auf MAC-Adresse basierend
\end{minted}
\end{frame}
\item[C] \textcolor{green}{wurde der Interface Identifier nicht basierend auf der MAC-Adresse gebildet, könnte vielleicht fortgefahren werden} \checkmark
\item[D] \textcolor{red}{wird eine neue Adresse generiert} X
\end{description}
- \note{\vspace{-1.5cm}rfc7527:\\
+ \note{rfc7527:\\
When a genuine duplicate is detected, the node follows the manual intervention specified in Section 5.4.5 of [RFC4862].\\}
\end{frame}
-\begin{frame}[fragile]
- \frametitle{Duplicate Address Dectection und Neighbor Unreachability Dectection}
- \framesubtitle{DAD und NUD unter Linux}
- DAD Konfiguration im Kernel
- \begin{minted}{bash}
- sysctl -w net.ipv6.conf.accept_dad=0 #DAD disablen
- sysctl -w net.ipv6.conf.accept_dad=1 #DAD enablen
- sysctl -w net.ipv6.conf.accept_dad=2 #DAD disablen wenn Doppelte Adresse gefunden und Interface Identifier auf MAC-Adresse basierend
- \end{minted}
- NUD einsehen unter Linux:
- \begin{minted}{bash}
- ip -6 neighbour show nud all #status der NUD im Cache
- ip monitor #zeigt die Statusänderung an
- \end{minted}
+\subsection[RS und RA]{Router-Solicitation und Router-Advertisement}
+\begin{frame}
+ \frametitle{IPv6 Protokolle}
+ \framesubtitle{RS und RA}
+ \label{RA-RS}
+ \begin{definition}
+ RS=Router-Solicitation \only<|beamer:0>{\hyperlink{RS}{\beamergotobutton{RS}}}\\
+ \textcolor{realRFC}{RFC 4861 (2007)}\\
+ ICMP Multicast-Nachricht mit der ein Router Advertisement angefordert wird.
+ \end{definition}
+ \pause
+ \begin{definition}
+ RA=Router-Advertisement \only<|beamer:0>{\hyperlink{RA}{\beamergotobutton{RA}}}\\
+ \textcolor{realRFC}{RFC 4861 (2007)}\\
+ ICMP Nachricht mit der ein Router sein vorhandensein im Netz bekannt gibt und verschiedene Informationen an die Teilnehmer des Netzes übermittelt. Wird in regelmäßigen Abständen gesendet.
+ \end{definition}
\end{frame}
-
-\section[IPv6 Bedingungen]{zwingende Bedingungen für IPv6}
\begin{frame}
- \frametitle{Voraussetzungen für IPv6}
+ \frametitle{IPv6 mit IPoAC}
\framesubtitle{Zusammenfassung}
- \textcolor{MidnightBlue}{RFC 8504} - 2019
- \begin{itemize}
- \item{Fähigkeit IPv6-Paket zu empfangen und zu senden}
- \item{zu gewährleisten ist (MUST):}
\begin{itemize}
- \item{Routererkennung}
- \item{Präfixerkennung}
- \item{NUD für alle Pfade zwischen Hosts und Nachbar Nodes}
- \item{RA und RS}
- \item{Pfad MTU und Größen-Erkennung}
- \item{ICMPv6 (ping)}
- \item{Multicast}
- \item{SLAAC}
- \item{DAD}
- \item{DNS Option in RA}
+ \item{Routererkennung \textcolor{red}{X}}
+ \item{Präfixerkennung \textcolor{green}{\checkmark}}
+ \item{NUD für alle Pfade zwischen Hosts und Nachbar Nodes \textcolor{red}{X}}
+ \item{RA und RS \textcolor{red}{X}}
+ \item{Pfad MTU und Größen-Erkennung \textcolor{green}{\checkmark}}
+ \item{ICMPv6 (ping) \textcolor{orange}{\checkmark}}
+ \item{Multicast \textcolor{red}{X}}
+ \item{DAD \textcolor{red}{X}}
+ \item{DNS Option in RA \textcolor{green}{\checkmark}}
+ \item{SLAAC \textcolor{red}{X}}
\end{itemize}
- \end{itemize}
\end{frame}
-\section[Transport]{Transportmöglichkeiten für IPv6}
+\section[SLAAC]{IPv6 Adressen mittels SLAAC}
-\subsection{IPoAC}
\begin{frame}
- \frametitle{Tauben und IPv6}
- \only<|beamer:0>{alternative Transportmöglichkeit: \hyperlink{IPoSN}{\beamergotobutton{IPoSN}}}
- \center{\includegraphics[scale=0.4]{Taube03.jpg}}
+ \frametitle{Autokonfiguration(SLAAC)}
+ \framesubtitle{Stateless Address Auto Configuration}
+ \vspace{-0.2cm}
+ \small{
+ \textcolor{realRFC}{RFC 4862} - 2007
+ \vspace{-0.2cm}
+ \begin{definition}
+ \textbf{StateLessAddressAutoConfiguration} Zustandslose Autokonfiguration einer IPv6-Adresse pro Netzwerk Interface, dabei wird die LinkLocal (\textcolor{olive}{fe80::}) und Globale Adresse (\textcolor{olive}{2000::}) gebildet.
+ \end{definition}
+ \vspace{-0.3cm}
+ \begin{itemize}
+ \item{nur bei Multicast fähigen Interfaces}
+ \item{erfordert kein manuelles Eingreifen}
+ \item{Duplicate Address Dectection (DAD)}
+ \item{nutzt lokale Informationen und Router Advertisements}
+ \item{wenn kein Router vorhanden, nur die Link Local Adresse}
+ \item{kann auch mit DHCPv6 benutzt werden, mehr Kontrolle}
+ \item{Router Solications wird auf allen Router Multicast Gruppen ausgeführt}
+ \item{wenn Präfix und Interface Identifier zusammen nicht 128 Bit ergeben, wird keine Adresse gebildet}
+ \end{itemize}}
+ \vspace{0.5cm}
\end{frame}
+
+\subsection{IPoAC und IPv6}
+
\begin{frame}
\frametitle{Brief-Tauben und IPv6}
- \framesubtitle{\textcolor{RedViolet}{RFC 6214} 2011 IPoAC}
- \label{IPoAC}
+ \framesubtitle{IPoAC nach \textcolor{witzRFC}{RFC 6214} 2011}
\vspace{-0.2cm}
\begin{itemize}
- \item{Allgemeines}
+ \item{IPv6 Protocolle}
\begin{itemize}
- \item{sehr instabil Übertragungswege, je nach Wind\-verhältnissen}
- \item{bekanntes Risiko einer Infektion mit H5N1 Virus, Sicher\-stel\-lung von angemessene Erkennung und Quarantäne Maßnahmen}
- \end{itemize}
- \item{IPv6 Bedingungen}
- \begin{itemize}
- \item{LinkLocal Adressen können nicht gebildet werden, jegliche Form von Link-Layer (Sicherungsschicht) fehlt}
- \item{es kann nur das andere Ende des Links adressiert werden}
- \item{Keine Möglichkeit Unicast Adressen zu einer LinkLocal Adresse zu mappen}
\item{Neigbour Discovery ist unmöglich}
+ \end{itemize}
+ \pause
+ \item{SLACC}
+ \begin{itemize}
\item{SLAAC sollte nicht versucht werden zu implementieren, eine stabiler Interface Identifier ist nicht zu bilden}
- \item{versuche Multicast zu implementieren, führten zu erhöhter Geräuschübertragung, was zu fehlerhaften Prüfsummen führt}
- \end{itemize}
+ \end{itemize}
+ \pause
+ \item{Allgemeines}
+ \begin{itemize}
+ \item{Es gibt Beweise, dass einige Avian Carriers (Raubvögel) andere Avian Carriers gegessen haben und dann den gegessenen Packetinhalt getragen haben.}
+ \item{neue Tunnel für IPv4 in IPv6 und umgekehrt - Aber der Entpackungs-Mechanismus ist noch unklar}
+ \end{itemize}
\end{itemize}
\vspace{0.4cm}
- \note[item]{Es gibt Beweise, dass einige Avian Carriers (Raubvögel) andere Avian Carriers gegessen haben und dann den gegessenen Packetinhalt getragen haben.}
- \note[item]{neue Tunnel für IPv4 in IPv6 und umgekehrt - Aber der Entpackungs-Mechanismus ist noch unklar}
\end{frame}
-\begin{frame}
- \frametitle{IPv6 mit IPoAC}
- \framesubtitle{Zusammenfassung}
- \begin{itemize}
- \item{Routererkennung \textcolor{red}{X}}
- \item{Präfixerkennung \textcolor{green}{\checkmark}}
- \item{NUD für alle Pfade zwischen Hosts und Nachbar Nodes \textcolor{red}{X}}
- \item{RA und RS \textcolor{red}{X}}
- \item{Pfad MTU und Größen-Erkennung \textcolor{green}{\checkmark}}
- \item{ICMPv6 (ping) \textcolor{orange}{\checkmark}}
- \item{Multicast \textcolor{orange}{\checkmark}}
- \item{SLAAC \textcolor{red}{X}}
- \item{DAD \textcolor{red}{X}}
- \item{DNS Option in RA \textcolor{green}{\checkmark}}
- \end{itemize}
-\end{frame}
\subsubsection[IPoAC Lösungen]{Mögliche Lösungen für IPoAC mit IPv6}
\begin{frame}
\frametitle{Brief-Tauben und IPv6 Lösungen}
- \framesubtitle{Vorschläge}
+ \framesubtitle{Lösungsvorschläge}
\begin{itemize}
- \item{Using 127-Bit IPv6 \textcolor{MidnightBlue}{Prefixe RFC 6164} - 2011 und \textcolor{RedViolet}{6214} 2011}
- \begin{itemize}
- \item{der End-Punkt des Links ist unnummiert oder mit einem /127 prefix und einer statischen Addresse versehen (\textcolor{RedViolet}{RFC 6214})}
- \item{nur für point-to-point Kommunikation zwischen Routern}
- \item{führt zu Neigbour Discovery Exhaustion (hin und herschicken von Tauben)}
- \end{itemize}
- \item{Neighbor Discovery Optimization for IPv6 over Low-Power Wireless Personal Area Networks (6LoWPANs) \textcolor{MidnightBlue}{RFC 6775} - 2017}
+ \item{Neighbor Discovery Optimization for IPv6 over Low-Power Wireless Personal Area Networks (6LoWPANs) \textcolor{realRFC}{RFC 6775} - 2017}
\begin{itemize}
\item{Interface Identifier wird mit Hilfe von RA gebildet}
\item{DAD wird unterstützt (nur wenn SLAAC benutzt wird)}
\item{Es werden keine NS Nachrichten unterstützt}
\item{bei Adress Initialisierung wird erst RS Nachricht abgewartet bevor die Adresse gebildet wird}
\end{itemize}
- \end{itemize}
-\end{frame}
-
-\begin{frame}
- \frametitle{Brief-Tauben und IPv6 Lösungen}
- \framesubtitle{Vorschläge}
- \begin{itemize}
- \item{Routing for RPL (Routing Protocol for Low-Power and Lossy Networks) Leaves \textcolor{MidnightBlue}{RFC 9010} - 2021 (update von \textcolor{MidnightBlue}{6775})}
+ \item{Routing for RPL (Routing Protocol for Low-Power and Lossy Networks) Leaves \textcolor{realRFC}{RFC 9010} - 2021 (update von \textcolor{realRFC}{6775})}
\begin{itemize}
\item{IPv6 Adressen werden als Host-Routen bekannt gegeben}
\item{kommuniziert nur mit einem Router}
\item{Dort findet eine ND Registratur statt}
- \item{Ziel ist, das weniger Nachrichten mit dem Host ausgetauscht werden}
+ \item{Ziel, weniger Nachrichten mit Host ausgetauschen}
\item{DAD und ND-Messages werden zwischen dem Router und dem Host ausgetauscht}
- \end{itemize}
- \item{Complex Addressing in IPv6 \textcolor{RedViolet}{RFC 8135} - 2017}
- \begin{itemize}
- \item{Flying Addresses}
- benutzten den ICAO Class G Luftraum unterhalb der Wolken und können von unteren Layer Technologien erwartet werden
- \item{Floating Addresses}
- werden mit Panzertape am Gerät befestigt und garantieren KEINE Wasserdichte des Gerätes
- \end{itemize}
+ \end{itemize}
\end{itemize}
\end{frame}
\frametitle{Brief-Tauben und IPv6}
\framesubtitle{Real-Life Beispiel}
\begin{itemize}
- \item{Scenic Routing for IPv6 \textcolor{RedViolet}{RFC 7511} - 2015}
+ \item{Scenic Routing for IPv6 \textcolor{witzRFC}{RFC 7511} - 2015}
\begin{itemize}
\item{zur Unterstützung Grüner IT}
\item{Pakete werden so geroutet, dass sie möglichst viel frische Luft bekommen}
\end{itemize}
\end{frame}
-\subsection[IPoB]{IPv4 over Buritos}
-\begin{frame}[fragile,shrink]
- \frametitle{IPv4 over Burrito Carriers}
- \framesubtitle{\textcolor{RedViolet}{RFC Draft 2005} IPoBC}
- \label{IPoBC}
- Größe: 20 Byte (160 Bits)
- \vspace{0.2cm}
- \vfill
- \begin{bytefield}{32}
- \bitheader{0,4,8,12,16,20,24,28,32} \\
- \bitbox{4}{\color{green}\tiny{offensichtlich}} & \bitbox{4}{\color{red}\small{Zwiebel}} & \bitbox{8}{\color{blue}Jalapenos} & \bitbox{16}{\color{blue}Phyische Länge (mm)}\\
- \bitbox{16}{\color{red}Nummer auf der Folie} & \bitbox{3}{\color{red}\tiny{Bohnen\\Art}} & \bitbox{13}{\color{red}Anzahl der Bohnen}\\
- \bitbox{8}{\color{blue}{aAz}} & \bitbox{8}{\color{blue}Guacamole} & \bitbox{16}{\color{red}Rezept}\\
- \bitbox{32}{\color{green}Salat}\\
- \bitbox{32}{\color{green}Reis}\\
- \bitbox{32}{\color{red}Rindfleisch}
- \end{bytefield}
- Guten Appetit!\\
- \small{Legende: aAz $=$ angeforderte Auslieferungszeit}
- \only<|beamer:0>{\hyperlink{Header}{\beamergotobutton{IPv6-Header}}}
-\end{frame}
-
\section{ENDE}
\begin{frame}
\frametitle{Ende}
}
\end{frame}
+
%folien fürs Handout
\begin{frame}<1-| beamer:0>
\frametitle{Das innere der IPv6-Pakete}
\framesubtitle{IPv6-Header}
\label{Header}
- \textcolor{MidnightBlue}{RFC 8200} (2017) ursprünglich 1995 \textcolor{MidnightBlue}{RFC 1883} \\
+ \textcolor{realRFC}{RFC 8200} (2017) ursprünglich 1995 \textcolor{realRFC}{RFC 1883} \\
Größe: 40 Byte (320Bits)
\vspace{0.3cm}
\vfill
\frametitle{Das NDP}
\framesubtitle{Neighbor Discovery Protocol}
\label{NDP}
- \textcolor{MidnightBlue}{RFC 4861} - 2007\\
- \textcolor{MidnightBlue}{RFC 9131} - 2021\\
- \textcolor{MidnightBlue}{RFC 3122} - 2001
+ \textcolor{realRFC}{RFC 4861} - 2007\\
+ \textcolor{realRFC}{RFC 9131} - 2021\\
+ \textcolor{realRFC}{RFC 3122} - 2001
\begin{definition}
Wird verwendet um im selben Netz andere Teilnehmer und dazugehörige Informationen zu ermitteln.
\end{definition}
\item{Umleitungen (Redirects)}
\end{itemize}
\end{itemize}
- \hyperlink{Protokolle}{\beamerreturnbutton{Back to weitere Protokolle}}
+ \hyperlink{NDP-NUD}{\beamerreturnbutton{Back to Neighbor Discovery Protocol und Neighbor Unreachability Dectection}}
\vspace{0.3cm}
\end{frame}
+%\subsection[NUD]{Neighbor Unreachability Dectection}
+
+\begin{frame}<1-| beamer:0>[fragile]
+ \frametitle{Neighbor Unreachability Dectection}
+ \framesubtitle{Erreichbarkeit der Umgebung}
+ \label{NUD}
+ \textcolor{realRFC}{RFC 7048} - 2014\\
+ \textcolor{realRFC}{RFC 4861} - 2007
+ \begin{definition}
+ ermittelt, ob die Adresse noch erreichbar ist.
+ \end{definition}
+\begin{itemize}
+\item{wird mittels ping(ICMP) ermittelt}
+\item{wird benutzt für alle Wege zwischen den Teilnehmern}
+\item{wird nur an Teilnehmer mit Unicast Adresse gesendet}
+\end{itemize}
+\hyperlink{NDP-NUD}{\beamerreturnbutton{Back to Neighbor Discovery Protocol und Neighbor Unreachability Dectection}}
+\end{frame}
+
%% \subsection[DAD]{Duplicate Address Dectection}
\begin{frame}<1-| beamer:0>[fragile]
\frametitle{Duplicate Address Dectection}
\framesubtitle{doppelte Addressen aufspüren}
\label{DAD}
- \textcolor{MidnightBlue}{RFC 7527} - 2015\\
- \textcolor{MidnightBlue}{RFC 4862} - 2007\\
- \textcolor{MidnightBlue}{RFC 4429} - 2006
+ \textcolor{realRFC}{RFC 7527} - 2015\\
+ \textcolor{realRFC}{RFC 4862} - 2007\\
+ \textcolor{realRFC}{RFC 4429} - 2006
\begin{definition}
Soll Adress Konfikte verhindern, und doppelt vergebene Adressen erkennen.
\end{definition}
%\item{die ermittelte Unicast Adresse wird als Solicited Multicast Adresse umgewandelt und als Zieladresse verwendet}
\item{die gewünschte ermittelte Unicast Adresse wird im ICMP-Packet als Zieladresse mit eingetragen}
\end{enumerate}
- \begin{itemize}
- \item{Pflicht DAD bei allen Adressen zu verwenden}
- \item{DAD kann betriebssystemseitig ausgeschaltet werden}
- \end{itemize}
- \hyperlink{Protokolle}{\beamerreturnbutton{Back to weitere Protokolle}}
-\end{frame}
-
-%\subsection[NUD]{Neighbor Unreachability Dectection}
-
-\begin{frame}<1-| beamer:0>[fragile]
- \frametitle{Neighbor Unreachability Dectection}
- \framesubtitle{Erreichbarkeit der Umgebung}
- \label{NUD}
- \textcolor{MidnightBlue}{RFC 7048} - 2014\\
- \textcolor{MidnightBlue}{RFC 4861} - 2007
- \begin{definition}
- ermittelt, ob die Adresse noch erreichbar ist.
- \end{definition}
-\begin{itemize}
-\item{wird mittels ping(ICMP) ermittelt}
-\item{wird benutzt für alle Wege zwischen den Teilnehmern}
-\item{wird nur an Teilnehmer mit Unicast Adresse gesendet}
-\end{itemize}
-\hyperlink{Protokolle}{\beamerreturnbutton{Back to weitere Protokolle}}
+ \hyperlink{DAD-}{\beamerreturnbutton{Back to Duplicate Address Dectection}}
\end{frame}
%\subsection[RA/RS]{Router Erkennung mit IPv6}
\frametitle{Router Erkennung}
\framesubtitle{Router-Solicitation}
\label{RS}
- \textcolor{MidnightBlue}{RFC 4861} - 2007
+ \textcolor{realRFC}{RFC 4861} - 2007
\begin{definition}
ICMP Multicast-Nachricht mit der ein Router Advertisement angefordert wird.
\end{definition}
\item{ZielAdresse: all routers multicast Adresse}
\end{itemize}
\end{itemize}
- \hyperlink{Protokolle}{\beamerreturnbutton{Back to weitere Protokolle}}
+ \hyperlink{RA-RS}{\beamerreturnbutton{Back to Router-Solicitation und -Advertisement}}
\end{frame}
\begin{frame}<1-| beamer:0>[shrink]
\frametitle{Router Erkennung}
\framesubtitle{Router-Advertisement}
\label{RA}
- \textcolor{MidnightBlue}{RFC 4861} - 2007
+ \textcolor{realRFC}{RFC 4861} - 2007
\vspace{-0.2cm}
\begin{definition}
ICMP Nachricht mit der ein Router sein vorhandensein im Netz bekannt gibt und verschiedene Informationen an die Teilnehmer des Netzes übermittelt.
\item{Präfix Informationen}
\end{itemize}
\end{itemize}
- \hyperlink{Protokolle}{\beamerreturnbutton{Back to weitere Protokolle}}
+ \hyperlink{RA-RS}{\beamerreturnbutton{Back to Router-Solicitation und -Advertisement}}
\vspace{0.3cm}
\end{frame}
\frametitle{IPv6 over Social Networks}
\framesubtitle{Aufbau}
\label{IPoSN}
- \textcolor{RedViolet}{RFC 5514} - 2009
+ \textcolor{witzRFC}{RFC 5514} - 2009
\begin{definition}
Um die IPv6-Geräte zu erhöhen, sollen alle Sozialen Netzwerk Plattformen in IPv6 Netzwerke migriert werden. Damit soll erreicht werden die IPv6 Kenntnisse ebenso zu erhöhen, wie die IPv6 Router.
\end{definition}
\item{...}
\end{itemize}
}
- \hyperlink{IPoAC}{\beamerreturnbutton{Back to IPoAC}}
+ \hyperlink{IPoAC}{\beamerreturnbutton{Back to Tauben und Ipv6}}
\end{frame}
\end{document}
+
+%% \subsection[IPoB]{IPv4 over Buritos}
+%% \begin{frame}[fragile,shrink]
+%% \frametitle{IPv4 over Burrito Carriers}
+%% \framesubtitle{\textcolor{RedViolet}{RFC Draft 2005} IPoBC}
+%% \label{IPoBC}
+%% Größe: 20 Byte (160 Bits)
+%% \vspace{0.2cm}
+%% \vfill
+%% \begin{bytefield}{32}
+%% \bitheader{0,4,8,12,16,20,24,28,32} \\
+%% \bitbox{4}{\color{green}\tiny{offensichtlich}} & \bitbox{4}{\color{red}\small{Zwiebel}} & \bitbox{8}{\color{blue}Jalapenos} & \bitbox{16}{\color{blue}Phyische Länge (mm)}\\
+%% \bitbox{16}{\color{red}Nummer auf der Folie} & \bitbox{3}{\color{red}\tiny{Bohnen\\Art}} & \bitbox{13}{\color{red}Anzahl der Bohnen}\\
+%% \bitbox{8}{\color{blue}{aAz}} & \bitbox{8}{\color{blue}Guacamole} & \bitbox{16}{\color{red}Rezept}\\
+%% \bitbox{32}{\color{green}Salat}\\
+%% \bitbox{32}{\color{green}Reis}\\
+%% \bitbox{32}{\color{red}Rindfleisch}
+%% \end{bytefield}
+%% Guten Appetit!\\
+%% \small{Legende: aAz $=$ angeforderte Auslieferungszeit}
+%% \only<|beamer:0>{\hyperlink{Header}{\beamergotobutton{IPv6-Header}}}
+%% \end{frame}
+
+
+
+
% LocalWords: IPv Powershell Identifier