\documentclass[letterpaper,english]{article}
\nonstopmode
\akai
\usepackage{linuxdoc-sgml}
\usepackage{qwertz}
\usepackage{url}
\usepackage[latin1]{inputenc}
\usepackage{t1enc}
\usepackage[english]{babel}
\usepackage{epsfig}
\usepackage{null}
\def\addbibtoc{
\addcontentsline{toc}{section}{\numberline{\mbox{}}\relax\bibname}
}%end-preamble
\setcounter{page}{1}
\title{Linux IPv6 HOWTO}
\author{Author:Peter Bieringer  {\ttfamily  pb@bieringer.de } \\  \\ Ä¶ªÌ: ³¯±Ó¼C {\ttfamily  expns@yahoo.com}}
\date{Revision Release 0.31 2002-09-29 Revised by: PB   Â½Ä¶¤é´Á: 2002-10-14 , 2002-11-19 ²Ä¤G¦¸­×¥¿}
\abstract{ Linux IPv6 HOWTO ªº¥Ø¦a¬O¦^µª¦b Linux §@·~¨t²Î¤W³]©wIPv6ªº°ò¥»/¶i¶¥°ÝÃD.³o¥÷HOWTO¬°¥Î¤á¦bLinux§@·~¨t²Î¤W¦w¸Ë,³]©w©M¨Ï¥ÎIPv6´£¨Ñ¨¬°÷ªº¸ê°T.}


\begin{document}
\maketitle
\tableofcontents

\section{·§­z}


\subsection{ª©¥»}

\begin{tscreen}
\begin{verbatim}
Revision Release 0.31 2002-09-29 Revised by: PB 
See revision history for more 
Revision Release 0.30 2002-09-27 Revised by: PB 
See revision history for more 
Revision Release 0.29 2002-09-18 Revised by: PB 
\end{verbatim}
\end{tscreen}



\subsection{ª©Åv,³\¥i»P¨ä¥¦}


\subsubsection{ª©Åv©Ò¦³: Peter Bieringer}

\begin{tscreen}
\begin{verbatim}
Copyright
Written and Copyright (C) 2001-2002 by Peter Bieringer

1.1.2. License
This Linux IPv6 HOWTO is published under GNU GPL version 2: 

The Linux IPv6 HOWTO, a guide how to configure and use IPv6 on Linux systems. 

Copyright (C) 2001-2002 Peter Bieringer 

    This documentation is free software; you can redistribute it and/or modify it 
  under the terms of the GNU General Public License as published by the Free 
  Software Foundation; either version 2 of the License, or (at your option) 
  any later version. 
 
    This program is distributed in the hope that it will be useful, 
  but WITHOUT ANY WARRANTY; without even the implied warranty of 
  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 
  See the GNU General Public License for more details. 

    You should have received a copy of the GNU General Public License along 
  with this program; if not, write to the Free Software Foundation, Inc., 
  59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
\end{verbatim}
\end{tscreen}





\subsection{Ãö©ó§@ªÌ}

 
\begin{tscreen}
\begin{verbatim}
§@ªÌ±µÄ² Internet/IPv6 ªº¾ú¥v
         1993: ¥Ñ©ó¨Ï¥Îe-mail©M·s»D²Õ¶}©l±µÄ²Internet.
         1996: ¨üÁÜ©ó¤@­ÓIPv6ªº½Òµ{. ¥]¬A¤FLinux¦³ÃöªºIPv6.
         1997: ¶}©l¼g¦bLinux¸Ì¦w¸Ë,³]©w©M¨Ï¥ÎIPv6ªº«ü«n.
         2001: ¶}©l¼g³o­Ó·sªºHOWTO.
  
\end{verbatim}
\end{tscreen}



\subsection{ÁpÃ´}

¥i¥H³q¹Le-mail pb@bieringer.de¤Î­º­¶\onlynameurl{http://www.bieringer.de/pb/}
¥L²{¦b¦í¦bMunich {[}northern part of Schwabing] / Bavaria / Germany (south) / Europe (middle) / Earth (surface/mainland).


\subsection{Ãþ§O}

     ¦b"Networking/Protocols"¸Ì.






\subsection{ª©¥», ¾ú¥v©M¥´ºâ}

¦b³Ì¤WÀY´£¹L¤F.


\subsection{¾ú¥v}

\begin{tscreen}
\begin{verbatim}
¥D­nªº¾ú¥v
2001-11-30: ¶}©l³]©w·sªºHOWTO
2002-01-02: §¹¦¨¤F¤@ÂI,µoªí¤F²Ä¤@³¹¸` (version 0.10).
2002-01-14: §¹¦¨¤F§ó¦h,¥[¤Fµû½×,µoªí¤F©Ò¦³ªº¤º®e(version 0.14).
2002-08-16: ªiÄõª©ªºÂ½Ä¶¥¿¦b¶i¦æ.
2002-10-14: ¤¤Ä¶ª©Â½Ä¶­è¶}©l.
\end{verbatim}
\end{tscreen}





\subsection{¥þ³¡¾ú¥v}

See revision history at the end of this document.


\subsection{¥´ºâ}

¸É¯Êº|.§¹¦¨¤º®eªºÀËµø.




\subsection{Â½Ä¶}

¥¦­Ì¥]§tURL,ª©¥»¸¹,­ì§@ªºª©Åv.




\subsection{¼w»y}

¥¦ªºª©¥»¥Ñ§Ú¦Û¤v§¹¦¨(¼w»y¬O§Úªº¥À»y)¦bª©¥»¨C¤ë³£¦³ÅÜ¤Æªº®É­Ô¬O¤£·|§¹¦¨ªº.
¨Ã¥B§ÚÁÙ­n¦³ªÅ¶¢ªº®É¶¡,¦pªG±z¦³®É¶¡,¤£§«¸Õ¤@¸Õ,¤j¤j¤è¤è¦a¨Ó±µºÞ§a.


\subsection{¨ä¥¦ªº»y¨t}

¤@¯ë±¡ªp¤U,½Ðµ¥¨ì¤@­Ó¤ë¥H¤WµLÅÜ°Êªº®É­Ô¶i¦æÂ½Ä¶, version0.27 ¬O³Ìªñªº.








\subsection{ªiÄõª©}

¦Û±q 2002-08-16 Lukasz Jokiel Lukasz.Jokiel@klonex.com.pl¶}©l,¨ì²{¦b.
¥Lªº°_©lª©¬O 0.27




\subsection{¤¤Ä¶ª©}

±q 2002-10-14 °_, ¤¤Ä¶ª©ªºÂ½Ä¶§¹¦¨¤F³¡¥÷¤º®e, °_©lª©¬O 0.31






\subsection{§Þ³N¤è­±}

HOWTOªº­ì©l§Î¦¡¬O
¦bLinux Red Hat7.3¨½¥Î LyX version 1.2.0 ¼gªº,®æ¦¡¬OSGML.
http://cvsview.tldp.org/index.cgi/LDP/users/Peter-Bieringer/ ¸Ì¥i¥H¨ú±o.








\subsection{¥N½X«Ê¸Ë}

¥N½X«Ê¸Ë¬O¥Ñ¦Û¤v¼gªº¤u¨ã"lyxcodelinewrapper.pl" ¨Ó§¹¦¨.
±z¥i¥H¦bhttp://cvsview.tldp.org/index.cgi/LDP/users/ ¸Ì¨ú±o










\subsection{²£¥ÍSGML}

 
¬O¥ÎLyXªº¿é¥X¥\¯à¹ê²{.
¤]¦³¤@¨Ç¬O¥Î©T©wªº¥N½X.(°Ñ·Óhttp://cvsview.tldp.org/index.cgi/LDP/users/Peter-Bieringer/)
Export of LyX table does not create proper "colspan" tags - tool for fixing: "sgmllyxtabletagfix.pl" (fixed since LyX 1.2.0)

LyX sometimes uses special left/right entities for quotes instead the normal one, which will still exist in generated HTML. Some browsers don't parse this very well (known: Opera 6 TP 2 or Konqueror) - tool for fixing: "sgmllyxquotefix.pl"










\subsection{2HTMLª©¦¡ªº¦b½u¥Ø¿ý(linking/anchors)}

¥D¯Á¤Þ
¤@¯ë¨Ó»¡,¬O³Q±ÀÂËªº






\subsection{±M¥Îªº­¶­±}

¦]¬°HTMLª©¦¡¬O¥ÑSGML¥Í¦¨, HTMLªº¤å¥ó¦W¬OÀH¾÷ªº, ¤@¨Ç¦WºÙ³Q©w¦º.³o¬O¦³¥Îªº,¨Ã¦b¥H«á¤£·|§ïÅÜ.
¦pªG±z»{¬°§Úº|¤Ftag, ½ÐÅý§Úª¾¹D,§Ú·|¥[¶i¥hªº.










\subsection{¦³¦h¤Ö­ÓÃö©ó Linux©MIPv6 HOWTOªºÅÜ°Êª©¥»?}

¥[¤W³o­Ó, ¦³¤T­Ó©O. ©êºp,¬O¦³ÂI¤Ó¦h.








\subsection{Linux IPv6 FAQ/HOWTO (¹L®Éªº)}

²Ä¤@­Ó¥Ñ Eric Osborne ©Ò¼g. ¥s°µ Linux IPv6 FAQ/HOWTO(http://www.linuxhq.com/IPv6/).
¦³½Öª¾¹D¥¦ªºªì©l¤é´Á,½Ð¨Óe-mail§i¶D§Ú, ¥Î¨Ó¼g¾ú¥vªº.








\subsection{IPv6 \& Linux - HowTo (¥¿¦bºûÅ@·í¤¤)}

¨º¸Ì¦³¤@­Ó§Ú(Peter Bieringer)¼gªº²Ä¤Gª©, 
¥s°µ IPv6 \& Linux - HowTo(http://www.bieringer.de/linux/IPv6/),
®æ¦¡¬O¯ÂHTML, 1997¦~4¤ë¶}©l, ¨Ã¦b¦P¦~7¤ëµo¦æ¤F²Ä¤@­Ó­^¤åª©, §Ú·|Ä~ÄòºûÅ@¥¦.
¦ý¥¦·|³QºCºC¦a®e¦X¶i²{¦b±zÅªªº³o¥÷HOWTO·í¤¤.




\subsection{Linux IPv6 HOWTO (²{¦b³o¥÷HOWTO)}

¥Ñ©óIPv6 \& Linux - HowTo(http://www.bieringer.de/linux/IPv6/) ¬O¥Î¯ÂHTML¼gªº,
»P Linux ¤åÀÉ­p¹º(www.linuxdoc.org)¤£­Ý®e. §Ú(Peter Bieringer)±µ¨ì¤F¤@­Ó±N IPv6 \& Linux
- HowTo ¼g¦¨SGML®æ¦¡ªº½Ð¨D. ¦]¬°±N­n°±¤î¼gHOWTO(±N¨ÓªºIPv6 \& Linux - HowTo), 
¨ÃÀHµÛIPv6¶V¨Ó¶V¼Ð·Ç¤Æ, §Ú¨M©w¼g¤@­Ó·sªº¦b¥¼¨Ó´X¦~¥e¥D­n¦a¦ìªº¤ñ¸û§ó«ù¤[ªºª©¥»,
¥]¬A¤F°ò¥»ªº©M°ª¯Åªºª©¥». °ÊºAªº¸ê°T¨ÌµM·|¦b±N¨Óªº¤é¤l¸Ì²K¥[¨ì²Ä¤G­ÓHOWTO¸Ì¥h(IPv6 \& Linux - HowTo).http://www.bieringer.de/linux/IPv6/












\subsection{Long code line wrapping signal char}

"?"³o­Ó¯S®íªº¦r²Å¬OÅý½s½X¦bPDF ©M PS ¤å¥ó¤¤Åã±o§ó¦n¬Ý.






\subsection{Placeholders (¦û¦ì²Å)}

±z¥i¥H±`±`¦b¨Ò¤l¤¤¬Ý¨ì¦p¤Uªº¤º®e:   

$<$ myipaddress $>$

¦b±zªº¨t²Î©R¥O¦æ©Îscripts¸Ì·|³Q¬ÛÀ³ªº¤º®e©Ò¨ú¥N(·íµM¬O±N "$<$ $>$" ¥h±¼°Õ),
µ²ªGÅÜ¦¨³o¼Ë:

1.2.3.4




\subsection{Commands in the shell(shell ¸Ìªº©R¥O)}

¥i°õ¦æªº©R¥O(«Droot¥Î¤á),¥Ñ "\$" ¶}ÀY, ¦p:

\$ whoami

¥i°õ¦æªº©R¥O(root¥Î¤á),¥Ñ "\#" ¶}ÀY, ¦p:

\# whoami










\subsection{¨Ï¥Î³o­ÓHOWTOªº¥²»Ý±ø¥ó}


\subsubsection{­Ó¤H©Ò­n¥²³Æªº±ø¥ó.}

±z¥²»Ý¼ô±x¥D­nªºUNIX¤u¨ã,¦pgrep, awk, find, ... , ©M¥¦­Ìªº¤@¯ë¥Îªk.




\subsubsection{ª¾¹D¤@¨Çºô¸ô²z½×}

±z­nª¾¹Dlayers, protocls, addresses , cables ,plugs, µ¥. 
¦pªG±z­è¶i¤J³o­Ó»â°ì, ³o­Ó³sµ²¦³§U©ó±z:\onlynameurl{http://www.linuxports.com/howto/intro\_to\_networking/}


\subsubsection{³]©wIPv4ªº¸gÅç}

±z¥²»Ý¦³©ú½TªºIPv4ªº³]©w¸gÅç.¤£µM,±z±N¤£ª¾¹D¦p¦ó¶i¦æ¤U¥h.




\subsubsection{Domain Name System (DNS °ÊºA¦WºÙ¨ÍªA¨t²Î)ªº¸gÅç}

±z³Ì¤Ö­nª¾¹D¦p¦ó¨Ï¥Îtcpdump, ¥¦§i¶D±zªº¬O¤°»ò. ¤£µM,¹ï±z¨Ó»¡µM«×¬Û·í¤j.




\subsubsection{Linux §@·~¨t²Îªº­Ý®eµwÅé}

±z¥²»Ý¦³¹ê»Úªº¾Þ§@¸gÅç, ¨Ã¥B¤£­n¦b¬ÝHOWTOªº®É­Ô¨ì³B¥´½WºÎ. :)








\section{¤°»ò¬OIPv6?}

IPv6¬O·sªº²Ä¤T¼h¶Ç¿é¨óÄ³(°Ñ¦Òhttp://www.linuxports.com/howto/intro\_to\_networking/c4412.htm\#PAGE103HTML),¥¦±N¥Î¨Ó¨ú¥NIPv4(¤]¥s°µIP).

IPv4¬O«Ü¦­¥H«e³]­pªº,²{¦b¹ïIPv4´£¨Ñ§ó¦hªº¦a§}©M©Ê¯à¤è­±¦³µÛ§ó°ªªº­n¨D. 
¦bIPv6¤¤¥D­nªºÅÜ­²¬O­«·s³]­p¤F³øÀY. ¥]¬A±N¦a§}¦ìªº¤j¤p±q32 bits ¼W¥[¨ì 128 bits.
¦]¬°²Ä¤T¼h¶Ç¿é¥D­n­t³dend-to-end(ºÝ¹ïºÝ)°ò©ó¦a§}ªº¼Æ¾Ú¥]¸ô¥Ñ.
¥¦¥²»Ý¥]§t·sªºIPv6¦a§}(¨Ó·½©M¥Ø¼Ð),³oÂI´N¹³IPv4¤@¼Ë.

¤U­±³o­Ó³sµ²´£¨Ñ¤F§ó¦h¦³ÃöIPv6ªº¸ê°T, ©MRFC ªº¨Òªíµ¥µ¥:

http://www.switch.ch/lan/ipv6/references.html






\subsection{IPv6¦bLinux§@·~¨t²Î¤Wªº¾ú¥v}

±N­n°µªº: §ó¦nªº®É¶¡±Æ¦C, §ó¦hªº¤º®e...








\subsection{¶}©l}

²Ä¤@¦¸±N»PIPv6¦³Ãöªº¥N½X¥[¤J Linux kernel 2.1.8 ªº¤u§@¬O¥ÑPedro Roque\\ 
¦b1996¦~11¤ë§¹¦¨ªº. ¥¦°ò©óBSD API:
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
diff -u --recursive --new-file v2.1.7/linux/include/linux/in6.h
 linux/include/linux/in6.h 
--- v2.1.7/linux/include/linux/in6.h Thu Jan 1 02:00:00 1970 
+++ linux/include/linux/in6.h Sun Nov 3 11:04:42 1996 
@@ -0,0 +1,99 @@ 
+/* 
+ * Types and definitions for AF_INET6 
+ * Linux INET6 implementation 
+ * + * Authors: 
+ * Pedro Roque <******> 
+ * 
+ * Source: 
+ * IPv6 Program Interfaces for BSD Systems 
+ * <draft-ietf-ipngwg-bsd-api-05.txt>
 
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}


¥H¤Wªº¥N½X¨Ó¦Ûpatch-2.1.8  (e-mail ¦a§}¦b½Æ»s\&¶K¤W®Éº|±¼¤F)




\subsection{¨ä¶¡}

¦]¬°¯Ê¤Ö¤H¤â, ¦b®Ö¤ß¥[¤JIPv6ªº­p¹º¤£¯à«ö·Ó°Q½×ªº©Î·sªºRFCs°õ¦æ.

¦b2000¦~ªº10¤ë, ¤@­Ó¥s°µUSAGI(http://www.linux-ipv6.org/)ªº­p¹º¦b¤é¥»¥¿¦¡±Ò°Ê. 
¥Ø¼Ð¬O°õ¦æ©Ò¦³¤£¨£¤Fªº, ÀÁ²Lªº(IPv6 support in Linux)­p¹º. 
­p¹ººòÀH KAME project (http://www.kame.net/) ªº¸}¨B. ¨Ì¾Ú vanilla Linux 
®Ö¤ß·½¥N½X¶i¦æ¹E¨Bªº§ï°Ê.






\subsection{²{¦b}

¤£©¯ªº¬O USAGI ªº patch(¸É¤B)«Ü¤j, Linux networking 
ºûÅ@¤H­ûµLªk±N¥¦¥]§t¶i²{¦bLinux 2.4.x ¨t¦Cªº·½¥N½X·í¤¤¥h.
¦]¦¹2.4.x ¥¢¥h¤F¤@¨Ç(¦h¼Æ)¬A®i©Ê, ¨Ã¥B¤£¤ä«ù©Ò¦³·í«eªº³]­p©MRFCs.
³o¾É­P¤F¥¦©M¨ä¥¦§@·~¨t²Î·|²£¥Í¤@¨Ç¨ó¦P°ÝÃD.






\subsection{±N¨Ó}

USAGI ²{¦b¥¿¦b±N·í«eªº¬A®i¥[¤J¨ì Linux 2.5.x ®Ö¤ß·í¤¤. 

§Æ±æ2.6.x ¨t¦C®Ö¤ß¯à¦³¤@­Ó¯u¥¿©M³Ì·sªºIPv6¥\¯à.




\subsection{IPv6 ªº¦a§}·|¬O¤°»ò¼Ë ?}

­è¤~´£¹L, IPv6 ªº¦a§}¦³128 bits ªø. ³o¼Ëªº bits ¥i¥H²£¥Í39­Ó¤Q¶i¦r¼Æ¦r:
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
2^128-1: 340282366920938463463374607431768211455
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}




³o¼Ëªº¦a§}«ÜÃø°O±o¦í. IPv6ªº¦a§}¬O³v¦ì©w¦ìªº(´N¹³IPv4, ¦ý³o­ÓÆ[ÂI¤£¬O¤½»{ªº).
©Ò¥H¤Q¤»¶i¨î¯à§ó¦n¦a¥Nªí³o¨Ç¼Æ¦r, 
4 bits(¤]¥s°µ"nibble")ªí²{¬°¼Æ¦r(0-9)©Î¦r²Å a-f(10-15). 
³oºØ®æ¦¡±NIPv6ªº¦a§}ªø«×ÁY´î¨ì­Ó32¦r²Å.

\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
2^128-1: 0xffffffffffffffffffffffffffffffff
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}




³oºØªí²{§Î¦¡¤´µM«Ü¤£¤è«K. 
(¥i¯à²V²c©Î¿òº|³æ­Ó¤Q¤»¶i¨î¼Æ¦r),
©Ò¥HIPv6ªº³]­pªÌ±N¦a§}§Î¦¡©w¬°¨C16bit´N¥Î":"°Ï¤À¶}¨Ó.
¶}ÀYªº"0x"(¦bµ{¦¡³]­p·í¤¤¥Î¨Óªí¥Ü¤Q¤»¶i¨î¼Æ­È)³Q²¾°£¤F:
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
2^128-1: ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}






¤@­Ó¦³®Äªº¦a§}(µy«á½Ð¬Ý¦a§}Ãþ«¬)¦p¤U:
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
3ffe:ffff:0100:f101:0210:a4ff:fee3:9566
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}




¬°¤FÂ²¤Æ, ¨C­Ó16bit¶}ÀYªº0¥i¥H³Q¬Ù²¤:

\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
3ffe:ffff:0100:f101:0210:a4ff:fee3:9566  -> 
 3ffe:ffff:100:f101:210:a4ff:fee3:9566
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}




³sÄòªº¨Ã¥B¼Æ­È¬°0ªº16bit¦a§}¬q¥i¥H¥Î"::"ªí¥Ü. 
¦ý¬O¤@­ÓIPv6¦a§}·í¤¤¥u¯à¥X²{¤@¦¸, ¤£µM³oºØ¤èªk«O«ù¤£¤F¦h¤[.

\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
3ffe:ffff:100:f101:0:0:0:1  ->  3ffe:ffff:100:f101::1
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}




Â²¤Æ±o³ÌµuªºIPv6 localhost¦a§}:
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
0000:0000:0000:0000:0000:0000:0000:0001  ->  ::1
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}




³oºØ¤èªk¤]¥s°µ compact (base85 coded) representation defined RFC 1924 / 
A IPv6ºò´ê¦a§}ªí¥Üªk(©w©ó1996), ¦ý¨S¦³´£°_¹L, ¨Ò¦p:
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
# ipv6calc --addr_to_base85 3ffe:ffff:0100:f101:0210:a4ff:fee3:9566 
Itu&-ZQ82s>J%s99FJXT
 
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}




¸ê°T: ipv6calc ¬O¤@­ÓIPv6¦a§}®æ¦¡ªº­pºâ©MÂà´«ªº­p¹º,
±z¥i¥H¦b³o¸Ì§ä¨ì: http://www.bieringer.de/linux/IPv6/ipv6calc/






\subsection{FAQ(°òÂ¦)}


\subsubsection{¬°¤°»ò¥sIPv6,¦Ó¤£¯à¦¨¬°IPv4¤§«áªºIPv5 ?}

¦b¥ô¦óIPÀY, «e4bits ¬O¬°¨óÄ³ª©¥»¸¹©Ò«O¯dªº. 
©Ò¥H²z½×¤W¤@­Ó¨óÄ³ªºª©¥»¸¹¦b0©M15¤§¶¡¬O¦³®Äªº:

\begin{itemize}
\item 4 ¤v¸g¬°IPv4©Ò¨Ï¥Î.
\item 5 ¬° Stream ¨óÄ³©Ò«O¯d(STP, RFC 1819 http://rfc.net/rfc1819.html 
¨S¦³¤½¶}¹L)
\end{itemize}


 IPv4¤§«á¥i¥Îªºª©¥»¸¹¬O6, ¦]¦¹ IPv6 ´N³o¼Ë¥¹¥Í¤F!




\subsubsection{IPv6 ¦a§}: ¬°¤°»ò·|¦³³o»òªøªºbits}

¦b³]­pIPv4ªº®É­Ô,¤H­Ì»{¬°32bitªºªø«×¨¬°÷¥þ¥@¬É¨Ï¥Î. ¬Ý¤@¬Ý³o¨Ç¦~, 32bit 
´N²{¦b©M¥¼¨Ó´X¦~¨Ó»¡¬O¨¬°÷ªº. µM¦Ó, 32bits 
¤£¯à¦b±N¨Óº¡¨¬¥þ²y¦UºØºô¸ô³]³Æ¹ïIP¦a§}ªº»Ý¨D. ·Q¤@·Q±N¨Ó­n³sµ²ºô¸ôªº²¾°Ê¹q¸Ü, ¨T¨®(¥]¬A¹q¤lÁ`±±¨t²Î),
¯NÄÑ¥]¾÷,¦B½c, ·Ó©ú¶}Ãö...



©Ò¥H³]­pªÌ±Ä¥Î¤F128bits, ¬O¤µ¤ÑIPv4 ¤j¤p(2\^{}96)»Pªø«×ªº4­¿.



¹ê»Ú¨Ï¥Îªº¤j¤p¥i¯à¤ñ¥¦¬Ý°_¨ÓªºÁÙ­n¤p. ¦]¬°²{¦bªº©w¸q¦a§}³]­p,
64bits ¥Î©óinterface identifiers(¬É­±¼ÐÃÑ).
¥t¥~64bits¥Î©ó¸ô¥Ñ. ±H©ó²{¦bÄY®æªº¼h¼Æ¶°¦X(/48, /35, ...), 
IPv6 ©Ò¯à´£¨Ñªº¦a§}ªÅ¶¡ÁÙ¬O¥i¯à¤£°÷, §Æ±æ³oºØ±¡ªp¤£­n¦b©¹«áªº´X¦~¸Ìµo¥Í.






\subsubsection{IPv6 ¦a§}: ¬°¤°»ò¦b·sªº³]­p¸Ìbits³o»ò¤p?}

ÁöµM, (¥i¯à)¦³¨Ç¤H(¦bInternet¸Ì)¦Ò¼{IPv8©MIPv6,
³]­pµL½×±q±µ¨ü©M°õ¦æ³£¬O¨º»òªº»»»·. 
¦b¦¹¨ä¶¡128bit¹ï©ó³øÀY©M¼Æ¾Ú¶Ç¿é¨Ó»¡¬O³Ì¨Îªº¿ï¾Ü.



¦Ò¼{¨ì¦bIPv4¨½©MIPv6¨½ªº³Ì¤j/³Ì¤p¶Ç¿é³æ¦ì(MTU,¥¦­Ì¤À§O¬O576byte ©M 1280 byte),
IPv4 ªº³øÀY¬O20 byte(³Ì¤p­È,¥i¥H³q¹L½Õ¸`IPv4ªº¿ï¶µ¼W¤j¨ì60byte),
IPv6 ªº³øÀY¬O48 byte(©T©w¤£ÅÜªº), ³øÀY¤À§O¥e¥¦­ÌMTUªº3.4\%©M3.8\%,
³o·N¬NµÛ³øÀY¦û¤F«Ü¤j¤@³¡¤À¶}¾P. §ó¤jbitsªº¦a§}»Ý­n§ó¤jªº³øÀY,¦]¦Ó¦û¾Ú§ó¤jªº¶}¾P.

¦P¼Ë,ÅU¤Î¨ìMTU¥¿±`³sµ²ªº³Ì¤j­È(¹³²{¦bªº¥H¤Óºô):
1500byte(°£¤F¯S§Oªº¦C¤l:9k byte À³¥Î¦b Jumbo frames ·í¤¤).
³Ì²×,¦pªG­n¶Ç¿é¦b²Ä¤T¼h¼Æ¾Ú¥]¤¤¥e10\%©Î20\%³øÀY,
³o¼ËªºIP¦a§}¦b³]­p¤W¤]´N¨S¦³·N¸q¤F.






\section{¦a§}ªºÃþ«¬}


\subsection{¨S¦³«eºóªº¦a§}}


\subsubsection{Localhost ¦a§}}

³o¬O¤@­Ó¯S§O¬°loopback interface(¦^°e¬É­±©ÎÀôÂ¶)©w¸qªº¦a§}, 
´N¹³IPv4ªº "127.0.0.1" ¹ï©óIPv6 localhost address ¬O:
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
0000:0000:0000:0000:0000:0000:0000:0001  
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}




©ÎÁY´î¦¨
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
::1
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}


³o­Ó¦a§}ªº¼Æ¾Ú¥]±N¥¦·í§@host(¥D¾÷)µo°eªº¨Ó·½©M¥Ø¼Ð.




\subsubsection{¥¼«ü©úªº¦a§}}

³o¬O¤@­Ó¦bIPv4·í¤¤ªí¥Ü "©Ò¦³" ©Î"0.0.0.0". ¹ï©óIPv6¬°: 
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
0000:0000:0000:0000:0000:0000:0000:0000 
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}




©ÎªÌ¬O:
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
::
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}




 ³o¨Ç¦a§}¤j¦h ¥Î¦b/Åã¥Ü socket ®¹¸j(¨ì©Ò¦³IPv6¦a§})©Î¸ô¥Ñªí·í¤¤.

ª`·N:¥¼»¡©úªº¦a§}¤£¯à·í¦¨¥Ø¼Ð¦a§}¨Ó¨Ï¥Î.




\subsubsection{´Ó¤J¤FIPv4¦a§}ªºIPv6¦a§}}

¥¦¥]§t¤F¨â­Ó¦a§}¨ä¤¤¤@­Ó¬°IPv4¦a§}.




\subsubsection{IPv4¬M®gIPv6¦a§}}

IPv4-only IPv6-compatible ¬O¥ÑIPv6«á¥x²£¥Íªº¦³®É ¥Î©ó©ÎÅã¥Ü sockets .
¥¦¥u®¹¸jIPv4¦a§}.

³o¨Ç¦a§}³Q©w¸q¬°¾Ö¦³ªø«×¬°96ªº«eºó¯S®í¦a§}(a.b.c.d ¬OIPv4¦a§}):
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
0:0:0:0:0:ffff:a.b.c.d/96
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}




©ÎªÌ¨Ï¥ÎÁY¼g§Î¦¡

\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
::ffff:a.b.c.d/96
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}




³o¨Ç¦a§}¤]¥Î©ó¦Û°Ê¹E¹D, ¤w¸g³Q6to4tunneling¨ú¥N.






\subsection{ºô¸ô³¡¤À,¤]¥s°µ«eºó}

³]­pªÌ©w¸q¨Ã¹w¯d¤F¤@³¡¥÷ªÅ¶¡¥H«K©ó±N¨Ó¹J¨ì¹³²{¦b³o¼Ëªº»Ý¨D.
RFC 2373 {[}July 1998] / IP Version 6 Addressing Architecture
(http://rfc.net/rfc2373.html) ©w¸q¤F²{¦bªº¦a§}³]­p, 
¦ý¤w¸g¦³¤F·sªº¯ó®× (ftp://ftp.ietf.org/internet-drafts/)draft-ietf-ipngwg-addr-arch-*.txt

Åý§Ú­Ì¨Ó¬Ý¤@¤U¤£¦Pªº«eºó©w¸q(©M¦a§}Ãþ«¬):




\subsubsection{³sµ²¥»¦a¦a§}ªºÃþ«¬}

³o¨Ç¦a§}¤£¹ï¥~¬É(Internet)³s±µ¦³®Ä. ¥H³o¨Ç¦a§}¬°¥Ø¼Ðªº¼Æ¾Ú¥]¤£·|³q¹L¸ô¥Ñ¾¹.
³oºØ³sµ²¥Î©ó¥H¤U±¡§Î:

\begin{itemize}
\item ¦P¨ä¥¦¥ô·N¤@­Ó¤]¨Ï¥Î³o­Ó³sµ²ªº¤H¶i¦æ³q°T.
\item ¦P¨ä¥¦¥ô·N¤@­Ó¾Ö¦³¯S®í¦a§}ªº³sµ²¶i¦æ³q°T.(¨Ò¦p´M§ä¸ô¥Ñ)
\end{itemize}


¥¦­Ìªº¦a§}¥Ñ¥H¤U³o¨Ç¶}ÀY("x"¬O¥ô·Nªº¤Q¤»¶i¨î¦r²Å,¤@¯ë¬O"0")
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
fe8x:  <- ¥Ø«e¥u¦³³o­Ó¦b¥Î.
fe9x:
feax:
febx:
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}




¤@­Ó¶}ÀY¬°¥H¤W³o¨Ç«eºóªº¦a§}, ¥ÑIPv6¨S¦³¦b¬É­±«ü©wIP¦a§}ªº®É­Ô³Ð¥ß.

 ¥Ø«e¥u¦³fe80¦b¨Ï¥Î.




\subsubsection{¥»¦a¯¸ÂIªº¦a§}©w¸q}

³o¨Ç¦a§}©MIPv4¬Û¦ü(http://rfc.net/rfc1918.html RFC 1918 / Address Allocation for Private Internets)
¥¦ªºÀu¶Õ: ¥u¥Î16bits ´N¥i¥H©w¸q65536­Ó¤lºô.¦PIPv4ªº10.0.0.0/8¬Û¦ü.



¥t¤@­ÓÀu¶Õ:¦bIPv6ªº¬É­±¤W¥i¥H©w¸q¦h­ÓIP¦a§}, 
¦b¤w¦³¥»¦a¯¸ÂI¦a§}ªº°òÂ¦¤WÁÙ¥i¥H¥[¤W¤@­Óglobal(¥þ§½)¦a§}.



¥¦­Ìªº¦a§}¥Ñ¥H¤U³o¨Ç¶}ÀY("x"¬O¥ô·Nªº¤Q¤»¶i¨î¦r²Å,¤@¯ë¬O"0")
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
fecx:  <- ¤j¦h¼Æ¨Ï¥Î³o­Ó
fedx:
feex:
fefx:
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}





\subsubsection{Global(¥þ§½)¦a§}Ãþ«¬ "(Aggregatable) global unicast"¥i»E¦Xªº¥þ§½°ß¤@¦a§}.}

¤µ¤Ñ,¥u¦³¤@­Ó¥þ§½¦a§}Ãþ«¬ªº©w¸q(²Ä¤@­Ó³]­p,¤]¬O¦h¦~¥H¨Ó¤@ª½¨Ï¥Îªº¥s°µ
"provider based," \onlynameurl{RFC 1884 / IP Version 6 Addressing Architecture [obsolete]})
±z¯à¦b¦­´Áªº®Ö¤ß·½¥N½X¤¤§ä¨ì¤@¨Ç.

¥¦­Ìªº¦a§}¥Ñ¥H¤U³o¨Ç¶}ÀY("x"¬O¥ô·Nªº¤Q¤»¶i¨î¦r²Å,¤@¯ë¬O"0")
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
2xxx: 
3xxx:
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}




ª`·N: «eºó"aggregatable" ³Q·í«eªº¯ó®×©ß±ó¤F.
¤U­±¦³¤@¨Ç§ó¦³·N¸qªº¤lÃþ«¬©w¸q:


\paragraph{6bone test addresses}

³o¨Ç¬O³Ìªì©w¸q©M¨Ï¥Îªº¥þ§½¦a§}. ¥¦­Ìªº¶}ÀY¬O
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
3ffe:
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}




¨Ò¤l
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
3ffe:ffff:100:f102::1
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}




¤@­ÓµL°ß¤@¥þ§½¤Æªº¯S§O6bone¨Ò¤l
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
3ffe:ffff:100:f102::1
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}




³o¨Ç¥D­n³£¬O¨Ò¤l, ¦]¬°¦pªG¨Ï¥Î¯u¹êªº¦a§},¥i¯à·|¦³¨Ç¤H±N¥¦«þ¨©\&¶K¤W 
¨ì¥L­Ì¦Û¤vªº°t¸m¤¤¥h. ±q¦Ó¤£ª`·N¦a½Æ»s¤F¥þ§½°ß¤@¦a§},
³o¼Ë·|¾É­P­ì¨Ó¾Ö¦³³o­Ó¦a§}ªº¥D¾÷²£¥Í¤@¨Ç°ÝÃD(¤ñ¦p,½Ð¨Dªº¦^À³¥]¤£·|³Qµo°e.)
±z¥i¥H±q³o¨Ç«eºó·í¤¤¥Ó½Ð¤@­Ó,
¬Ý³o¸Ì: "¦p¦ó¥[¤J6bone" ¤]¦³¤@¨Ç¦b tunnel brokers 
¥L­Ìµo§G¥Î©ó´ú¸Õ6bone ªº¦a§}«eºó.




\paragraph{6to4 ¦a§}}

³o¨Ç¦a§}¬O¬°¯S§Otunneling¾÷¨î³]­pªº. 
\onlynameurl{[RFC 3056 / Connection of IPv6 Domains via IPv4 Clouds}
©M \onlynameurl{RFC 2893 / Transition Mechanisms for IPv6 Hosts and Routers]},
µ¹IPv4¦a§}©M¥i¯àªº¤lºô½s½X¨Ã¥HÃþ¦ü¤U­±ªº§Î¦¡¶}ÀY:
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
2002:
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}




¨Ò¤l,­«·s¹ï192.168.1.1/5½s½X:

\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
2002:c0a8:0101:5::1
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}




³o­Óshell©R¥O±NÀ°§U±z¥Î¤@­ÓIPv4¦a§}²£¥Í³o¼Ëªº¦a§}:
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
ipv4="1.2.3.4"; sla="5"; printf "2002:%02x%02x:%02x%02x:%04x::1" `echo $ipv4 | tr "." " "` $sla
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}




°Ñ·Ótunneling using 6to4 and information about 6to4 relay routers.




\subsubsection{±q¤À¯Å¸ô¥Ñ¤À°t¨ìªº¦a§}}

³o¨Ç¦a§}¤À°tµ¹InternetªA°È¨Ñ°Ó(ISP)¨Ã¥B¦³Ãþ¦ü¦p¤Uªº¶}ÀY:
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
2001:
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}




¥DISP(¾Ö¦³°©·Fºô¸ô)ªº«eºó¬O¥Ñlocal registries¤À°tªº,
¨Ã¥B²{¦b¥L­Ì¤À°tªº«eºóªø«×¬°35.

¥DISPs³q±`¤À°tµ¹¤U¯ÅISPsªº«eºóªø«×¬°48.




\subsubsection{Multicast addresses(¦hÂI¶Ç°eªº¦a§})}

Multicast addresses À³¥Î©óªA°È·í¤¤.

¥¦­ÌÁ`¬O¦³¦P¤U­±¬ÛÃþ¦üªº¶}ÀY(xx¬O½d³ò­È)

\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
ffxy:
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}




¥¦­Ì¦³µÛ¤£¦Pªº½d³ò©MÃþ«¬:




\subsubsection{Multicast scopes(¦hÂI¶Ç¹F°e½d³ò)}

Multicast scope ¬O¥Î¨Ó©w¸qµo°e¹êÅéªºmulticast ¼Æ¾Ú¥]¦³®Ä³Ì»·¶Ç¿é­Èªº°Ñ¼Æ.



³q±`,¤U­±ªº½d³ò¤w¸g³Q©w¸q:
\begin{itemize}
\item ffx1: ¥»¦a¸`ÂI, ¼Æ¾Ú¥]¤£·|Â÷¶}¸`ÂI.
\item ffx2: ¥»¦a³sµ², ¼Æ¾Ú¥]¤£·|³Q¸ô¥Ñ,©Ò¥H¥¦­Ì¤£·|Â÷¶}³o­Ó¯S§Oªº³sµ².
\item ffx5: ¥»¦a¯¸ÂI, ¼Æ¾Ú¥]¤£·|Â÷¶}¯¸ÂI.
\item ffx8: ¥»¦a²ÕÂ´, ¼Æ¾Ú¥]¤£·|Â÷¶}²ÕÂ´(°õ¦æ°_¨Ó¤£¨º»ò®e©ö,¥²¶·¨Ì¾a¸ô¥Ñ¨óÄ³) 
\item ffxe: ¥þ§½½d³ò.
\item ¨ä¥¦ªº³£³Q«O¯d
\end{itemize}





\subsubsection{Multicast(¦hÂI¶Ç°e)Ãþ«¬}

 ³\¦hÃþ«¬³£¤w¸g©w¸q/«O¯d(²Ó¸`½Ð°Ñ·Ó\onlynameurl{ RFC 2373 / IP Version 6 Addressing Architecture}).
³o¸Ì¦³¤@¨Ç¨Ò¤l:
\begin{itemize}
\item ©Ò¦³¸`ÂI¦a§}: ID=1h, ©Ò¦³¥»¦a¸`ÂI¥D¾÷ªº¦a§}(ff01:0:0:0:0:0:0:1)
©Î¤w³s±µ¦nªº¦a§}(ff02:0:0:0:0:0:0:1).
\item ©Ò¦³¸ô¥Ñ¦a§}:ID=2h,©Ò¦³¥»¦a¸`ÂIªº¸ô¥Ñ¦a§}(ff01:0:0:0:0:0:0:2), ¤w³s±µªº(ff02:0:0:0:0:0:0:2),
©Î¥»¦a¯¸ÂI(ff05:0:0:0:0:0:0:2).
\end{itemize}



\subsubsection{Solicited node link-local multicast address(¥»¦a¦h¼½½Ð¨Dªº¸`ÂI¦a§})}

¦bneighborhood discovery(¦h¼½µo²{)¤¤·í¦¨¥Ø¼Ð¦a§}¨Ï¥Îªº¯S§O¦h¼½¦a§}.
»PIPv4¤£¦P,ARP(¦a§}¸ÑªR¨óÄ³)±N¤£¦bIPv6¤¤¨Ï¥Î.

¨Ò¤l:
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
ff02::1:ff00:1234
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}




¨Ï¥Î«eºóªí¥Ü¥¦¬O¤@­Ó¥»¦a¦h¼½¦a§}, «áºó¥Ñ¥Ø¼Ð¦a§}²£¥Í.
³o­Ó¨Ò¤l·í¤¤±N¦³¤@­Ó¼Æ¾Ú¥]µo©¹"fe80::1234", ¦ý¬Oºô¸ô°ï´Ì¨Ã¤£ª¾¹D²Ä¤G¼hªºMAC(¦h´CÅé³q¸ô).
¥¦±N¤W³¡¥÷ªº104 bits §ó§ï¬° "ff02:0:0:0:0:1:ff00::/104" ¤U³¡¤À24 bits ¤£ÅÜ.
²{¦b³o­Ó¦a§}¥Hon-link(¦b½u)ªº§Î¦¡´M§ä¬ÛÀ³ªº¸`ÂI(³o­Ó¸`ÂIÀ³·íµo°e¤F¥]§t¦³²Ä¤G¼h MAC ¦a§}ªº¦^À³¥])




\subsubsection{Anycast addresses(ÀH¼½¦a§})}

Anycast addresses¬O¤@­Ó¯S§Oªº¦a§}, ¥¦¥Î©ó¾FªñªºDNS©ÎDHCPªA°È, ©Î¥Î©ó¬Û¦üªºdynamic groups(°ÊºA²Õ¸s).
¦a§}±q unicast address (³æ¼½¦a§}aggregatable global or site-local at the moment)ªÅ¶¡¤¤¨ú±o.
ÀH¼½¦a§}ªº¾÷¨î(±q«È¤áºÝªºÆ[ÂI¨Ó¬Ý)¥Ñ°ÊºA¸ô¥Ñ¨óÄ³±±¨î.

ª`·N:ÀH¼½¦a§}¤£¯à¦¨¬°§@¬°¨Ó·½¦a§}, ¥¦¥²»Ý¥H¥Ø¼Ð¦a§}ªº¨­¥÷¥X²{.




\subsubsection{Subnet-router Anycast addresses(¤lºô¸ôÀH¼½¸ô¥Ñ¾¹)}

¤@­ÓSubnet-router Anycast addressesªº¨Ò¤l.
°²³]¤@­Ó¤À°t¤F¦p¤UIPv6¦a§}ªº¸`ÂI:
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
3ffe:ffff:100:f101:210:a4ff:fee3:9566/64  <- ¸`ÂIªº¦a§}
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}




Subnet-router±N¨Ï¥Î¨S¦³«áºóªº¦a§} (least significant 64 bits):
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
3ffe:ffff:100:f101::/64  <- subnet-router anycast address
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}





\subsection{¦a§}Ãþ«¬(¥D¾÷)}

¦]¬°¦Û°Êªº°t»s/ÀH¾÷¤À°t,¦b·í«eªº¦a§}Ãþ«¬¤¤¥D¾÷¨Ï¥Î§ó§Cªº 64 bits¦a§}.
¦]¦¹¨C­Ósubnet(¤lºô)¥i¥H¾Ö¦³¤j¶qªº¦a§}.



¥D¾÷ªº¦a§}¤À°t¥i¥H¦³¦p¤U´XºØ§Î¦¡:




\subsubsection{¦Û°Ê¤À°t(also known as stateless)}

¦b¦Û°Ê¤À°t·í¤¤,¥D¾÷ªº¦a§}¥Ñ¬É­±ªºMAC¦a§}¨M©w.
¨Ï¥ÎEUI-64¤èªk,«ü©w¤@­ÓIPv6 ¦a§}. ¦pªG¨S¦³¥i¥ÎªºMAC(¦p:µêÀÀ³]³Æ),
´N¥Î¨ä¥¦ªº¥N´À(¦pIPv4¦a§}©Îª«²z¬É­±ªºMAC¦a§})

¦A¬Ý¤@¤U«e­±ªº¨Ò¤l:
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
3ffe:ffff:100:f101:210:a4ff:fee3:9566
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}




³o¸Ì:
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
210:a4ff:fee3:9566 
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}


¥D¾÷¦a§}¥ÑNICªºMAC¦a§}¨M©w:
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
00:10:A4:E3:95:66 
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}


¥Î\onlynameurl{IEEE-Tutorial EUI-64 } §@¬°EUI-48 ªº¼ÐÃÑ²Å.




\subsubsection{¦Û°Ê¤À°t±a¨ÓªºÁô¨p°ÝÃD}

¦]¬°¦Û°Ê¤À°tªº¬O°ß¤@¦a§},«È¤áºÝ¦b¤£³q¹L¥ô¦ó¥N²zªº±¡ªp¤U®e©ö³Q¸òÂÜ.
³o¬O­Ó¤½»{ªº°ÝÃD,¥¦ªº¸Ñ¨M¤èªk¬O:privacy extension,©w¸q©ó
\onlynameurl{RFC 3041 / Privacy Extensions for Stateless Address Autoconfiguration in IPv6} 
³o¸Ì¤]¦³¤@­Ó¯ó®×:\onlynameurl{draft-ietf-ipngwg-temp-addresses-*.txt} ¨Ï¥Î¤£¦PªºÀRºA¼Æ­È,
¨C¦¸²£¥Í¤@­Ó·sªº«áºó. ª`·N: ¥u¹ïclient ªº³s±µ¦³®Ä, ¹ï©óservers ¨S¦³¤°»ò¥Î³B.




\subsubsection{¤â°Ê³]©w}

¹ï©óservers¨Ó»¡, ¤j·§«Ü®e©ö°O°_Â²³æªº¦a§}.
¦P®É¤]¥i¥H¦V¥¦ªº¬É­±²K¥[¤@­ÓIPv6¦a§}:
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
3ffe:ffff:100:f101::1
 
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}


¤â°Ê³]©wªº«áºó¬°"::1",¨Ò¤l·í¤¤³Ì­«­nªº²Ä6 bits³]©w¬°"0", ¥¦¬°anycast addresses(¥ô·N¶Ç°e¦a§})«O¯d
(the universal/local bit of the automatically generated identifier).


\subsection{¸ô¥Ñªº«eºóªø«×}

¦b¦­´Á³]­p¶¥¯Å,¨Ï¥Î§¹¥þ¤ÀÂ÷ªº¸ô¥Ñ¤À¯Å¨Ó³Ì¤j¼h«×¦aÁY¤p¸ô¥Ñªí.
½×ÃÒªº¤èªk¬O¨Ï¥Î·í«eIPv4ªº®Ö¤ß¸ô¥Ñ¼Æ¥Ø({$>$} 104 thousand in May 2001)
´î¤ÖµwÅé°O¾ÐÅéªº»Ý¨D¨Ó±±¨î¸ô¥Ñªí©M³t«×(¸û¤Öªº­Ó¼Æ¨Ï¬d§ä³t«×¥[§Ö).




\subsubsection{«eºóªø«×(¤]¥s°µ¤lºô¸ô¾B¸n)}

¦PIPv4¬Û¦ü, ºô¸ô²£¥Í¥i¸ô¥Ñªº¸ô®|.
¦]¬°128 bits¼Ð·Çªºnetmasks ¬Ý°_¨Ó¤£«ç»ò¼Ë. ³]­pªÌ­ÉÅ³¤FIPv4ªº­·®æ:
Classless Inter Domain Routing (CIDR\onlynameurl{RFC 1519 / Classless Inter-Domain Routing})
¥¦­Ì¬O¥Î©óIP¦a§}¸ô¥Ñªºbits¸¹½X.
¤]¥s°µ"/"



¨Ò¤l:
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
3ffe:ffff:100:1:2:3:4:5/48
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}




¥¦­Ì¥i¥H³QÂX®i¦¨:
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
ºô¸ô:
3ffe:ffff:0100:0000:0000:0000:0000:0000
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}




\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
¤lºô¸ô¾B¸n:
ffff:ffff:ffff:0000:0000:0000:0000:0000
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}





\subsubsection{Matching a route(¸ô¥Ñ¤Ç°t)}

¦b¤@¯ë±¡ªp¤U(no QoS),
¦b¸ô¥Ñªí¸Ì¬d§ä¤@­Ó­«­nªº¦a§}¼Æ­È·N¨ýµÛ¸ô¥Ñ«eºóªºªø«×¥²»Ý¥ý¤Ç°t.

¨Ò¤l, ¦pªG¸ô¥Ñªí¹³¤U­±¨º¼Ë(²M³æ¥¼§¹¥þ¨Ò¥X):
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
3ffe:ffff:100::/48     ::            U  1 0 0 sit1 
2000::/3               ::192.88.99.1 UG 1 0 0 tun6to4
 
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}




IPv6ªº¥Ø¼Ð¦a§}±N³Q¤U­±ªº³]³Æ¸ô¥Ñ:
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}

3ffe:ffff:100:1:2:3:4:5/48  ->  routed through device sit1
3ffe:ffff:200:1:2:3:4:5/48  ->  routed through device tun6to4
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}
 




\section{·Ç³ÆIPv6ªº¹B¦æ¨t²Î}


\subsection{IPv6-ready kernel}

²{¦bªºLinuxµo¦æª©ªº®Ö¤ß³£¨ã³Æ¤F¹B¦æIPv6ªº±ø¥ó. 
IPv6¥\¯à³Q½sÄ¶¦¨¤@­Ó¥i¸ü¤J¼Ò²Õ. ¦b¤@¯ë±¡ªp¤U¼Ò²Õ¤£·|¦b¶}¾÷ªº®É­Ô¦Û°Ê¸ü¤J.

°Ñ·Ó§ó·sªº¸ê°T: \onlynameurl{ IPv6+Linux-Status-Distribution}


\subsubsection{ÀË¹î²{¦bªº¨t²Î¬O§_¤ä«ùIPv6}

ª`·N±zªº/proc-file-system.¥²»Ý¦³¦p¤Uªºµ²ºc:

\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
/proc/net/if_inet6
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}
 



 ¤@­ÓÂ²³æªº´ú¸Õ:
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
# test -f /proc/net/if_inet6 && echo "Running kernel is IPv6 ready"
 
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}
 

¦pªG¥¢±Ñ, ªí©ú¼Ò²Õ¨S¦³¸ü¤J.




\subsubsection{¸ÕµÛ¸ü¤J¼Ò²Õ}

°õ¦æ¸ü¤J¼Ò²Õªº©R¥O:

\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
# modprobe ipv6
  
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}
 



¦pªG¦¨¥\, ¼Ò²Õ·|¦b¦Cªí¤¤Åã¥Ü,°õ¦æ¦p¤U©R¥O:

\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
# lsmod |grep -w 'ipv6' && echo "IPv6 module successfully loaded"
 
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}
 




\subsubsection{Åý¼Ò²Õ¦Û°Ê¸ü¤J}

¼Ò²Õ¬O¥i¥H¦Û°Ê¸ü¤Jªº,¥u­n¦b®Ö¤ß¼Ò²Õ³]©w¤å¥ó( /etc/modules.conf ©Î /etc/conf.modules)¤¤¥[¤J:
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
alias net-pf-10 ipv6  # automatically load IPv6 module on demand
 
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}
 



¤]¥i¥HÃö±¼IPv6¼Ò²Õªº¦Û°Ê¸ü¤J:
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
alias net-pf-10 off   # disable automatically load of IPv6 module on demand
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}
 




\subsubsection{½sÄ¶¦³ IPv6 ¥\¯àªº®Ö¤ß}

¦pªG¥H¤W¨â­Óµ²ªG³£ÃÒ¹ê¤F®Ö¤ß¤£¨ã¦³IPv6¥\¯à, ±z¥i¥H¦³¦p¤U¿ï¾Ü:
\begin{itemize}
\item ¤É¯Å¦¨¥~¥]¸Ë¦³IPv6¤ä«ù»¡©úªºLinuxµo¦æª©(±ÀÂË·s¤â¨Ï¥Î)¦A¬Ý¤@¤U³o¸Ì:
\onlynameurl{ IPv6+Linux-Status-Distribution}
\item ½sÄ¶¤@­Ó·sªºvanilla®Ö¤ß(¦pªG±zª¾¹D¸Ó«ç»ò¿ï¾Ü,·|¤ñ¸ûÂ²³æ).
\item ­«·s½sÄ¶±z²{¦b¾Ö¦³ªºµo¦æª©®Ö¤ß(¤£¤Ó®e©ö).
\item ±N®Ö¤ß¦P USAGI ªºÂX®i¤@°_½sÄ¶.
\end{itemize}


¦pªG±z¨M©w½sÄ¶¤@­Ó®Ö¤ß,±z¥²»ÝÅª¹L\onlynameurl{Linux Kernel HOWTO}.
¥H¤Î³o¤è­±ªº¸gÅç.

ª`·N:±z¥²»Ý¨Ï¥Î®Ö¤ß2.4.x¨t¦C©Î§ó°ª. ¦]¬°IPv6¹ï2.2.x¨t¦C¯Ê¤Ö¬ÛÀ³ªº¤ä«ù.
¨Ã¥B»Ý­nICMPv6 ©M 6to4 ¤ä«ùªº¸É¤B.(¸É¤B¥i¥H¦b\onlynameurl{ kernel series 2.2.x IPv6 patches}§ä¨ì).


\subsubsection{±N®Ö¤ß¦P USAGI ªºÂX®i¤@°_½sÄ¶.}

¥u±ÀÂË¼ô±x®Ö¤ß½sÄ¶©MIPv6ªº¥Î¤á¨Ï¥Î. °Ñ·Ó:
\onlynameurl{USAGI project / FAQ}.




\subsubsection{IPv6-ready network devices}

¤£¬O©Ò¦³ªº³]³Æ³£¦³¯à¤O¶Ç¿éIPv6¼Æ¾Ú¥], ³o¸Ì¦³¤@­Ó²{ª¬ªí:
\onlynameurl{IPv6+Linux-status-kernel.html\#transport}.




\subsubsection{²{¶¥¬q¤£·|¤ä«ùIPv6ªº³sµ²}

\begin{itemize}
\item Serial Line IP (SLIP,\onlynameurl{RFC 1055}), should be better called now to SLIPv4, device named: slX
\item Parallel Line IP (PLIP), same like SLIP, device names: plipX
\item ISDN with encapsulation rawip, device names: isdnX
\end{itemize}





\subsubsection{¦b±N¨Ó³£¤£·|¤ä«ùIPv6ªº³]³Æ}

\begin{itemize}
\item ISDN with encapsulation syncppp, device names: ipppX (design issue of the ipppd, will be merged into more general PPP layer in kernel series 2.5.x)
\end{itemize}





\subsection{IPv6-ready ºô¸ô³]©w¤u¨ã}

§O§è¤Ó»·¤F, ¦pªG±z¦³¤@­Ó¥¿¦b¹B¦æIPv6ªº®Ö¤ß,«ç»ò·|¨S¦³³]©wªº¤u¨ã©O?
¦w¸Ë¥]¸Ì¦­´N¦³´X­Ó³o¼Ëªº¤u¨ã¤F.




\subsubsection{net-tools package}

net-tools package ¥]§t¤@¨Ç¤u¨ã¦p: ifconfig ,route. ³o¨Ç¥i¥H¥O±z¦b¬É­±¤W³]©wIPv6.
¦b©R¥O¦æ(shell) ¥Îifocnig -? ©Î route -? ¬d¬Ý½Ñ¦pIPv6 ©Î inet6.¦pªG¦³,«h»¡©ú¨ã³ÆIPv6³]©w¯à¤O.



¿é¤J¥H¤U©R¥O¶i¦æÀË¬d:
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
# /sbin/ifconfig -? 2>& 1|grep -qw 'inet6' && echo "utility 'ifconfig' is
?IPv6-ready"
 
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}




¤]¥i¥H¨Ï¥Îroute:
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
# /sbin/route -? 2>& 1|grep -qw 'inet6' && echo "utility 'route' is IPv6-ready"
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}





\subsubsection{iproute package}

Alexey N. Kuznetsov (Linux ºô¸ô¥N½X²{¶¥¬qªººûÅ@ªÌ)
¼g¤F¤@­Ótool-set¥i¥H³q¹Lnetlink ³]³Æ¨Ó³]©wºô¸ô.¥¦¥i¥H¤ñnet-tool´£¨Ñ§ó¦hªº¥\¯à,
¦ý¨S¦³¦h¤Ö¤åÀÉ¨Ã¥B¥¦¤£¬O¬°Áx¤pªº¤H³]­pªº. 

\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
# /sbin/ip 2>&1 |grep -qw 'inet6' && echo "utility 'ip' is IPv6-ready"
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}




¦pªG¨S¦³§ä¨ì /sbin/ip ¨º»ò§Ú·¥¤O±ÀÂË±z¦w¸Ëiproute package. 
\begin{itemize}
\item ¥i¥H¦b±zªºµo¦æª©¤¤§ä¨ì(¦pªG¦³ªº¸Ü)
\item ¦b\onlynameurl{Original FTP source}¤U¸ü¨Ã½sÄ¶¥¦.
\item ª½±µ¥i¥H¦w¸ËªºRPM¥]: \onlynameurl{ RPMfind/iproute}
(±ÀÂË½sÄ¶ SRPMS )
\end{itemize}



\subsection{IPv6-ready ´ú¸Õ/½Õ¦¡ µ{¦¡}

¦b¬°IPv6·Ç³Æ¦n¤F¨t²Î«á,±z¥i¥H¥ÎIPv6¶i¦æºô¸ô³q°T. 
­º¥ý±z¥²»Ý¾Ç²ß¦p¦ó¥Î¶å±´µ{¦¡¨ÓÀË¬dIPv6¼Æ¾Ú¥].
±j¯P±ÀÂË³o¼Ë°µ,¦]¬°¦bdebugging/troubleshooting ¤¤¦³§Q©ó§Ö³t¶EÂ_.




\subsubsection{IPv6 ping}

³o­Óµ{¦¡¤@¯ë¦biputils¥]¸Ì, ¥Î¨Ó´ú¸ÕÂ²³æ¶Ç¿éµo°e
ICMPv6 ¦^À³½Ð¨D¨Ãµ¥«ÝICMPv6 ¦^À³¥].



¥Îªk:
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
# ping6 < hostwithipv6address >
# ping6 < ipv6address >
# ping6 [-I < device >] < link-local-ipv6address > 
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}




¨Ò¤l:
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
# ping6 -c 1 ::1 
PING ::1(::1) from ::1 : 56 data bytes 
64 bytes from ::1: icmp_seq=0 hops=64 time=292 usec
--- ::1 ping statistics --- 
1 packets transmitted, 1 packets received, 0% packet loss 
round-trip min/avg/max/mdev = 0.292/0.292/0.292/0.000 ms
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}


´£¥Ü ping6¥²»Ý¦³¾A·íªºrootÅv­­¤~¯à¨Ï¥Î,
¦pªG¤£¬Oroot²Õ¥Î¤á,¨Ï¥Î®É¥i¯à²£¥Í°ÝÃD:

1.ping6 ¤£¦b¥Î¤áªº¸ô®|·í¤¤
(probably, because ping6 is generally stored in /usr/sbin -{$>$} add path (not really recommended)



2.ping6 ¤£¯à³Q¥¿½T°õ¦æ, ³q±`¨S¦³¾A·íªºÅv­­  chmod u+s /usr/sbin/ping6




\subsubsection{¬°ping6«ü©w¬É­±}

¥Îlocal-addresses §@¬°ping6 ¥Ø¼Ð¥²»Ý«ü©w¤@­Ó¬É­±. §_«h®Ö¤ß±N¤£ª¾¹D¼Æ¾Ú¥]µo©¹­þ­Ó³]³Æ.
¦b¨S¦³«ü©wªº±¡ªp¤U·|¦³³o¼Ëªº¿é¥X:
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
# ping6 fe80::212:34ff:fe12:3456 
connect: Invalid argument
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}




¬°ping6«ü©w¬É­±ªºµ²ªG:
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
# ping6 -I eth0 -c 1 fe80::2e0:18ff:fe90:9205 
PING fe80::212:23ff:fe12:3456(fe80::212:23ff:fe12:3456) from
?fe80::212:34ff:fe12:3478 eth0: 56 data bytes 
64 bytes from fe80::212:23ff:fe12:3456: icmp_seq=0 hops=64 time=445 usec
--- fe80::2e0:18ff:fe90:9205 ping statistics --- 
1 packets transmitted, 1 packets received, 0% packet loss round-trip
?min/avg/max/mdev = 0.445/0.445/0.445/0.000 ms
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}





\subsubsection{Ping6 to multicast addresses(¦h¼½¦a§})}

¤@­Óµo²{IPv6-active hosts ªº¤ñ¸û¦³½ìªº¾÷¨î:
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
# ping6 -I eth0 ff02::1 PING ff02::1(ff02::1) from fe80:::2ab:cdff:feef:0123 eth0: 56 data bytes
64 bytes from ::1: icmp_seq=1 ttl=64 time=0.104 ms
64 bytes from fe80::212:34ff:fe12:3450: icmp_seq=1 ttl=64 time=0.549 ms (DUP!) 
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}


»PIPv4¤£¦Pªº¬O, ping ªº¦^À³¦b¼s¼½¦a§}¤¤¬O¥i¥H«Ì½ªªº,¥Ø«e¥u¦³IPv6¨¾¤õÀð¥i¥H°µ¨ì.




\subsubsection{IPv6 traceroute6}

³o­Óµ{¦¡¤@¯ë¦biputils¥]¸Ì, ©MIPv4ªºtracerouteµ{¦¡¬Û¦ü,
¦ý»P·í«eª©¥»¤£¦Pªº¬OIPv6¤£¯à¥¿½T¦a¨Ï¥ÎICMP echo-request. ¬Ý¤U­±³o­Ó¨Ò¤l:
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
# traceroute6 www.6bone.net 
traceroute to 6bone.net (3ffe:b00:c18:1::10) from 3ffe:ffff:0000:f101::2, 30
?hops max, 16 byte packets 
 1 localipv6gateway (3ffe:ffff:0000:f101::1) 1.354 ms 1.566 ms 0.407 ms 
 2 swi6T1-T0.ipv6.switch.ch (3ffe:2000:0:400::1) 90.431 ms 91.956 ms 92.377 ms 
 3 3ffe:2000:0:1::132 (3ffe:2000:0:1::132) 118.945 ms 107.982 ms 114.557 ms 
 4 3ffe:c00:8023:2b::2 (3ffe:c00:8023:2b::2) 968.468 ms 993.392 ms 973.441 ms 
 5 3ffe:2e00:e:c::3 (3ffe:2e00:e:c::3) 507.784 ms 505.549 ms 508.928 ms 
 6 www.6bone.net (3ffe:b00:c18:1::10) 1265.85 ms * 1304.74 ms
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}





\subsubsection{IPv6 tracepath6}

³o­Óµ{¦¡¤@¯ë¦biputils¥]¸Ì, ¥¦¥Î¨Ó°lÂÜMTUªº¸ô®|.¬Ý¤U­±ªº¨Ò¤l:
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
# tracepath6 www.6bone.net 
 1?: [LOCALHOST] pmtu 1480 
 1: 3ffe:401::2c0:33ff:fe02:14 150.705ms 
 2: 3ffe:b00:c18::5 267.864ms 
 3: 3ffe:b00:c18::5 asymm 2 266.145ms pmtu 1280 
 3: 3ffe:3900:5::2 asymm 4 346.632ms 
 4: 3ffe:28ff:ffff:4::3 asymm 5 365.965ms 
 5: 3ffe:1cff:0:ee::2 asymm 4 534.704ms 
 6: 3ffe:3800::1:1 asymm 4 578.126ms !N 
Resume: pmtu 1280
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}







\subsubsection{IPv6 tcpdump}

¦bLinux§@·~¨t²Î¤¤ tcpdump ¬O¥D­nªº¼Æ¾Ú¥]®·Àò¤u¨ã.IPv6¤ä«ù 3.6 ªºª©¥».

tcpdump¥Î©ó­°§C¼Æ¾Ú¥]Âø°Tªº°Ñ¼Æ:
\begin{itemize}
\item icmp6: ¹LÂo¥»¦aICMPv6³q°T.
\item ip6: ¹LÂo¥»¦aIPv6³q°T.(¥]¬A ICMPv6)
\item proto ipv6: filters tunneled IPv6-in-IPv4 traffic
\item not port ssh: ¦b»·µ{SSH·|¸Ü¤¤¸T¤îSSH¼Æ¾Ú¥]ªºÅã¥Ü.
to suppress displaying SSH packets for running tcpdump in a remote SSH session
\end{itemize}




¨Ï¥Î©R¥O¦æ°Ñ¼Æ¤]¥i¥H±q¤@­Ó¼Æ¾Ú¥]¤¤®·Àò/¦C¦L¸ê°T.
\begin{itemize}
\item "-s 512": ¼W¥[®·Àò­­©w¬°512 bytes.
\item "-vv": ¸Ô²Ó¦C¦L.
\item "-n": ¤£±N¦a§}Âà´«¦¨¦WºÙ,¦b¦WºÙªA°È¦³°ÝÃD®É¥i¥H¥Î¨ì.
\end{itemize}





\subsubsection{IPv6 ping to 3ffe:ffff:100:f101::1 native over a local link}

\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
 # tcpdump -t -n -i eth0 -s 512 -vv ip6 or proto ipv6 
tcpdump: listening on eth0 
3ffe:ffff:100:f101:2e0:18ff:fe90:9205 > 3ffe:ffff:100:f101::1: icmp6: echo
?request (len 64, hlim 64) 
3ffe:ffff:100:f101::1 > 3ffe:ffff:100:f101:2e0:18ff:fe90:9205: icmp6: echo
?reply (len 64, hlim 64)
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}





\subsubsection{IPv6 ping to 3ffe:ffff:100::1 routed through an IPv6-in-IPv4-tunnel}

1.2.3.4©M5.6.7.8¬O¹E¹Dªº²×ÂI(³o¨Ç³£¬O¨Ò¤l).
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
# tcpdump -t -n -i ppp0 -s 512 -vv ip6 or proto ipv6 
tcpdump: listening on ppp0 
1.2.3.4 > 5.6.7.8: 2002:ffff:f5f8::1 > 3ffe:ffff:100::1: icmp6: echo request
?(len 64, hlim 64) (DF) (ttl 64, id 0, len 124) 
5.6.7.8 > 1.2.3.4: 3ffe:ffff:100::1 > 2002:ffff:f5f8::1: icmp6: echo reply (len
?64, hlim 61) (ttl 23, id 29887, len 124) 
1.2.3.4 > 5.6.7.8: 2002:ffff:f5f8::1 > 3ffe:ffff:100::1: icmp6: echo request
?(len 64, hlim 64) (DF) (ttl 64, id 0, len 124) 
5.6.7.8 > 1.2.3.4: 3ffe:ffff:100::1 > 2002:ffff:f5f8::1: icmp6: echo reply (len
?64, hlim 61) (ttl 23, id 29919, len 124)
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}





\subsection{IPv6-ready programs(¯à©MIPv6¨ó¦P¤u§@ªºµ{¦¡)}

¦b·í«eªºµo¦æª©¤¤¤w¸g¥]§t¤F¯à©MIPv6¨ó¦P¤u§@ªºµ{¦¡(ªA°ÈºÝ/«È¤áºÝ)\\ 
°Ñ·Ó:\onlynameurl{ IPv6+Linux-Status-Distribution}.\\ 
©ÎªÌÀË¬d\onlynameurl{http://www.bieringer.de/linux/IPv6/status/IPv6+Linux-status-apps.html}\\ 
¤@¨Ç¥i¥Îµ{¦¡ªº½u¯Á:
\onlynameurl{IPv6 \& Linux - HowTo - Part 3}©Î
\onlynameurl{IPv6 \& Linux - HowTo - Part 4}.




\subsection{IPv6-ready «È¤áºÝµ{¦¡ (selection)}

·Q­n¶i¦æ¤U­±ªº´ú¸Õ, ±zªº§@·~¨t²Î¥²»Ý¾Ö¦³IPv6¯à¤O. ¦³¨Ç¨Ò¤l¬O¯u¹ê¦a³sµ²¤F6boneªº±¡ªp¤U°µªº.




\subsubsection{ÀË¬dDNS¹ïIPv6¦a§}ªº¸ÑªR¯à¤O}

¦]¬°³o´X¦~Domain Name System (DNS)¦w¥þªº¤£Â_¤É¯Å, ¥¦­Ì¤¤ªº¤j³¡¥÷³£¨ã³Æ¤F¹ïIPv6 ¦a§}Ãþ«¬AAAAªº¸ÑªR¯à¤O.
(·sªºÃþ«¬A6 ¥u¦³BIND9©M§ó°ªªºª©¥»¤ä«ù)ÀË¬dDNS¹ïIPv6¦a§}ªº¸ÑªR¯à¤O:
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
# host -t AAAA www.join.uni-muenster.de
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}


±N±o¨ì¤U­±ªºµ²ªG:
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
www.join.uni-muenster.de. is an alias for ns.join.uni-muenster.de. 
ns.join.uni-muenster.de. has AAAA address 3ffe:400:10:100:201:2ff:feb5:3806
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}





\subsubsection{IPv6-ready telnet clients}

IPv6-ready telnet «È¤áºÝ. ¹ï¥¦¶i¦æ¤@­ÓÂ²³æªº´ú¸Õ:
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
$ telnet 3ffe:400:100::1 80
Trying 3ffe:400:100::1... 
Connected to 3ffe:400:100::1. 
Escape character is '^]'. 
HEAD / HTTP/1.0
HTTP/1.1 200 OK 
Date: Sun, 16 Dec 2001 16:07:21 
GMT Server: Apache/2.0.28 (Unix) 
Last-Modified: Wed, 01 Aug 2001 21:34:42 GMT 
ETag: "3f02-a4d-b1b3e080" 
Accept-Ranges: bytes 
Content-Length: 2637 
Connection: close 
Content-Type: text/html; charset=ISO-8859-1
Connection closed by foreign host.
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}




¦pªGtelnet¥u¥X²{"cannot resolve hostname", 
»¡©ú§@·~¨t²ÎªºIPv6ÁÙ¥¼¿E¬¡.




\subsubsection{openssh}

openssh¤w¸g¤ä«ùIPv6, ¦ý¥²»Ý¹ï¥¦¥Î¥H¤Uªº°Ñ¼Æ¶i¦æ½sÄ¶«á¤~¯à¨Ï¥Î:
\begin{itemize}
\item --without-ipv4-default: the client tries an IPv6 connect first automatically and fall back to IPv4 if not working
\item --with-ipv4-default: default connection is IPv4, IPv6 connection must be force like following example shows:
\end{itemize}


\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
$ ssh -6 ::1 
user@::1's password: ****** 
[user@ipv6host user]$
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}




¦pªG±zªºssh¤£¯à¹ï -6 ¶i¦æ¤ÏÀ³, ¥i¯à§@·~¨t²ÎªºIPv6ÁÙ¥¼¿E¬¡,©Îsshªºª©¥»¤Ó§C.






\subsubsection{ssh.com}

¥L­Ìªº«È¤á/ªA°ÈºÝµ{¦¡¬O§K¶Oªº.




\subsubsection{IPv6-ready web ¬yÄý¾¹}

¥Ø«e¤ä«ùIPv6ªºweb ¬yÄý¾¹¦Cªí: \onlynameurl{IPv6+Linux-status-apps.html\#HTTP.}



³o¨Ç¬yÄý¾¹¤j³¡¥÷³£¦s¦b°ÝÃD:
\begin{itemize}
\item ¦pªG proxy(¥N²z)¥u¤ä«ùIPv4, IPv6ªº½Ð¨D±N·|¥¢±Ñ. ¤èªk: ¤É¯Åproxy
\item Automatic proxy settings (*.pac) ¤£¯à¹ïIPv6ªº¤£¦P½Ð¨D¶i¦æ¾A·íªº³B²z 
(written in Java-script and well hard coded in source like to be seen in Maxilla source code). 
\end{itemize}


 ¤@¨Ç¦­´Áªºª©¥»¤£¯à¹ïIPv6¦a§}¶i¦æ¥¿½Tªº¾Þ§@, ¦p:
\onlynameurl{http://[3ffe:400:100::1]/ }

¤@­Ó¤p´ú¸Õ,Åã¥Ü¦b¨S¦³¥N²zªº±¡ªp¤Uªº URL ©M ¬yÄý¾¹.




\subsubsection{URLs for testing}

´ú¸ÕIPv6³Ì¤è«Kªº¤èªk¬O³X°Ý:       \onlynameurl{http://www.kame.net/}.
¦pªG®üÀt¬O¬¡°Êªº, »¡©ú³s±µ¬O³q¹LIPv6¶i¦æªº, ¥¦¤£°Êªº¸Ü, »¡©ú³s±µ¬O³q¹LIPv4¶i¦æªº.




\subsection{IPv6-ready server µ{¦¡}

¥]¬A:sshd, httpd, telnetd,






\section{³]©winterfaces(¬É­±)}


\subsection{¤£¦Pªººô¸ô³]³Æ}

¤@­Ó¸`ÂI¦s¦b¤£¦Pªººô¸ô³]³Æ, ¥i¥H¹ï¥¦­Ì¶i¦æ¦p¤U¤ÀÃþ:
\begin{itemize}
\item Physically bounded, like eth0, tr0
\item Virtually existing, like ppp0, tun0, tap0, sit0, isdn0, ippp0
\end{itemize}





\subsubsection{Physically bounded(ª«²z¸j©w)}

¥]¬A Ethernet ©ÎªÌ Token-Ring ¥¦­Ì¤£»Ý­n¯S§Oªº³B²z.




\subsubsection{Virtually bounded(µêÀÀ¸j©w)}

 »Ý­n¯S§Oªº¤ä«ù.




\subsubsection{IPv6-in-IPv4 tunnel interfaces}

³o­Óinterfaces(¬É­±)¤]ºÙ§@sitx, sit ¬O"Simple Internet Transition" ªºÁY¼g.
¥¦¥i¥H±NIPv6ªº¼Æ¾Ú¥]¶ë¶iIPv4, ³q¹LIPv4¨ì¹F¥t¤@­Ó¦aÂI.

sit0 ¤£¯à¨Ï¥Î¦b±M¥Îªºtunnels ¤W.




\subsubsection{5.1.2.2. PPP interfaces}

PPP interfaces ±qIPv6 enabled PPP daemon ¨º¸ÌÀò±o IPv6 ªº¯à¤O.




\subsubsection{5.1.2.3. ISDN HDLC interfaces}

¨ã¦³IP«Ê¸ËªºHDLC IPv6 ¯à¤O¥H¸g¥]§t¦b®Ö¤ß·í¤¤.




\subsubsection{5.1.2.4. ISDN PPP interfaces}

¥Ø«e¤£¤ä«ù ISDN PPP interfaces (ippp) aren't IPv6 enabled by kernel. Also there are also no plans to do that because in kernel 2.5.+ they will be replaced by a more generic ppp interface layer.




\subsubsection{5.1.2.5. SLIP + PLIP}

¥Ø«e¤£¤ä«ùLike mentioned earlier, this interfaces don't support IPv6 transport (sending is OK, but dispatching on receiving don't work).




\subsubsection{5.1.2.6. Ether-tap device}

Ether-tap devices¨Ï¥Î¦Û°Êªº³]©w.¦b¨Ï¥Î¤§«e¥ý±N "ethertap" ¼Ò²Õ±¾¶i¨Ó.




\subsubsection{5.1.2.7. tun devices}

´N³s§Ú³£ÁÙ¨S¸Õ¹L©O! Currently not tested by me.




\subsubsection{5.1.2.8. ATM}

01/2002:  vanillaªº®Ö¤ß¥Ø«e¤£¤ä«ù, USAGI ªºÂX®i¤ä«ùATM-IPv6


\subsubsection{5.1.2.9. ¨ä¥¦ªº}

§Úº|±¼¤F¤°»ò?




\subsection{Bringing interfaces up/down(³]©w¬É­±ªº¶}/Ãö)}


\subsubsection{¨Ï¥Î "ip"}

¨Ï¥Î¤èªk:
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
# ip link set dev <interface> up
# ip link set dev <interface> down
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}




¨Ò¤l:
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
# ip link set dev eth0 up
# ip link set dev eth0 down
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}





\subsubsection{¨Ï¥Î "ifconfig"}

¨Ï¥Î¤èªk:
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
# /sbin/ifconfig <interface> up
# /sbin/ifconfig <interface> down
 
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}




¨Ò¤l:
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
# /sbin/ifconfig eth0 up
# /sbin/ifconfig eth0 down
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}





\section{³]©wIPv6¦a§}}


\subsection{¦C¦L·í«eªºIPv6¦a§}}


\subsubsection{¨Ï¥Î "ip"}

¨Ï¥Î¤èªk:
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
# /sbin/ip -6 addr show dev <interface>
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}




¨Ò¤l:¤@­ÓÀRºAªº¥D¾÷¦a§}
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
# /sbin/ip -6 addr show dev eth0
2: eth0: <BROADCAST,MULTICAST,UP> mtu 1500 qdisc pfifo_ fast qlen 100
inet6 fe80::210:a4ff:fee3:9566/10 scope link
inet6 3ffe:ffff:0:f101::1/64 scope global
inet6 fec0:0:0:f101::1/64 scope site 
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}




¦Û°Ê³]©wªº¦a§}©M¥¦ªº¦s¬¡®É¶¡:
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
# /sbin/ip -6 addr show dev eth0 
3: eth0: <BROADCAST,MULTICAST,PROMISC,UP> mtu 1500 qdisc pfifo_fast qlen
? 100 
inet6 2002:d950:f5f8:f101:2e0:18ff:fe90:9205/64 scope global dynamic 
valid_lft 16sec preferred_lft 6sec 
inet6 3ffe:400:100:f101:2e0:18ff:fe90:9205/64 scope global dynamic 
valid_lft 2591997sec preferred_lft 604797sec inet6 fe80::2e0:18ff:fe90:9205/10
? scope link
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}





\subsubsection{¨Ï¥Î "ifconfig"}

¨Ï¥Î¤èªk:
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
# /sbin/ifconfig <interface>
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}




¨Ò¤l, ¥¦¥u¦C¦LIPv6¦a§}:
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
# /sbin/ifconfig eth0 |grep "inet6 addr:"
inet6 addr: fe80::210:a4ff:fee3:9566/10 Scope:Link
inet6 addr: 3ffe:ffff:0:f101::1/64 Scope:Global
inet6 addr: fec0:0:0:f101::1/64 Scope:Site
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}



\subsection{¼W¥[¤@­ÓIPv6¦a§}}

¨ä­ì²z¦PIPv4ªº"IP ALIAS"(IP§O¦W)¬Û¦P

¨Ï¥Î "ip"

¨Ï¥Î¤èªk:
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
# /sbin/ip -6 addr add <ipv6address>/<prefixlength> dev <interface> 
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}




¨Ò¤l:
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
# /sbin/ip -6 addr add 3ffe:ffff:0:f101::1/64 dev eth0 
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}





\subsubsection{¨Ï¥Î "ifconfig"}

¨Ï¥Î¤èªk:
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
# /sbin/ifconfig <interface> inet6 add <ipv6address>/<prefixlength>
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}




¨Ò¤l:

\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
# /sbin/ifconfig eth0 inet6 add 3ffe:ffff:0:f101::1/64 
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}





\subsection{²¾°£IPv6¦a§}}

³o­Ó¤£±`¥Î, ¤£­n¥Î¥¦²¾°£¤£¦s¦bªº¦a§}, ¤@¨Ç¦­´Áªº®Ö¤ß·|¦]¬°¨ü¤£¤F¦Ó±¾±¼.




\subsubsection{¨Ï¥Î "ip"}

¨Ï¥Î¤èªk:
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
# /sbin/ip -6 addr del <ipv6address>/<prefixlength> dev <interface> 
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}




¨Ò¤l:

\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
# /sbin/ip -6 addr del 3ffe:ffff:0:f101::1/64 dev eth0 
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}





\subsubsection{¨Ï¥Î "ifconfig"}

¨Ï¥Î¤èªk:
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
# /sbin/ifconfig <interface> inet6 del <ipv6address>/<prefixlength>
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}




¨Ò¤l:

\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
# /sbin/ifconfig eth0 inet6 del 3ffe:ffff:0:f101::1/64
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}





\section{³]©wIPv6¸ô¥Ñ}


\subsection{¦C¦L²{¦³ªº¸ô¥Ñ}


\subsubsection{¨Ï¥Î"ip"}

¨Ï¥Î¤èªk:

\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
# /sbin/ip -6 route show [dev <device>]
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}




¨Ò¤l:

\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
# /sbin/ip -6 route show dev eth0
3ffe:ffff:0:f101::/64 proto kernel metric 256 mtu 1500 advmss 1440
fe80::/10             proto kernel metric 256 mtu 1500 advmss 1440
ff00::/8              proto kernel metric 256 mtu 1500 advmss 1440
default               proto kernel metric 256 mtu 1500 advmss 1440
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}







\subsubsection{¨Ï¥Î "route"}

¨Ï¥Î¤èªk:

\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
# /sbin/route -A inet6 
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}




¨Ò¤l:¦b¦P¤@­Ó¬É­±¤W¤£¦PªºIPv6¸ô¥Ñ.

\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
# /sbin/ip -6 route show dev eth0
# /sbin/route -A inet6 |grep -w "eth0"
3ffe:ffff:0:f101 ::/64 :: UA  256 0 0 eth0 <- Interface route for global
? address
fe80::/10        ::       UA  256 0 0 eth0 <- Interface route for link-local
? address
ff00::/8         ::       UA  256 0 0 eth0 <- Interface route for all multicast
? addresses
::/0             ::       UDA 256 0 0 eth0 <- Automatic default route
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}







\subsection{³]©wIPv6¸ô¥Ñ³q¹L¹h¹D}


\subsubsection{¨Ï¥Î"ip"}

¨Ï¥Î¤èªk:

\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
# /sbin/ip -6 route add <ipv6network>/<prefixlength> via <ipv6address>
? [dev <device>]
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}




¨Ò¤l:

\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
# /sbin/ip -6 route add 2000::/3 via 3ffe:ffff:0:f101::1
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}







\subsubsection{¨Ï¥Î "route"}

¨Ï¥Î¤èªk:

\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
# /sbin/route -A inet6 add <ipv6network>/<prefixlength> gw
? <ipv6address> [dev <device>] 
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}






¨Ò¤l:¬°·í«e©Ò¦³ªº(¥þ§½¦a§}global addresses 2000::/3)§}³q¹L¹h¹D3ffe:ffff:0:f101::1

\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
# /sbin/route -A inet6 add 2000::/3 gw 3ffe:ffff:0:f101::1
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}









\subsection{²¾°£ IPv6¸ô¥Ñ³q¹L¹h¹D}


\subsubsection{¨Ï¥Î"ip"}

¨Ï¥Î¤èªk:

\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
# /sbin/ip -6 route del <ipv6network>/<prefixlength> via <ipv6address>
? [dev <device>]
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}




¨Ò¤l:

\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
# /sbin/ip -6 route del 2000::/3 via 3ffe:ffff:0:f101::1
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}







\subsubsection{¨Ï¥Î "route"}

¨Ï¥Î¤èªk:

\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
# /sbin/route -A inet6 del <network>/<prefixlength> [dev <device>]
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}






¨Ò¤l:²¾°£«e©Ò¦³ªº(¥þ§½¦a§}global addresses 2000::/3)§}³q¹L¹h¹D3ffe:ffff:0:f101::1

\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
# /sbin/route -A inet6 del 2000::/3 gw 3ffe:ffff:0:f101::1
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}















\subsection{¼W¥[IPv6¸ô¥Ñ¦Üinterface(¬É­±)}


\subsubsection{¨Ï¥Î "ip"}

¨Ï¥Î¤èªk:

\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
# /sbin/ip -6 route add <ipv6network>/<prefixlength> dev <device>
? metric 1
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}




¨Ò¤l:
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
# /sbin/ip -6 route add 2000::/3 dev eth0 metric 1
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}







\subsubsection{¨Ï¥Î "route"}

¨Ï¥Î¤èªk:

\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
# /sbin/route -A inet6 add <network>/<prefixlength> dev <device>
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}




¨Ò¤l:
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
# /sbin/route -A inet6 add 2000::/3 dev eth0
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}











\subsection{±qinterface(¬É­±)²¾°£IPv6¸ô¥Ñ}


\subsubsection{¨Ï¥Î "ip"}

¨Ï¥Î¤èªk:

\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
# /sbin/ip -6 route del <ipv6network>/<prefixlength> dev <device>
? metric 1
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}




¨Ò¤l:
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
# /sbin/ip -6 route del 2000::/3 dev eth0 
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}







\subsubsection{¨Ï¥Î "route"}

¨Ï¥Î¤èªk:

\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
# /sbin/route -A inet6 del <network>/<prefixlength> dev <device>
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}




¨Ò¤l:
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
# /sbin/route -A inet6 del 2000::/3 dev eth0
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}





\subsection{FAQ for IPv6 routes(IPv6 ¸ô¥Ñªº¸g±`°Ýµª)}


\subsubsection{Support of an IPv6 default route}

IPv6ªº¤@­Ó¤èªk¬Ohierachical routing(¤À¯Å¸ô¥Ñ).¦]¦¹,¤À¯Å·í¤¤³Ì¤Ö»Ý­n¤@­Ó¸ô¥Ñ.

¦b¥Ø«eªº®Ö¤ß¤¤¦³¤@¨Ç°ÝÃD:


\subsubsection{Clients (not routing any packet!)¨S¦³¥ô¦ó¼Æ¾Ú¥]³Q¸ô¥Ñ.}

Clinets ¥i¥H³]©w¤@­Ó¯Ê¬Ùªºprefix "::/0"(«eºó¬° ::/0 ªº¸ô¥Ñ).
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
# ip -6 route show | grep ^default
default via fe80::212:34ff:fe12:3450 dev eth0 proto kernel metric 1024 expires
? 29sec mtu 1500 advmss 1440
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}





\subsubsection{Routers on packet forwarding (¸ô¥Ñ¥]Âà±H)}

¥Ø«e¥D¬yªºLinux®Ö¤ß(³Ì¤Ö¬O {$<$}=2.4.17) ¤£¤ä«ù¯Ê¬Ù¸ô¥Ñ. ±z¥i¥H³]©w¥¦­Ì,¦ý¦bµo°e¼Æ¾Ú¥]®ÉÀôÂ¶·|¥¢±Ñ.
©Ò¥H,¥Ø«eªº¯Ê¬Ù¸ô¥Ñ¥i¥H³Q³]©w¦¨ «eºó¬°"2000::/3"ªº global (¥þ§½¦a§}).
USAGI ¹ï³o­Ó¦³µÛ¨}¦nªº¤ä«ù.

ª`·N: ª`·N¨S¦³¦a§}¿z¿ïªºÃä½t¸ô¥Ñ¾¹ªº¯Ê¬Ù¸ô¥Ñ, ¤£µM·|¦³¦h¾lªºmulticast ©Î site-local ¶Ç¿é±qÃä½t·¸¥X.




\section{Neighbor Discovery(µo²{ªÚ¾F)}

IPv6 ªº Neighbor DiscoveryÄ~©Ó¤FIPv4 ªº ARP (Address Resolution Protocol¦a§}¸ÑªR¨óÄ³).
±z¥i¥H­«·s±o¨ìªÚ¾Fªº¸ê°T. ¨Ã¥B¥i¥H½s¿è/§R°£¥¦.



Neighbor detection(¹ïªÚ¾F¶i¦æ±´´ú)

®Ö¤ß­t³d¹ï±´´ú¦¨¥\ªºªÚ¾F¶i¦æ°lÂÜ. ±z¥i¥H¥Î "ip" ¨Ó«õ±¸¨ä¤¤ªº«H®§.


\subsection{Displaying neighbors using "ip" (¥Î"ip"©R¥O¦C¦LªÚ¾F)}

¨Ï¥Î¥H¤Uªº©R¥O,±z¥i¥Hª¾¹DªÚ¾Fªº³]©w.
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
# ip -6 neigh show [dev <device>]
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}


¤U­±ªº¨Ò¤l·í¤¤¦C¦L¤F¤@­ÓªÚ¾F,¥¦¬O¤@­Ó¥i¨ì¹Fªº¸ô¥Ñ¾¹.
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
# ip -6 neigh show
fe80::201:23ff:fe45:6789 dev eth0 lladdr 00:01:23:45:67:89 router nud reachable
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}





\subsection{¥Î "ip" ¹ïªÚ¾Fªº¦C¦Lªí¶i¦æ³B²z}


\subsubsection{¥Î¥H¤Uªº©R¥O¥i¥H¥[¤J¤@­Óentry(¦C¦L¶µ)}

\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
# ip -6 neigh add <IPv6 address> lladdr <link-layer address> dev <device>
 
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}


¨Ò¤l:

\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
# ip -6 neigh add fec0::1 lladdr 02:01:02:03:04:05 dev eth0
 
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}









\subsubsection{¥Î¥H¤Uªº©R¥O¥i¥H²¾°£¤@­Óentry(¦C¦L¶µ)}

\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
# ip -6 neigh del <IPv6 address> lladdr <link-layer address> dev <device>
 
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}


¨Ò¤l:

\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
# ip -6 neigh del fec0::1 lladdr 02:01:02:03:04:05 dev eth0
 
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}





\subsubsection{§ó°ª¶¥ªº³]©w}

 "ip"¤u¨ã«D±`±j¤j, ¦ý¨S¦³¨¬°÷ªºÀ°§U¸ê°T.
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
# ip -6 neigh help
Usage: ip neigh { add | del | change | replace } { ADDR [ lladdr LLADDR ] 
          [ nud { permanent | noarp | stale | reachable } ] 
          | proxy ADDR } [ dev DEV ] 
       ip neigh {show|flush} [ to PREFIX ] [ dev DEV ] [ nud STATE ]
 
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}


 ¦³ÂI¹³IPv4ªº¦C¦L, ¦pªG±zª¾¹D¥¦ªº¸Ô²Ó¥Îªk,½ÐÀ°§Ú send ¤@¥÷¹L¨Ó.




\section{Configuring IPv6-in-IPv4 tunnels(³]©w¹E¹D)}


\subsection{¹E¹DªºÃþ«¬}

±NIPv6¼Æ¾Ú¥]¶Ç¿é¨ìIPv4³sµ²¤£¥u¦³¤@ºØ¥i¯à.


\subsubsection{Static point-to-point tunneling: 6bone (¥HÂI¹ïÂI¤è¦¡ºc«Øªº¹E¹D)}

IPv6©MIPv4ªº¹E¹D©w¸q¦b \onlynameurl{RFC 2893 / Transition Mechanisms for IPv6 Hosts and Routers}

¥²³Æ±ø¥ó:
\begin{itemize}
\item ¹E¹D¥t¤@ºÝªºIPv4¦a§}¥²»Ý¬Ostatic(ÀRºAªº).global unique and reachable from the foreign tunnel endpoint
\item ±z¥H¸g¾Ö¦³ªº¤@­Óglobal IPv6 prefix(«eºó),°Ñ·Ó 6bone registry.
\item ¦³¤@­Ó¥i¥H±N±zªºIPv6 prefix ¸ô¥Ñ¨ì¥»¦aºÝªº¥~¬ÉtunnelºÝ(³q±`»Ý­n¶i¦æ»·ºÝ¾Þ§@)
\end{itemize}



\subsubsection{Automatically tunneling(¹E¹D¾Þ§@¦Û°Ê¤Æ)}

·í¤@­Ó¸`ÂIª½±µ¦P¥t¤@­Ó¸`ÂI¶i¦æ³sµ²,¦b±o¨ì¸`ÂIIPv4¦a§}¤§«e,¸`ÂI´N·|°õ¦æ¹E¹D¾Þ§@¦Û°Ê¤Æ.




\subsubsection{6to4-Tunneling(¹E¹D¾Þ§@)}

¥¦¨Ï¥Î¤@­ÓÂ²³æªº¾÷¨î¹ê¦æTunneling(¹E¹D¾Þ§@)
\onlynameurl{RFC 3056 / Connection of IPv6 Domains via IPv4 Clouds}.
¨C­Ó¸`ÂIªºglobal unique IPv4 (°ß¤@¥þ§½¦a§})¥i¥H¦¨¬° 6to4 tunnel ªº²×ÂI(¦pªG¨S¦³IPv4¨¾¤õÀð­­¨î³q°T).
6to4-Tunneling(¹E¹D¾Þ§@)¤£¬O±M¥Î©ó¤@¹ï¤@ªº¹E¹D,
³o­Ó®×¨Ò¥i¥H¤À¶}°w¹ïupstream and downstream (¤W¯Å©M¤U¯Å)ªº¹E¹D¾Þ§@.
¦P¼Ë,¤@­Ó¯S§OªºIPv6¦a§}·|«ü¥X³o­Ó¸`ÂI¨Ï¥Î6to4-Tunnel¦P¥þ¥@¬Éªº IPv6 ºô¸ô¶i¦æ³sµ².


\subsubsection{Generation of 6to4 prefix(²£¥Í6to4ªº«eºó).}

 6to4 ªº¦a§}¹³¤U­±³o¼Ë©w¸q:(·½¦Û\onlynameurl{RFC 3056 / Connection of IPv6 Domains via IPv4 Clouds}) 
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
__________________________________________________________________ 
|   3+13   |    32     |    16  |            64 bits             | 
+---+------+-----------+--------+--------------------------------+ 
|  FP+TLA  |  V4ADDR   | SLA ID |           Interface ID         | 
|  0x2002  |           |        |                                | 
+---+------+-----------+--------+--------------------------------+
  
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}




FP¬Oglobal addresses(¥þ§½¦a§})ªº«eºó. TLA¬Otop level aggregator(³Ì°ª¼h¶°)
V4ADDR¬OIPv4¥þ§½°ß¤@¦a§}((in hexadecimal notation). SLA¬O¤lºô¸ô¼Ð½o(65536 local subnets possible).
³o¨Ç«eºó²£¥Í®ÉªºSLA ¬°"0000" «áºó¬O "::1" ¨Ã¤À°t¨ì6to4 tunnel interface(¬É­±).






\subsubsection{6to4 upstream tunneling(¤W¯Å¹E¹D¾Þ§@)}

¸`ÂIª¾¹D¦V­þ¸Ìµo°e§t¦³IPv6¼Æ¾Ú¥]ªºIPv4¼Æ¾Ú¥].
¦­´Áªº6to4¹E¹D,¥²»Ý³]©w¤@­Ó±M¥Îªº¤W¯Å¸ô¥Ñ¾¹±µ¨ü³oºØ¾Þ§@.
°Ñ·Ó                    \onlynameurl{NSayer's 6to4 information }¸Ìªº¸ô¥Ñ¦C¦L.
²{¦b 6to4¤W¯Å¸ô¥Ñ¾¹¥i¥H¨Ï¥Îanycast address 192.88.99.1 ¥¦¥Ñ«á¥xªº¸ô¥Ñ¨óÄ³±±¨î.
°Ñ·Ó                    \onlynameurl{RFC 3068 / An Anycast Prefix for 6to4 Relay Routers}




\subsubsection{6to4 downstream  tunneling(¤U¯Å¹E¹D¾Þ§@)}

The downstream (6bone -{$>$} your 6to4 enabled node) is not really fix and can vary from foreign host which originated packets were send to. There exist two possibilities:
¥¦ÁÙ¨S¦³¥¿¦¡­×¥¿¹ï¼Æ¾Ú¥]¨Ó·½ªº½T©w, ¦s¦b¥H¤U¨âºØ¥i¯à:
\begin{itemize}
\item ¥~³¡¥D¾÷ª½±µ¨Ï¥Î6to4§âIPv6¼Æ¾Ú¥]µo¦^µ¹±z.
\item ¥~³¡¥D¾÷³q¹L¥þ²yIPv6ºô¸ô, ¨Ì¾a°ÊºA¸ô«Ø¥ß¤@­Óautomatic tunnel ¥Ñ±NIPv6¼Æ¾Ú¥]µo¦^µ¹±z.
\end{itemize}



\subsubsection{Possible 6to4 traffic(6to4ªº´XºØ³q°T¤èªk)}

\begin{itemize}
\item ±q 6to4 ¨ì 6to4: ³q±`¦b¨â­Ó 6to4 enabled ¥D¾÷¤§¶¡ª½±µ¶i¦æ¹E¹D¾Þ§@ tunneled between the 
\item ±q 6to4 ¨ì non-6to4: ³q¹L¤W¯Å¹E¹D¾Þ§@µo°e¼Æ¾Ú¥].
\item ±q non-6to4 ¨ì 6to4: ³q¹L¤U¯Å¹E¹D¾Þ§@µo°e¼Æ¾Ú¥].
\end{itemize}





\subsection{¦C¦L²{¦sªºtunnels(¹E¹D)}


\subsubsection{¨Ï¥Î "ip"}

¥Îªk:
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
# /sbin/ip -6 tunnel show [<device>] 
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}




¨Ò¤l:
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
# /sbin/ip -6 tunnel show 
sit0: ipv6/ip remote any local any ttl 64 nopmtudisc 
sit1: ipv6/ip remote 195.226.187.50 local any ttl 64
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}









\subsubsection{¨Ï¥Î "route"}

¥Îªk:
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
# /sbin/route -A inet6 
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}




¨Ò¤l:¥u¦C¦L±qsit0¬É­±³q¹Lªº¹E¹D.
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
# /sbin/route -A inet6 | grep "\Wsit0\W*$" 
::/96      ::               U   256  2  0  sit0 
2002::/16  ::               UA  256  0  0  sit0 
2000::/3   ::193.113.58.75  UG    1  0  0  sit0 
fe80::/10  ::               UA  256  0  0  sit0 
ff00::/8   ::               UA  256  0  0  sit0
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}







\subsection{Setup of point-to-point tunnel(³]©wÂI¹ïÂIªº¹E¹D)}

¦³3ºØ¤èªk¥i¥H¥[¤J/²¾°£point-to-point tunnel




\subsubsection{Add point-to-point tunnels (¥[¤J)}


\paragraph{¨Ï¥Î "ip"}

¥Ø«e°w¹ï¤Ö¶qtunnelsªº¤èªk

³]©wtunnel device (¥¦¤£·|¥ß¬J±Ò¥Î.TTL¥²»Ý«ü©w, ¦]¬°ªì©l­È¬O0)

\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
# /sbin/ip tunnel add < device > mode sit ttl < ttldefault > remote
? < ipv4addressofforeigntunnel > local < ipv4addresslocal >
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}


¥Îªk(³o­Ó¨Ò¤l¤¤¦³¤T­Ó¹E¹D)

\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
# /sbin/ip tunnel add sit1 mode sit ttl <ttldefault> remote
? <ipv4addressofforeigntunnel1> local <ipv4addresslocal>
# /sbin/ip set dev sit1 up
# /sbin/ip -6 route add <prefixtoroute1> dev sit1 metric 1
# /sbin/ip tunnel add sit2 mode sit ttl <ttldefault>
? <ipv4addressofforeigntunnel2> local <ipv4addresslocal>
# /sbin/ip set dev sit2 up
# /sbin/ip -6 route add <prefixtoroute2> dev sit2 metric 1
# /sbin/ip tunnel add sit3 mode sit ttl <ttldefault>
? <ipv4addressofforeigntunnel3> local <ipv4addresslocal>
# /sbin/ip set dev sit3 up
# /sbin/ip -6 route add <prefixtoroute3> dev sit3 metric 1
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}





\subsubsection{¨Ï¥Î "ifconfig" and "route" (deprecated)}

¤£±ÀÂË¤@¦¸´N Non Broadcast Multiple Access (NBMA)³o»ò¦h,¦]¬°±z¦pªG¥u·QÃö³¬²Ä¤@­Ó¦ý¤S­nÅý¨ä¥¦ªºÄ~Äò¹B¦æ,¦³ÂIÃø°Ú.¥u¥[¤@­Ó¬O¨S¦³°ÝÃDªº.
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
# /sbin/ifconfig sit0 up
# /sbin/ifconfig sit0 tunnel <ipv4addressofforeigntunnel1>
# /sbin/ifconfig sit1 up
# /sbin/route -A inet6 add <prefixtoroute1> dev sit1
# /sbin/ifconfig sit0 tunnel <ipv4addressofforeigntunnel2>
# /sbin/ifconfig sit2 up
# /sbin/route -A inet6 add <prefixtoroute2> dev sit2
# /sbin/ifconfig sit0 tunnel <ipv4addressofforeigntunnel3>
# /sbin/ifconfig sit3 up
# /sbin/route -A inet6 add <prefixtoroute3> dev sit3
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}


Äµ§i:³o¼Ë°µ¦³«Ü¤jªº­·ÀI, ¦]¬°¥ô¦ó¤H¥i¥H±qInternetªº¥ô¦ó¦aÂI¨Ï¥Î"automatic tunneling"¦P±z¶i¦æ³sµ².§Ú¤£±ÀÂË±z³o¼Ë°µ.




\subsubsection{¨Ï¥Î "route" only }

·íµM¥i¥H³]©wtunnel¨Ï¥Î Non Broadcast Multiple Access (NBMA)«D¦h¦a§}¼s¼½ªº¤è¦¡
³oºØ¤èªk¥i¥H¤@¦¸´N¥[¤J«Ü¦htunnel.
¨Ï¥Î¤èªk (¤T­Ótunnelªº°ò¥»¨Ò¤l):
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
# /sbin/ifconfig sit0 up
# /sbin/route -A inet6 add <prefixtoroute1> gw
? ::<ipv4addressofforeigntunnel1> dev sit0
# /sbin/route -A inet6 add <prefixtoroute2> gw
? ::<ipv4addressofforeigntunnel2> dev sit0
# /sbin/route -A inet6 add <prefixtoroute3> gw
? ::<ipv4addressofforeigntunnel3> dev sit0
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}


Äµ§i:³o¼Ë°µ¦³«Ü¤jªº­·ÀI, ¦]¬°¥ô¦ó¤H¥i¥H±qInternetªº¥ô¦ó¦aÂI¨Ï¥Î"automatic tunneling"¦P±z¶i¦æ³sµ².§Ú¤£±ÀÂË±z³o¼Ë°µ.




\subsubsection{Removing point-to-point tunnels(²¾°£¹E¹D)}

¤â¤u¤è¦¡¤£¸g±`¨Ï¥Î,¥i¥H¥Îscripts²¾°£/­«·s³]©wIPv6tunnels




\subsubsection{¨Ï¥Î "ip"}

²¾°£¹E¹D³]³Æªº¥Îªk:
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
# /sbin/ip tunnel del <device>
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}




Usage (¤T­Ótunnelªº°ò¥»¨Ò¤l):
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
# /sbin/ip -6 route del <prefixtoroute1> dev sit1
# /sbin/ip set sit1 down
# /sbin/ip tunnel del sit1
# /sbin/ip -6 route del <prefixtoroute2> dev sit2
# /sbin/ip set sit2 down
# /sbin/ip tunnel del sit2
# /sbin/ip -6 route del <prefixtoroute3> dev sit3
# /sbin/ip set sit3 down
# /sbin/ip tunnel del sit3
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}





\subsubsection{¨Ï¥Î "ifconfig" and "route" (¦]¬°¤£«ç»ò¦³½ì©Ò¥H¤£ÃÙ¦¨³o»ò°µ)}

Usage (¤T­Ótunnelªº°ò¥»¨Ò¤l):±z¥²»Ý¤Ï¦V²¾°£¥¦­Ì, ¤]´N¬O¥ý«Ø¥ßªº¥²»Ý¥ý²¾°£.
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
# /sbin/route -A inet6 del <prefixtoroute3> dev sit3
# /sbin/ifconfig sit3 down
# /sbin/route -A inet6 del <prefixtoroute2> dev sit2
# /sbin/ifconfig sit2 down
# /sbin/route -A inet6 add <prefixtoroute1> dev sit1
# /sbin/ifconfig sit1 down
# /sbin/ifconfig sit0 down
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}





\subsubsection{¨Ï¥Î "route"}

²¾°£IPv6¸ô¥Ñ.
¨Ï¥Î¤èªk (¤T­Ótunnelªº°ò¥»¨Ò¤l):
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
# /sbin/route -A inet6 del <prefixtoroute1> gw
? ::<ipv4addressofforeigntunnel1> dev sit0
# /sbin/route -A inet6 del <prefixtoroute2> gw
? ::<ipv4addressofforeigntunnel2> dev sit0
# /sbin/route -A inet6 del <prefixtoroute3> gw
? ::<ipv4addressofforeigntunnel3> dev sit0
# /sbin/ifconfig sit0 down
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}





\subsubsection{Numbered point-to-point tunnels(¦³­­ªºÂI¹ïÂI¹E¹D)}

¦³®É»Ý­n³]©w¤@­Ópoint-to-point ¹E¹D ©MIPv6¦a§},
¦ý¤èªk¤¤¥u¦³²Ä¤@­Ó(ifconfig+route - deprecated)©M²Ä¤T­Ó(ip+route)¥i¦æ.
¦b³o¨Ç®×¨Ò¤¤±z¥i¥H¥[¤J¤@­ÓIPv6¦a§}¨ì tunnel interface(¥Î©ó¹E¹D¾Þ§@ªº¨º­Ó¬É­±)




\subsection{Setup of 6to4 tunnels (³]©w IPv6¦ÜIPv4ªº¹E¹D)}

ª`·N:6to4 tunnels ¥Ø«e¯Ê¥Fvanilla 2.2.x¨t¦C®Ö¤ßªº¤ä«ù.
¦P¼Ë­nª`·Nªº¬O6to4¦a§}ªº«eºóªø«×¬O16 ©Ò¦³ªº 6to4 ¥D¾÷³£¦b¬Û¦Pªº²Ä¤G¼h.


\subsubsection{Add a 6to4 tunnel(¼W¥[¤@­Ó 6to4 ¹E¹D)}

­º¥ý, ±z¥²»Ý¥Î¥i¸ô¥Ñªº¥»¦aIPv4 global ¦a§}¨Ó­pºâ 6to4 ªº«eºó.
(¦pªG±zªº¥D¾÷¨S¦³¥i¸ô¥Ñªº¥»¦aIPv4 global ¦a§}, ¦b¹h¹DÃä½tªºNAT¦a§}¤]¦æ
in special cases NAT on border gateways is possible):

°²©w±zªºIPv4¦a§}¬°:
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
1.2.3.4
 
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}


²£¥Íªº6to4 prefix(«eºó)¬° :
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
2002:0102:0304::
 
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}


¥»¦aªº 6to4 ¹h¹D»Ý­n¤â¤u³]©w«áºó¬°"::1", ¦]¦¹±zªº6to4¦a§}´N¦¨¬°:
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
2002:0102:0304::1
 
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}


¥H¤U¨Ì¾Ú«ü©wªºIPv4¦a§}²£¥Í6to4¦a§}:
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
ipv4="1.2.3.4"; printf "2002:%02x%02x:%02x%02x::1" `echo $ipv4 | tr "." " "`
 
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}




¥Ø«e¦³¨âºØ¤èªk¥i¥H³]©w6to4¹E¹D


\subsubsection{¨Ï¥Î "ip" ©M±M¥Îªº¹E¹D³]³Æ.}

³o¬O³Q±ÀÂËªº°µªk.
³Ð«Ø¤@­Ó¹E¹D³]³Æ.
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
# /sbin/ip tunnel add tun6to4 mode sit remote any local <localipv4address>
 
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}




 Bring interface up(¿E¬¡¥¦)
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
# /sbin/ip link set dev tun6to4 up 
 
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}




±N¥»¦a6to4¦a§}¥[¤J¨ì¬É­±.(ª`·N:¥¦ªº«eºóªø«×¥²»Ý¬O16)
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
# /sbin/ip -6 addr add <local6to4address>/16 dev tun6to4 
 
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}


¥[¤J¤@­Ó¥Îall-6to4-routers IPv4 anycast ¦a§}§@¬°¨ì¹Fglobal IPv6 ºô¸ôªº¸ô¥Ñ(¯Ê¬Ùªº¸ô¥Ñ)

\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
# /sbin/ip -6 route add 2000::/3 via ::192.88.99.1 dev tun6to4 metric 1
 
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}





\subsubsection{¨Ï¥Î "ifconfig" and "route" and generic tunnel device "sit0" (¤£³Q±ÀÂËªº°µªk)}

¤£³Q±ÀÂË¬O¦]¬°tunnel device sit0 ¤£¤ä«ù¯S§Oªº¹L¼{¾¹À³¥Î¦b¨C­Ó³]³Æ¤W.

Bring generic tunnel interface sit0 up(±N¬É­±sit0¿E¬¡)
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
# /sbin/ifconfig sit0 up 
 
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}


Add local 6to4 address to interface(¦V¬É­±²K¥[¥»¦a 6to4 ¦a§})
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
# /sbin/ifconfig sit0 add <local6to4address>/16
 
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}


¥[¤J¤@­Ó¥Îall-6to4-relays IPv4 anycast¦a§}§@¬°¨ì¹Fglobal IPv6 ºô¸ôªº¸ô¥Ñ(¯Ê¬Ùªº¸ô¥Ñ)

\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
# /sbin/route -A inet6 add 2000::/3 gw ::192.88.99.1 dev sit0
 
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}





\subsubsection{Remove a 6to4 tunnel(²¾°£ 6to4 ¹E¹D)}


\subsubsection{¨Ï¥Î "ip" and a ±M¥Î¹E¹D³]³Æ}

±qdedicated tunnel device ²¾°£©Ò¦³¸ô¥Ñ
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
# /sbin/ip -6 route flush dev tun6to4
 
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}


Shut down interface(Ãö³¬¬É­±)
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
# /sbin/ip link set dev tun6to4 down
 
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}




Remove created tunnel device(²¾°£¹E¹D³]³Æ)
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
# /sbin/ip tunnel del tun6to4 
 
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}





\subsubsection{¨Ï¥Î "ifconfig" and "route" and generic tunnel device "sit0" (¤£³Q±ÀÂËªº°µªk)}

²¾°£ 6to4 ¬É­±¤W¹E¹Dªº¸ô¥Ñ
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
# /sbin/route -A inet6 del 2000::/3 gw ::192.88.99.1 dev sit0 
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}




Remove local 6to4 address to interface(±q¬É­±²¾°£¥»¦a 6to4 ¦a§})
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
# /sbin/ifconfig sit0 del <local6to4address>/16
 
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}


¨Ã³¬ generic tunnel device (·í¤ß, ¥i¯à¥¦ÁÙ¦b¨Ï¥Î·í¤¤)
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
# /sbin/ifconfig sit0 down 
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}





\section{³]©w IPv4-in-IPv6 ¹E¹D}

³o¸Ìªº¤º®e·|¦b±N¨Ó²K¥[,¥Ø«e³oºØ¹E¹D³B¦b¸ÕÅç¶¥¬q.°Ñ·Ó: 
\onlynameurl{RFC 2473 / Generic Packet Tunneling in IPv6 Specification}




\section{®Ö¤ß³]©w in /proc-filesystem}


\subsection{«ç¼Ë¶i¤J /proc-filesystem}


\subsubsection{¨Ï¥Î "cat"©M "echo"}

¨Ï¥Î "cat"©M "echo" ¬O¶i¤J /proc-filesystemªº³ÌÂ²³æ¤èªk.
¦ý¥²»Ý¨ã³Æ¤U­±´X­Ó±ø¥ó:

\begin{itemize}
\item ¦b®Ö¤ß¤¤¥´¶} /proc-filesystem ¤ä«ù, ¦b½sÄ¶ªº®É­Ô¥i¥H³q¹L CONFIG\_PROC\_FS=y °µ¨ì.
\item /proc-filesystem ¤w¸g±¾¶i¨t²Î,¥i¥H¥Î¥H¤Uªº¤èªk´ú¸Õ:
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
# mount | grep "type proc"
none on /proc type proc (rw)
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}
\item ±z¥²»Ýª¾¹D¹ï/proc-filesystem ªº¦UºØ¾Þ§@.
\end{itemize}


³q±`/proc/sys/* ³£¬O¥i¼gªº, ¨ä¥¦ªº³£¬O¥uÅª©Î¥u´£¨Ñ¬ÛÃö¸ê°T.


\subsubsection{±o¨ì¤@­Ó­È}

¥i¥H¨Ï¥Î "cat" ±o¨ì¤@­Ó­È.
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
# cat /proc/sys/net/ipv6/conf/all/forwarding
0
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}





\subsubsection{³]©w¤@­Ó­È}

¥i¥H¨Ï¥Î "echo" ³]©w¤@­Ó­È.
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
# echo "1" >/proc/sys/net/ipv6/conf/all/forwarding
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}





\subsubsection{¨Ï¥Î "sysctl"}

¨Ï¥Î "sysctl" ³]©w®Ö¤ß¬O·í«e¬y¦æªº¤èªk, ±z¤]¯à¥Î.
¦pªG/proc-filesystem ¨S¦³±¾¶i¨Ó, ¨º»ò±z¥u¥i¥H³X°Ý/proc/sys/* 

"sysctl"µ{¦¡¦b"procps"¦w¸Ë¥]¤¤.(Red Hat Linux systems)



sysctl-interface »Ý­n¦b®Ö¤ß¤¤¶i¦æ¿E¬¡, ¦b½sÄ¶ªº®É­Ô¥i¥H³q¹L¥H¤U¿ï¶µ§¹¦¨:
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
CONFIG_SYSCTL=y
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}







\subsubsection{³]©w¤@­Ó­È}

A new value can be set (if entry is writable):
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
# sysctl -w net.ipv6.conf.all.forwarding=1
net.ipv6.conf.all.forwarding = 1
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}


¦b "=" ¨âÃä¤£¯à¥X²{spaces²Å¸¹,¤]¤£¯à¹³¤U­±¨º¼Ë¤@¦¸³]©w¦h­Ó­È:
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
# sysctl -w net.ipv4.ip_local_port_range="32768 61000"
net.ipv4.ip_local_port_range = 32768 61000
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}



\subsubsection{¥t¥~}

sysctl¨Ï¥Î "/" ¥N´À "." ¸Ô²Ó¸ê°T½Ð¬Ýsysctlªºmanpage

´£¥Ü:§Ö³t¬d§ä³]©wªº¸ê°T,¥i¥HÁp¦X¨Ï¥Î±a"-a"ªºgrep.




\subsection{/proc-filesystems ¸Ìªº¼Æ­ÈÃþ«¬.}

\begin{itemize}
\item BOOLEAN: simple a "0" (false) or a "1" (true)
\item INTEGER: an integer value, can be unsigned, too
\item more sophisticated lines with several values: sometimes a header line is displayed also, if not, have a look into the kernel source to retrieve information about the meaning of each value...
\end{itemize}



\subsection{Entries in /proc/sys/net/ipv6/}


\subsubsection{conf/default/*}

Change the interface-specific default settings


\subsubsection{conf/all/*}

§ïÅÜ©Ò¦³ interface-specific ³]©w.



°£¤F: "conf/all/forwarding" ¥¦¦³¤£¦Pªº§t¸q.




\subsubsection{conf/all/forwarding}

\begin{itemize}
\item Type: BOOLEAN
\end{itemize}


¦b¨â­Ó¬É­±¤§¶¡¶i¦æglobal IPv6 forwarding  (¼Æ¾Ú¥]Âà±H.)

IPv6 ·í¤¤±z¤£¯à³æ¿W±±¨î¤@­Ó³]³Æªº forwarding (¼Æ¾Ú¥]Âà±H).
forwarding  ªº±±¨î¥ÑIPv6-netfilter §¹¦¨.
·í­È¬°"0"®É ¼Æ¾Ú¥]Âà±Hªº¯à¤O³QÃö³¬,¼Æ¾Ú¥]¤£·|Â÷¶}¦U¦Ûªº¬É­±(¥]¬Aª«²z/µêÀÀ)¤ñ¦p tunnel.
·í­È¬°"1"®É ¼Æ¾Ú¥]Âà±Hªº¯à¤O³Q¶}±Ò.




\subsubsection{conf/interface/*}

§ïÅÜ³æ­Ó¬É­±ªº³]©w.
¨Ì¾Úlocal forwarding ¬O enabled ©Î not.


\subsubsection{accept\_ra}

\begin{itemize}
\item Type: BOOLEAN
\item Àq»{­È: enabled if local forwarding is disabled. disabled if local forwarding is enabled.
\end{itemize}


±µ¨üIPv6¸ô¥Ñ¼s§i.¨Ã¥B®Ú¾Ú±o¨ìªº«H®§¦Û°Ê³]©w.


\subsubsection{accept\_redirectsc}

\begin{itemize}
\item Type: BOOLEAN
\item Functional default: enabled if local forwarding is disabled. disabled if local forwarding is enabled.
\end{itemize}


±µ¨üIPv6¸ô¥Ñ¾¹ªº­«©w¦V.






\subsubsection{autoconf}

\begin{itemize}
\item Type: BOOLEAN
\item Default: TRUE
\end{itemize}


³]©w¥»¦a³sµ²¦a§}¨Ï¥ÎL2µwÅé¦a§}. ¥¦¨Ì¾Ú¬É­±ªºL2-MAC address¦Û°Ê²£¥Í¤@­Ó¦a§}¦p:"fe80::201:23ff:fe45:6789"




\subsubsection{dad\_transmits}

\begin{itemize}
\item Type: INTEGER
\item Default: 1
\end{itemize}


µo°e­«½Æ¦a§}¶å±´ªºÁ`¼Æ.




\subsubsection{forwarding}

\begin{itemize}
\item Type: BOOLEAN
\item Default: FALSE if global forwarding is disabled (default), otherwise TRUE
\end{itemize}


³]©w¥D¾÷/¸ô¥Ñªºinterface-specific°Ê§@.

ª`·N:±ÀÂË©Ò¦³interface(¬É­±)¨Ï¥Î¬Û¦Pªº³]©w.²V¦X¸ô¥Ñ¾¹/¥D¾÷ªº·Qªk¯u¬OÃø±o.
\begin{itemize}
\item Value FALSE: By default, Host behaviour is assumed. This means:
\begin{itemize}
\item  IsRouter ¼Ð½o¨S¦³¦bNeighbour Advertisements·í¤¤.
\item  ·í»Ý­nªº®É­Ô´Nµo°e¸ô¥Ñ½Ð¨D.
\item  ¦pªGaccept\_ra¬OTRUE (default), ±µ¨ü¸ô¥Ñ¼s§i.
\item  ¦pªGaccept\_redirects ¬O TRUE (default), ±µ¨ü­«©w¦V.
\end{itemize}
\item Value TRUE: ¦pªG¨ã³Æ¥»¦aforwarding(Âà±H),¸ô¥Ñ¾¹°Ê§@¬°°²©w.³o©M¤W­±ªº±¡ªp¬Û¤Ï:

\begin{itemize}
\item  IsRouter ¼Ð½o¦s¦b©óNeighbour Advertisements·í¤¤.
\item  ¤£µo°e¸ô¥Ñ½Ð¨D.
\item  ©¿²¤¸ô¥Ñ¼s§i.
\item  ©¿²¤­«©w¦V.
\end{itemize}

\end{itemize}





\subsubsection{hop\_limit}

\begin{itemize}
\item  Type: INTEGER
\item  Default: 64
\end{itemize}


¯Ê¬Ùhop­­¨î.






\subsubsection{mtu}

\begin{itemize}
\item  Type: INTEGER
\item  Default: 1280 (IPv6 ­n¨Dªº³Ì¤p­È)
\end{itemize}


¯Ê¬Ù³Ì¤j¶Ç¿é³æ¤¸.






\subsubsection{router\_solicitation\_delay}

\begin{itemize}
\item  Type: INTEGER
\item  Default: 1
\end{itemize}


¦bµo°e¸ô¥Ñ½Ð¨D¤§«e¬É­±ªºµ¥«Ý®É¶¡(¬í).






\subsubsection{router\_solicitation\_interval}

\begin{itemize}
\item  Type: INTEGER
\item  Default: 4
\end{itemize}


¦b¨C­Ó¸ô¥Ñ½Ð¨D¤§¶¡ªºµ¥«Ý®É¶¡(¬í).






\subsubsection{router\_solicitations}

\begin{itemize}
\item  Type: INTEGER
\item  Default: 3
\end{itemize}


°²©w¨S¦³¸ô¥Ñªº±¡ªp¤Uµo°eªº½Ð¨D­Ó¼Æ.




\subsubsection{neigh/default/*}

Change default settings for neighbor detection and some special global interval and threshold values:




\subsubsection{gc\_thresh1}

\begin{itemize}
\item  Type: INTEGER
\item  Default: 128
\end{itemize}




More to be filled.






\subsubsection{gc\_thresh2}

\begin{itemize}
\item  Type: INTEGER
\item  Default: 512
\end{itemize}




More to be filled.




\subsubsection{gc\_thresh3}

\begin{itemize}
\item  Type: INTEGER
\item  Default: 1024
\end{itemize}




ªÚ¾F¦C¦Lªí¤j¤pªº½Õ¸`¶µ.

¦pªG±z¦³³\¦h¬É­±,©Î¸ô¥Ñªí²{¤Ï±` ¸ÕµÛ¼W¤j¼Æ­È. Or if a running Zebra (routing daemon) reports:
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
ZEBRA: netlink-listen error: No buffer space available, type=RTM_NEWROUTE(24), seq=426, pid=0
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}







\subsubsection{gc\_interval}

\begin{itemize}
\item  Type: INTEGER
\item  Default: 30
\end{itemize}




More to be filled.




\subsubsection{neigh/interface/*}

Change special settings per interface for neighbor detection.




\subsubsection{anycast\_delay}

\begin{itemize}
\item  Type: INTEGER
\item  Default: 100
\end{itemize}




More to be filled.






\subsubsection{gc\_stale\_time}

\begin{itemize}
\item  Type: INTEGER
\item  Default: 60
\end{itemize}




More to be filled.






\subsubsection{proxy\_qlen}

\begin{itemize}
\item  Type: INTEGER
\item  Default: 64
\end{itemize}




More to be filled.






\subsubsection{unres\_qlen}

\begin{itemize}
\item  Type: INTEGER
\item  Default: 3
\end{itemize}




More to be filled.






\subsubsection{app\_solicit}

\begin{itemize}
\item  Type: INTEGER
\item  Default: 0
\end{itemize}




More to be filled.






\subsubsection{locktime}

\begin{itemize}
\item  Type: INTEGER
\item  Default: 0
\end{itemize}




More to be filled.






\subsubsection{retrans\_time}

\begin{itemize}
\item  Type: INTEGER
\item  Default: 100
\end{itemize}




More to be filled.






\subsubsection{base\_reachable\_time}

\begin{itemize}
\item  Type: INTEGER
\item  Default: 30
\end{itemize}




More to be filled.






\subsubsection{mcast\_solicit}

\begin{itemize}
\item  Type: INTEGER
\item  Default: 3
\end{itemize}




More to be filled.






\subsubsection{ucast\_solicit}

\begin{itemize}
\item  Type: INTEGER
\item  Default: 3
\end{itemize}




More to be filled.






\subsubsection{delay\_first\_probe\_time}

\begin{itemize}
\item  Type: INTEGER
\item  Default: 5
\end{itemize}




More to be filled.




\subsubsection{proxy\_delay}

\begin{itemize}
\item  Type: INTEGER
\item  Default: 80
\end{itemize}


More to be filled.






\subsubsection{route/*}

³]©wglobal(¥þ§½)¸ô¥Ñ




\subsubsection{flush}

Removed in newer kernel releases - more to be filled.




\subsubsection{gc\_interval}

\begin{itemize}
\item  Type: INTEGER
\item  Default: 30
\end{itemize}


More to be filled.






\subsubsection{gc\_thresh}

\begin{itemize}
\item  Type: INTEGER
\item  Default: 1024
\end{itemize}


More to be filled.






\subsubsection{mtu\_expires}

\begin{itemize}
\item  Type: INTEGER
\item  Default: 600
\end{itemize}


More to be filled.






\subsubsection{gc\_elasticity}

\begin{itemize}
\item  Type: INTEGER
\item  Default: 0
\end{itemize}


More to be filled.








\subsubsection{gc\_min\_interval}

\begin{itemize}
\item  Type: INTEGER
\item  Default: 5
\end{itemize}


More to be filled.




\subsubsection{gc\_timeout}

\begin{itemize}
\item  Type: INTEGER
\item  Default: 60
\end{itemize}


More to be filled.




\subsubsection{min\_adv\_mss}

\begin{itemize}
\item  Type: INTEGER
\item  Default: 12
\end{itemize}


More to be filled.






\subsubsection{max\_size}

\begin{itemize}
\item  Type: INTEGER
\item  Default: 4096
\end{itemize}


More to be filled.






\subsection{IPv6-related entries in /proc/sys/net/ipv4/}

¥Ø«e(ª½¨ìIPv4¥þ³¡¦¨¬°®Ö¤ß¼Ò²Õ),¤@¨Ç¶}Ãö¤]¥i¥H¬°IPv6©Ò¨Ï¥Î.




\subsubsection{ip\_*}


\subsubsection{ip\_local\_port\_range}

¤]¥i¥H¬°IPv6¨Ï¥Î.




\subsubsection{tcp\_*}

¤]¥i¥H¬°IPv6¨Ï¥Î.




\subsubsection{ICMP\_*}

¤£¯à¬°IPv6¨Ï¥Î.
¿E¬¡ ICMPv6 ¤ñ²v­­¨î rate limting  (·¥¤O±ÀÂË,¦]¬°¥¦¦³©è¿m ICMPv6 ºô¸ô­·¼Éªº¯à¤O) netfilter-v6 rules must be used.




\subsubsection{¨ä¥¦}

¤£ª¾¹D, ¤£¯à¬°IPv6¨Ï¥Î§a.






\subsection{IPv6-related entries in /proc/net/}

³o­Ó¦a¤è¬O¥uÅªªº, ±z¤£¯à³q¹L "sysctl" ±o¨ì¸ê°T,¥i¥H¨Ï¥Î "cat"


\subsubsection{if\_inet6}

¨C¤@¦æ¦a§}¥]§t¦h­Ó­È.

³o¸ÌIPv6¦a§}¬O¥Î¯S®íªº®æ¦¡¦C¦Lªº,¨Ò¤l¥u¦C¦LÀôÂ¶interface(¬É­±)§t¸q¦b¤U­±

\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
# cat /proc/net/if_inet6
00000000000000000000000000000001 01 80 10 80 lo
+------------------------------+ ++ ++ ++ ++ ++
|                                |  |  |  |  |
1                                2  3  4  5  6
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}




1. ¦a§}¥Î32­Ó¤£¥]§t":"ªº¤Q¤»¶i¨î¦C¦L.

2. ³sµ²ªº³]³Æ¼Æ­È(interface index)¨Ï¥Î¤Q¤»¶i¨î¦C¦L.

3. «eºóªºªø«×¨Ï¥Î¤Q¤»¶i¨î¦C¦L.

4. Scope value (see kernel source " include/net/ipv6.h" and "net/ipv6/addrconf.c" for more)

5. Interface flags (see "include/linux/rtnetlink.h" and "net/ipv6/addrconf.c" for more)

6. ³]³Æ¦W.




\subsubsection{ipv6\_route}

¨C¤@¦æ¦a§}¥]§t¦h­Ó­È.

³o¸ÌIPv6¦a§}¬O¥Î¯S®íªº®æ¦¡¦C¦Lªº,¨Ò¤l¥u¦C¦LÀôÂ¶interface(¬É­±)§t¸q¦b¤U­±



\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
# cat /proc/net/ipv6_route
00000000000000000000000000000000 00 00000000000000000000000000000000 00
+------------------------------+ ++ +------------------------------+ ++
|                                |  |                                |
1                                2  3                                4
? 00000000000000000000000000000000 ffffffff 00000001 00000001 00200200 lo
? +------------------------------+ +------+ +------+ +------+ +------+ ++
? |                                |        |        |        |        |
? 5                                6        7        8        9        10
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}




1. IPv6¥Ø¼Ðºô¸ô¥Î32­Ó¤£¥]§t":"ªº¤Q¤»¶i¨î¦C¦L.

2. IPv6prefix(«eºó)ªºªø«×¨Ï¥Î¤Q¤»¶i¨î¦C¦L.

3. IPv6¨Ó·½ºô¸ô¥Î32­Ó¤£¥]§t":"ªº¤Q¤»¶i¨î¦C¦L.

4. IPv6¨Ó·½prefix(«eºó)ªºªø«×¨Ï¥Î¤Q¤»¶i¨î¦C¦L.

5. IPv6¤U¤@­Óhop(ÅDÂI)¥Î32­Ó¤£¥]§t":"ªº¤Q¤»¶i¨î¦C¦L.

6. Metric in hexadecimal

7. Reference counter

8. Use counter

9. Flags(¼Ð½o)

10.Device name




\subsubsection{sockstat6}

¨C¤@¦æ¦a§}¥]§t¦h­Ó­È.

IPv6 sockets²Î­p:
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
# cat /proc/net/sockstat6
TCP6: inuse 7 
UDP6: inuse 2 
RAW6: inuse 1 
FRAG6: inuse 0 memory 0
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}




\begin{tscreen}
\begin{verbatim}

 tcp6
To be filled.

 udp6
To be filled.

 igmp6
To be filled.

 raw6
To be filled.

 ip6_flowlabel
To be filled.

 rt6_stats
To be filled.

 snmp6

Type: One line per SNMP description and value

SNMP statistics, can be retrieved via SNMP server and related MIB table by network management software.

 ip6_tables_names
Available netfilter6 tables
\end{verbatim}
\end{tscreen}







\section{Netlink-Interface to kernel}

¤º®e¦³«Ý¼W¥[... ³o¤è­±§Ú¨S¤°»ò¸gÅç...






\section{ºô¸ô debugging}


\subsection{Server socket binding(¸j©w)}


\subsection{Using "netstat" for server socket binding check}

¨Ï¥Î "netstat" ¬O±o¨ì³o¨Ç«H®§ªº±¶®|.

¨Ï¥Î¿ï¶µ: -nlptu

¨Ò¤l:
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
# netstat -nlptu
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State      
? PID/Program name
tcp        0      0 0.0.0.0:32768           0.0.0.0:*               LISTEN     
? 1258/rpc.statd
tcp        0      0 0.0.0.0:32769           0.0.0.0:*               LISTEN     
? 1502/rpc.mountd
tcp        0      0 0.0.0.0:515             0.0.0.0:*               LISTEN     
? 22433/lpd Waiting
tcp        0      0 1.2.3.1:139             0.0.0.0:*               LISTEN     
? 1746/smbd
tcp        0      0 0.0.0.0:111             0.0.0.0:*               LISTEN     
? 1230/portmap
tcp        0      0 0.0.0.0:6000            0.0.0.0:*               LISTEN     
? 3551/X
tcp        0      0 1.2.3.1:8081            0.0.0.0:*               LISTEN     
? 18735/junkbuster
tcp        0      0 1.2.3.1:3128            0.0.0.0:*               LISTEN     
? 18822/(squid)
tcp        0      0 127.0.0.1:953           0.0.0.0:*               LISTEN     
? 30734/named
tcp        0      0 ::ffff:1.2.3.1:993      :::*                    LISTEN     
? 6742/xinetd-ipv6
tcp        0      0 :::13                   :::*                    LISTEN     
? 6742/xinetd-ipv6
tcp        0      0 ::ffff:1.2.3.1:143      :::*                    LISTEN     
? 6742/xinetd-ipv6
tcp        0      0 :::53                   :::*                    LISTEN     
? 30734/named
tcp        0      0 :::22                   :::*                    LISTEN     
? 1410/sshd
tcp        0      0 :::6010                 :::*                    LISTEN     
? 13237/sshd
udp        0      0 0.0.0.0:32768           0.0.0.0:*                          
? 1258/rpc.statd
udp        0      0 0.0.0.0:2049            0.0.0.0:*                          
? -
udp        0      0 0.0.0.0:32770           0.0.0.0:*                          
? 1502/rpc.mountd
udp        0      0 0.0.0.0:32771           0.0.0.0:*                          
? -
udp        0      0 1.2.3.1:137             0.0.0.0:*                          
? 1751/nmbd
udp        0      0 0.0.0.0:137             0.0.0.0:*                          
? 1751/nmbd
udp        0      0 1.2.3.1:138             0.0.0.0:*                          
? 1751/nmbd
udp        0      0 0.0.0.0:138             0.0.0.0:*                          
? 1751/nmbd
udp        0      0 0.0.0.0:33044           0.0.0.0:*                          
? 30734/named
udp        0      0 1.2.3.1:53              0.0.0.0:*                          
? 30734/named
udp        0      0 127.0.0.1:53            0.0.0.0:*                          
? 30734/named
udp        0      0 0.0.0.0:67              0.0.0.0:*                          
? 1530/dhcpd
udp        0      0 0.0.0.0:67              0.0.0.0:*                          
? 1530/dhcpd
udp        0      0 0.0.0.0:32858           0.0.0.0:*                          
? 18822/(squid)
udp        0      0 0.0.0.0:4827            0.0.0.0:*                          
? 18822/(squid)
udp        0      0 0.0.0.0:111             0.0.0.0:*                          
? 1230/portmap
udp        0      0 :::53                   :::*                               
? 30734/named
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}





\subsection{Examples for tcpdump packet dumps}

¤U­±¬O¤@¨Ç³Q®·Àòªº¼Æ¾Ú¥]  ...¤U¤@¦¸§Ú·|¦h§Ë¤@ÂI¨Ó...:




\subsubsection{Router discovery(¸ô¥Ñµo²{)}

Router advertisement
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
15:43:49.484751 fe80::212:34ff:fe12:3450 > ff02::1: icmp6: router
? advertisement(chlim=64, router_ltime=30, reachable_time=0,
? retrans_time=0)(prefix info: AR valid_ltime=30, preffered_ltime=20,
? prefix=2002:0102:0304:1::/64)(prefix info: LAR valid_ltime=2592000,
? preffered_ltime=604800, prefix=3ffe:ffff:0:1::/64)(src lladdr:
? 0:12:34:12:34:50) (len 88, hlim 255)
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}


¸ô¥Ñ¾¹¨Ï¥Îlink-local ¦a§} "fe80::212:34ff:fe12:3450" µo°e¼s§i¦Ü\\ 
all-node-on-link multicast address "ff02::1" \\ 
¦b¥¦¦Û¤vªº layer 2 MAC ¦a§} "0:12:34:12:34:50"¤¤, \\ 
¥]§t¨â­Ó«eºó2002:0102:0304:1::/64" (lifetime 30 s) ©M "3ffe:ffff:0:1::/64" (lifetime 2592000 s) 






\subsubsection{Router solicitation(¸ô¥Ñ½Ð¨D)}

\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
15:44:21.152646 fe80::212:34ff:fe12:3456 > ff02::2: icmp6: router solicitation
? (src lladdr: 0:12:34:12:34:56) (len 16, hlim 255)
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}


¾Ö¦³link-local¦a§} "fe80::212:34ff:fe12:3456" ©M layer 2 MAC ¦a§} "0:12:34:12:34:56"ªº¸`ÂI´M§ä¦b½uªº
¸ô¥Ñ¾¹. ©Ò¥Hµo°e¤@­Ó¸ô¥Ñ½Ð¨D¨ì©Ò¦³¦b½uªº¸ô¥Ñ¾¹¦a§}multicast address "ff02::2" 




\subsubsection{Neighbor discovery(µo²{ªÚ¾F)}


\subsubsection{Neighbor discovery solicitation for duplicate address detection(¹ïºô¸ôªÚ¾F·í¤¤ "­«½Æªº¦a§}" ¶i¦æÀË¬d)}

ÀHµÛ¼Æ¾Ú¥]±qlayer 2 MAC ¦a§} "0:12:34:12:34:56" µo°e¥X¥hªº¦P®ÉÀË¬d¬O§_¦³¸`ÂI¥Î¬Û¦Pªº¦a§}µo°e¼Æ¾Ú¥].
Following packets are sent by a node with layer 2 MAC address
"0:12:34:12:34:56" during autoconfiguration to check whether a 
potential address is already used by another node on the link 
sending this to the solicited-node link-local multicast address

\begin{itemize}
\item ·í¸`ÂI±N¨Ï¥Î¦a§}"fe80::212:34ff:fe12:3456"§@¬°¥»¦a³sµ²®ÉÀË¬d­«½Æªº¦a§}.
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
                       15:44:17.712338 :: > ff02::1:ff12:3456: icmp6: neighbor sol: who has
                       ? fe80::212:34ff:fe12:3456(src lladdr: 0:12:34:12:34:56) (len 32, hlim 255)
                      
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}

\item ·í¸`ÂI±N¨Ï¥Î¦a§}"2002:0102:0304:1:212:34ff:fe12:3456"§@¬°global(¥þ§½)³sµ²®ÉÀË¬d­«½Æªº¦a§}(±o¨ì¤W­±ªº¼s§i¤§«á).
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
                      15:44:21.905596 :: > ff02::1:ff12:3456: icmp6: neighbor sol: who has
                      ? 2002:0102:0304:1:212:34ff:fe12:3456(src lladdr: 0:12:34:12:34:56) (len 32,
                      ? hlim 255)
                     
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}

\item ·í¸`ÂI±N¨Ï¥Î¦a§}"3ffe:ffff:0:1:212:34ff:fe12:3456" §@¬°global(¥þ§½)³sµ²®ÉÀË¬d­«½Æªº¦a§}(±o¨ì¤W­±ªº¼s§i¤§«á).
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
                      15:44:22.304028 :: > ff02::1:ff12:3456: icmp6: neighbor sol: who has
                      ? 3ffe:ffff:0:1:212:34ff:fe12:3456(src lladdr: 0:12:34:12:34:56) (len 32, hlim
                      ? 255)
                     
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}

\end{itemize}







\subsubsection{Neighbor discovery solicitation for looking for host or gateway(¬d§ä¤@¥x¥D¾÷©Î¹h¹D)}

\begin{itemize}
\item ¸`ÂI·Q­nµo°e¼Æ¾Ú¥]¦Ü"3ffe:ffff:0:1::10",¦ý¬O¨S¦³layer 2 MAC ªºµo°e¦a§},©ó¬Oµo°e½Ð¨D.
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
                      13:07:47.664538 2002:0102:0304:1:2e0:18ff:fe90:9205 > ff02::1:ff00:10: icmp6:
                      ? neighbor sol: who has 3ffe:ffff:0:1::10(src lladdr: 0:e0:18:90:92:5) (len 32,
                      ? hlim 255)
                     
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}

\item ¸`ÂI²{¦b¬d§ä"fe80::10"
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
                       13:11:20.870070 fe80::2e0:18ff:fe90:9205 > ff02::1:ff00:10: icmp6: neighbor
                       ? sol: who has fe80::10(src lladdr: 0:e0:18:90:92:5) (len 32, hlim 255)
                     
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}

\end{itemize}





\section{Support for persistent IPv6 configuration in Linux distributions(¦b¤£¦Pªºµo¦æª©¤¤³]©wIPv6)}


\subsection{Red Hat Linux and "clones"(¤p¬õ´U©M¥¦ªº§Ì¥S®X©f)}

¦Û±q§Ú¶}©l¼g       \onlynameurl{IPv6 \& Linux - HowTo}.§Ú¥´ºâ³]©w¤@­Ó«ù¤[ªºIPv6°t¸m,¥]§t:
host-only, router-only, dual-homed-host, router with second stub network, normal tunnels, 6to4 tunnels
©M¨ä¥¦.²{¦b§Ú¼g¤F¤@­Óconfiguration and script files ³o­Óscript¦³¦Û¤vªºHOWTO:

\onlynameurl{ IPv6-HOWTO/scripts/current}. 
°÷¹Bªº¬O, Red Hat Linux ±q 7.1 ¶}©l´N¥]§t¤F³o­Óscript.¦hÁ«¤FPekka SavolaªºÀ°§U.


\subsection{Mandrake(°Ò¼wµÜ§J)Linux }

±q8.0«á¤]¥]§t¤F IPv6-enabled initscript package¦ý¬O¦³ÂI¤p°ÝÃD("ifconfig" misses "inet6" before "add").




\subsubsection{¤ä«ùIPv6ªººô¸ô³]©w scripts ´ú¸Õ }

script libraryÀ³¸Ó¦s¦b:
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
                     /etc/sysconfig/network-scripts/network-functions-ipv6
                    
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}




¦Û°Ê´ú¸Õ:
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
                     # test -f /etc/sysconfig/network-scripts/network-functions-ipv6 && echo "Main
                     ? IPv6 script library exists"
                    
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}




libraryªºª©¥»«Ü­«­n, §ó°ªªºª©¥»¥]§t¤F§ó¦hªº¥\¯à.±z¥i¥H³q¹L³o­ÓÀËµø¥¦:
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
                     # source /etc/sysconfig/network-scripts/network-functions-ipv6 &&
                     ? getversion_ipv6_functions 
                     20011124
                    
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}





\subsubsection{Short hint for enabling IPv6 on current RHL 7.1, 7.2, 7.3, ...(¤@¨Ç¤p´£¥Ü)}

\begin{itemize}
\item ÀËµøIPv6¼Ò²Õ¬O§_¤w¸g±¾¶i¨t²Î.
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
                    # modprobe -c | grep net-pf-10
                    alias net-pf-10 off
                   
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}
\item ¦pªG¬O"off" ¦b /etc/sysconfig/network ¤¤¥[¤JIPv6ªº¤ä«ù.
   
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
                    NETWORKING_IPV6=yes
                   
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}

\item ­«·sªì©lºô¸ô:
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
                    # service network restart
                   
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}


       
\item IPv6¼Ò²ÕÀ³¸Ó±¾¶i¨Ó¤F:
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
                    # modprobe -c | grep ipv6
                    alias net-pf-10 ipv6
                   
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}
\end{itemize}




¦pªG±z´£¨Ñ¸ô¥Ñ¼s§iautoconfiguration ·|¦Û°Ê¬°±z³]©w,
§ó¦hªº¸ê°T½Ð¬Ý /usr/share/doc/initscripts-\$version/sysconfig.txt.




\subsection{SuSE(Ä¬¿A´µ)Linux }

7.x ¥H¤W, ¤ä«ùIPv6. ¦b/etc/rc.config ¸Ì¦³§ó¦hªº¸ê°T.
¦]¬°¤£¦Pªº³]©w¤èªk©Mscriptsµ²ºc, ©Ò¥H¤£¯à±NRed Hat Linux ·í¤¤ªº¤èªk·Ó·h¹L¨Ó.


\subsubsection{§ó¸ÔºÉªº¸ê°T½Ð¬Ý: }

                  \onlynameurl{How to setup 6to4 IPv6 with SuSE 7.3}


\subsection{Debian(­}¤ñ¦w)Linux}

°Ñ·Ó:
\onlynameurl{IPv6 on Debian Linux}


\section{¨¾¤õÀð}


\subsection{¨Ï¥Î netfilter6¨¾¤õÀð}

netfilter6¨¾¤õÀð¥u¤ä«ù2.4¥H¤Wªº®Ö¤ß.¦­´Áªº2.2®Ö¤ß±z¥u¯à¥Î41¸¹¨óÄ³¹LÂoIPv6-in-IPv4.

Äµ§i: «ö·Ó¨Ò¤l¨º¼Ë³]©w¨Ã¤£¯à¯u¥¿¦a«OÅ@±zªº§@·~¨t²Î.


\subsection{§ó¦hªº¸ê°T:}

\begin{itemize}
\item     \onlynameurl{Netfilter project}
\item     \onlynameurl{maillist archive of netfilter users}
\item     \onlynameurl{maillist archive of netfilter developers}
\item     \onlynameurl{Unofficial status informations}
\end{itemize}
   






\subsection{·Ç³Æ}

¤U¸ü³Ì·sªº®Ö¤ß:   \\ 
 \onlynameurl{http://www.kernel.org/}   

 ¤U¸ü³Ì·sªºiptables:

           tar:\\ 
  \onlynameurl{http://www.netfilter.org/}  

Source RPM for rebuild of binary (for RedHat systems): \\ 
  \onlynameurl{ftp://ftp.redhat.com/redhat/linux/rawhide/SRPMS/SRPMS/}             




\subsubsection{¸Ñ¶}·½¥N½X}

¸Ñ¶}·½¥N½X»P§ó¦W
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
        # tar z|jxf kernel-version.tar.gz|bz2 
        # mv linux linux-version-iptables-version+IPv6 
        
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}




¸Ñ¶} iptables ·½¥N½X
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
         # tar z|jxf iptables-version.tar.gz|bz2 
        
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}




Apply pending patches 
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
         # make pending-patches KERNEL_DIR=/path/to/src/linux-version-iptables-version/ 
        
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}


Apply additional IPv6 related patches (still not in the vanilla kernel included) 
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
         # make patch-o-matic KERNEL_DIR=/path/to/src/linux-version-iptables-version/ 
        
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}




¦b¤U­±ªº¿ï³æ¤¤¦^µªyes:
\begin{itemize}
\item ah-esp.patch 
\item masq-dynaddr.patch (only needed for systems with dynamic IP assigned WAN connections like PPP or PPPoE) 
\item ipv6-agr.patch.ipv6 
\item ipv6-ports.patch.ipv6 
\item LOG.patch.ipv6 
\item REJECT.patch.ipv6 
\end{itemize}


ÀËµøIPv6¬A®i:
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
         # make print-extensions 
         Extensions found: IPv6:owner IPv6:limit IPv6:mac IPv6:multiport
        
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}





\subsubsection{Configure, build and install new kernel(³]©w,½sÄ¶,¦w¸Ë·sªº®Ö¤ß)}

¶i¤J¥N½X¥Ø¿ý:
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
        # cd /path/to/src/linux-version-iptables-version/ 
        
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}




§ïÅÜMakefile 
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
         - EXTRAVERSION = 
         + EXTRAVERSION = -iptables-version+IPv6-try 
        
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}




¹B¦æ¬ÛÃöªº³]©w:Run configure, enable IPv6 related 
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
         Code maturity level options 
                  Prompt for development and/or incomplete code/drivers : yes 
            Networking options 
                  Network packet filtering: yes 
                  The IPv6 protocol: module 
                       IPv6: Netfilter Configuration 
                             IP6 tables support: module 
                             All new options like following: 
                                   limit match support: module 
                                   MAC address match support: module 
                                   Multiple port match support: module 
                                   Owner match support: module 
                                   netfilter MARK match support: module 
                                   Aggregated address check: module 
                                   Packet filtering: module 
                                        REJECT target support: module 
                                        LOG target support: module 
                                   Packet mangling: module 
                                   MARK target support: module 
        
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}


¦b¨t²Îªº¨ä¥¦¤è­±¶i¦æ¬ÛÀ³ªº­×§ï.




\subsubsection{Rebuild and install binaries of iptables (¥´³y¤@­Ó·sªºiptables)}

½T©w±zªº®Ö¤ß·½¥N½X¦s¦b©ó:    /usr/src/linux/ 



Rename older directory 
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
         # mv /usr/src/linux /usr/src/linux.old
        
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}






Create a new softlink 

\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
         # ln /path/to/src/linux-version-iptables-version /usr/src/linux 
        
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}




Rebuild SRPMS 
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
         # rpm --rebuild /path/to/SRPMS/iptables-version-release.src.rpm
        
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}




 Install new iptables packages (iptables + iptables-ipv6) ¦w¸Ë·sªºiptables
\begin{itemize}
\item On RH 7.1 systems, ³q±`¤w¸g¦³¤@­Ó§ó¦­ªºª©¥», therefore use "freshen" 
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
         # rpm -Fhv /path/to/RPMS/cpu/iptables*-version-release.cpu.rpm 
        
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}
\item ¦pªG¨S¦³¦w¸Ë,±z´N¿Ë¦Û¨Ó§a:
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
         # rpm -ihv /path/to/RPMS/cpu/iptables*-version-release.cpu.rpm 
        
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}

  
\item ¦pªG¦bRH6.2¤W¦w¸Ë,­n¥[¤W"--nodep":
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
         # rpm -ihv --nodep /path/to/RPMS/cpu/iptables*-version-release.cpu.rpm 
        
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}

\item ¥i¯à­n¬°iptables¥[¤W¤@­Ósoftlink: 
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
          # ln -s /lib/iptables/ /usr/lib/iptables
        
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}
\end{itemize}





\subsection{¨Ï¥Î¤èªk}


\subsubsection{ÀËµø}

±N¼Ò²Õ±¾¶i¨Ó:

\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
         # modprobe ip6_tables  
        
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}


ÀËµø
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
         # [ ! -f /proc/net/ip6_tables_names ] && echo "Current kernel doesn't support
         ? 'ip6tables' firewalling (IPv6)!" 
        
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}





\subsection{¨Ï¥Îip6tables
 }

  
\begin{tscreen}
\begin{verbatim}
16.3.2.1. List all IPv6 netfilter entries

Short 

# ip6tables -L 
 


Extended 

# ip6tables -n -v --line-numbers -L 
 

List specified filter
# ip6tables -n -v --line-numbers -L INPUT 
 

 ¥[¤J¤@­Ó¤é»x:
# ip6tables --table filter --append INPUT  -j LOG --log-prefix "INPUT:"
? --log-level 7 
 

¥[¤J¤@­Ó¤J¯¸¥á±óªº±ø¥ó:
# ip6tables --table filter --append INPUT  -j DROP 
 

²¾°£¤@­Ó±ø¥ó:
# ip6tables --table filter --delete INPUT 1 
 

¤¹³\ ICMPv6:
Using older kernels (unpatched kernel 2.4.5 and iptables-1.2.2) no type can be specified


¤¹³\¤J¯¸ ICMPv6 ¸g¹L tunnels 

# ip6tables -A INPUT -i sit+ -p icmpv6 -j ACCEPT 
 


¤¹³\¥X¯¸ ICMPv6 ¸g¹L tunnels 
# ip6tables -A OUTPUT -o sit+ -p icmpv6 -j ACCEPT 
 

Newer kernels allow specifying of ICMPv6 types:

# ip6tables -A INPUT -p icmpv6 --icmpv6-type echo-request -j ACCEPT
 

­­¨îRate-limiting
Because it can happen (author already saw it to times) that an ICMPv6 storm will raise up, you should use available rate limiting for at least ICMPv6 ruleset. In addition logging rules should also get rate limiting to prevent DoS attacks against syslog and storage of log file partition. An example for a rate limited ICMPv6 looks like:

# ip6tables -A INPUT --protocol icmpv6 --icmpv6-type echo-request -j ACCEPT --match limit --limit 30/minute
 

 ¤¹³\¤J¯¸ªº SSH
Here an example is shown for a ruleset which allows incoming SSH connection from a specified IPv6 address 


  ¤¹³\¨Ó¦Û 3ffe:ffff:100::1/128 ªº SSH ¤J¯¸ 

# ip6tables -A INPUT -i sit+ -p tcp -s 3ffe:ffff:100::1/128 --sport 512:65535
? --dport 22 -j ACCEPT 
 


¤¹³\¦^À³¥]Allow response packets (¦¹¨è IPv6 ³sµ²°lÂÜ¤£¦b mainstream netfilter6 implemented ·í¤¤) 

# ip6tables -A OUTPUT -o sit+ -p tcp -d 3ffe:ffff:100::1/128 --dport 512:65535
? --sport 22 ! --syn j ACCEPT 
 

¥R³\ tunneled IPv6-in-IPv4
Tto accept tunneled IPv6-in-IPv4 packets, ¦bIPv4 ¨¾¤õÀð°µ¬ÛÀ³ªº³]©w firewall setup relating to such packets, for example 


¥R³\ interface ppp0 ªº IPv6-in-IPv4 ¤J¯¸ 

# iptables -A INPUT -i ppp0 -p ipv6 -j ACCEPT 
 


¥R³\ interface ppp0 ªº IPv6-in-IPv4 ¥X¯¸ 

# iptables -A OUTPUT -o ppp0 -p ipv6 -j ACCEPT 
 

If you have only a static tunnel, you can specify the IPv4 addresses, too, like 


¥R³\¨Ó¦Û endpoint 1.2.3.4 ªº IPv6-in-IPv4 ³q¹L interface ppp0 ¤J¯¸ 

# iptables -A INPUT -i ppp0 -p ipv6 -s 1.2.3.4 -j ACCEPT 
 


¥R³\¨Ó¦Û endpoint 1.2.3.4 ªº IPv6-in-IPv4 ³q¹L interface ppp0 ¤J¯¸ 

# iptables -A OUTPUT -o ppp0 -p ipv6 -d 1.2.3.4 -j ACCEPT 
 

16.3.2.10. Protection against incoming TCP connection requests
·¥¤O±ÀÂË! ¥X©ó¦w¥þ¦Ò¼{ ±zÀ³·í¥[¤J¤@­Óªý¤îTCP ³sµ²½Ð¨D¤J¯¸ªº±ø¥ó . Adapt "-i" option, if other interface names are in use! 


ªý¤î¤J¯¸ªº TCP ³sµ²½Ð¨D 

# ip6tables -I INPUT -i sit+ -p tcp --syn -j DROP 
 

¦b¸ô¥Ñ¾¹«á­± ªý¤î¤J¯¸ªº TCP ³sµ²½Ð¨D 

# ip6tables -I FORWARD -i sit+ -p tcp --syn -j DROP 
 

¥i¯à³o¨Ç±ø¥ó¥H¸g¦s¦b¨ä¥¦¦a¤è,¦ý³o¬O±z·Q·íµMªº·Qªk.³Ì¦n«Ø¤@­Ó¥]§t«Ü¦h±ø¥óªº script µM«á°õ¦æ. 

16.3.2.11.ªý¤î¤J¯¸ªº UDP ³sµ²½Ð¨D 

·¥¤O±ÀÂË! ´£°_¹L§Úªº¨¾¤õÀð¸ê°T¥i¥H±±¨î¥X¯¸ UDP/TCP ·|¸ÜªººÝ¤f. ©Ò¥H¦pªG±zªº¥»¦aIPv6¨t²Î¨Ï¥Î¥»¦aºÝ¤f ¤ñ¦p:±q 32768 ¦Ü 60999 ±z¤]¥i¥H¹³³o¼Ë¹LÂoUDP³sµ² (ª½¨ì³sµ²¸òÂÜ¥¿±`¤u§@) like: 


ªý¤î¤J¯¸ªº UDP ¼Æ¾Ú¥] , ±ÙÂ_½Ð¨D¥X¯¸ªº¦^À³¼Æ¾Ú¥] 

# ip6tables -I INPUT -i sit+ -p udp ! --dport 32768:60999 -j DROP 
 


¦b¸ô¥Ñ¾¹¤W­±ªý¤î¤J¯¸ªº UDP ¼Æ¾Ú¥]Âà±H¨ì¸ô¥Ñ¾¹«á­±ªº¥D¾÷

ip6tables -I FORWARD -i sit+ -p udp ! --dport 32768:60999 -j DROP 
 
   
\end{verbatim}
\end{tscreen}





\subsubsection{¹ê¨Ò:}

¤U­±³o­Ó¹ê¨Ò¬O¤@­Ó¸g¨å, ¥Ñ Happy netfilter6 ruleset ¥Í¦¨:

\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
# ip6tables -n -v -L 
Chain INPUT (policy DROP 0 packets, 0 bytes) 
 pkts bytes target     prot opt in     out     source               destination
    0     0 extIN      all      sit+   *       ::/0                 ::/0 
    4   384 intIN      all      eth0   *       ::/0                 ::/0 
    0     0 ACCEPT     all      *      *       ::1/128              ::1/128 
    0     0 ACCEPT     all      lo     *       ::/0                 ::/0 
    0     0 LOG        all      *      *       ::/0                 ::/0       
?        LOG flags 0 level 7 prefix `INPUT-default:' 
    0     0 DROP       all      *      *       ::/0                 ::/0 
 
Chain FORWARD (policy DROP 0 packets, 0 bytes) 
 pkts bytes target     prot opt in     out     source               destination
? 
    0     0 int2ext    all      eth0   sit+    ::/0                 ::/0 
    0     0 ext2int    all      sit+   eth0    ::/0                 ::/0 
    0     0 LOG        all      *      *       ::/0                 ::/0       
?        LOG flags 0 level 7 prefix `FORWARD-default:' 
    0     0 DROP       all      *      *       ::/0                 ::/0 
 
Chain OUTPUT (policy DROP 0 packets, 0 bytes) 
 pkts bytes target     prot opt in     out     source               destination
? 
    0     0 extOUT     all      *      sit+    ::/0                 ::/0 
    4   384 intOUT     all      *      eth0    ::/0                 ::/0 
    0     0 ACCEPT     all      *      *       ::1/128              ::1/128 
    0     0 ACCEPT     all      *      lo      ::/0                 ::/0 
    0     0 LOG        all      *      *       ::/0                 ::/0       
?        LOG flags 0 level 7 prefix `OUTPUT-default:' 
    0     0 DROP       all      *      *       ::/0                 ::/0 
 
Chain ext2int (1 references) 
 pkts bytes target     prot opt in     out     source               destination
? 
    0     0 ACCEPT     icmpv6    *      *       ::/0                 ::/0 
    0     0 ACCEPT     tcp      *      *       ::/0                 ::/0       
?        tcp spts:1:65535 dpts:1024:65535 flags:!0x16/0x02 
    0     0 LOG        all      *      *       ::/0                 ::/0       
?        LOG flags 0 level 7 prefix `ext2int-default:' 
    0     0 DROP       tcp      *      *       ::/0                 ::/0 
    0     0 DROP       udp      *      *       ::/0                 ::/0 
    0     0 DROP       all      *      *       ::/0                 ::/0 
 
Chain extIN (1 references) 
 pkts bytes target     prot opt in     out     source               destination
? 
    0     0 ACCEPT     tcp      *      *       3ffe:400:100::1/128  ::/0       
?        tcp spts:512:65535 dpt:22 
    0     0 ACCEPT     tcp      *      *       3ffe:400:100::2/128  ::/0       
?        tcp spts:512:65535 dpt:22 
    0     0 ACCEPT     icmpv6    *      *       ::/0                 ::/0 
    0     0 ACCEPT     tcp      *      *       ::/0                 ::/0       
?        tcp spts:1:65535 dpts:1024:65535 flags:!0x16/0x02 
    0     0 ACCEPT     udp      *      *       ::/0                 ::/0       
?        udp spts:1:65535 dpts:1024:65535 
    0     0 LOG        all      *      *       ::/0                 ::/0       
?        limit: avg 5/min burst 5 LOG flags 0 level 7 prefix `extIN-default:' 
    0     0 DROP       all      *      *       ::/0                 ::/0 
 
Chain extOUT (1 references) 
 pkts bytes target     prot opt in     out     source               destination
? 
    0     0 ACCEPT     tcp      *      *       ::/0                
? 3ffe:ffff:100::1/128tcp spt:22 dpts:512:65535 flags:!0x16/0x02 
    0     0 ACCEPT     tcp      *      *       ::/0                
? 3ffe:ffff:100::2/128tcp spt:22 dpts:512:65535 flags:!0x16/0x02 
    0     0 ACCEPT     icmpv6    *      *       ::/0                 ::/0 
    0     0 ACCEPT     tcp      *      *       ::/0                 ::/0       
?        tcp spts:1024:65535 dpts:1:65535 
    0     0 ACCEPT     udp      *      *       ::/0                 ::/0       
?        udp spts:1024:65535 dpts:1:65535 
    0     0 LOG        all      *      *       ::/0                 ::/0       
?        LOG flags 0 level 7 prefix `extOUT-default:' 
    0     0 DROP       all      *      *       ::/0                 ::/0 
 
Chain int2ext (1 references) 
 pkts bytes target     prot opt in     out     source               destination
? 
    0     0 ACCEPT     icmpv6    *      *       ::/0                 ::/0 
    0     0 ACCEPT     tcp      *      *       ::/0                 ::/0       
?        tcp spts:1024:65535 dpts:1:65535 
    0     0 LOG        all      *      *       ::/0                 ::/0       
?        LOG flags 0 level 7 prefix `int2ext:' 
    0     0 DROP       all      *      *       ::/0                 ::/0 
    0     0 LOG        all      *      *       ::/0                 ::/0       
?        LOG flags 0 level 7 prefix `int2ext-default:' 
    0     0 DROP       tcp      *      *       ::/0                 ::/0 
    0     0 DROP       udp      *      *       ::/0                 ::/0 
    0     0 DROP       all      *      *       ::/0                 ::/0 
 
Chain intIN (1 references) 
 pkts bytes target     prot opt in     out     source               destination
? 
    0     0 ACCEPT     all      *      *       ::/0                
? fe80::/ffc0:: 
    4   384 ACCEPT     all      *      *       ::/0                 ff02::/16 
 
Chain intOUT (1 references) 
 pkts bytes target     prot opt in     out     source               destination
? 
    0     0 ACCEPT     all      *      *       ::/0                
? fe80::/ffc0:: 
    4   384 ACCEPT     all      *      *       ::/0                 ff02::/16 
    0     0 LOG        all      *      *       ::/0                 ::/0       
?        LOG flags 0 level 7 prefix `intOUT-default:' 
    0     0 DROP       all      *      *       ::/0                 ::/0 
        
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}





\section{¦w¥þ}


\subsection{Access limitations}

¦³³\¦hªA°È¨Ï¥Î tcp\_wrapper library ±±¨î³X°Ý.Below is described the use of tcp\_wrapper

¤º®e¦³«Ý¼W¥[...


\subsection{IPv6¦w¥þ¼f®Ö}

 ¥Ø«e¨S¦³¤°»ò¸û¦nªº°Ó·~¤u¨ã¨Ó¶i¦æ


\subsubsection{Legal issues}

Äµ§i:±z¥u¯à±½ºË¦Û¤vªº¨t²Î,¤£µM,¥i¯à·|Ä²¤Îªk«ß.¶}©l¤§«e,½ÐÀË¹î±z­n±½ºËªºIPv6¥Ø¼Ð¦a§}¨â¦¸!.




\subsection{Security auditing using IPv6-enabled netcat(¨Ï¥Î¾AÀ³IPv6ªºnetcat)}

Ãö©óIPv6-enabled netcatªº¸Ô²Ó¸ê°T½Ð°Ñ·Ó:\onlynameurl{ IPv6?status-apps/security-auditing}



¨Ò¤l:
\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
         # nc6 ::1 daytime
         13 JUL 2002 11:22:22 CEST
        
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}



\subsection{Security auditing using IPv6-enabled nmap}

¥þ¥@¬É³Ì¬°Àu¨qªº±½ºËµ{¦¡¤§¤@.¥¦ªº­º­¶:   \onlynameurl{http://www.insecure.org/nmap/}
±q 3.10ALPHA1 ªºª©¥»¶}©l¤ä«ùIPv6. ¨Ò¤l:

\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
         # nmap -6 -sT ::1
         Starting nmap V. 3.10ALPHA3 ( www.insecure.org/nmap/ ) 
         Interesting ports on localhost6 (::1): 
         (The 1600 ports scanned but not shown below are in state: closed) 
         Port       State       Service 
         22/tcp     open        ssh 
         53/tcp     open        domain 
         515/tcp    open        printer 
         2401/tcp   open        cvspserver
         Nmap run completed -- 1 IP address (1 host up) scanned in 0.525 seconds
        
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}



\subsection{Security auditing using IPv6-enabled strobe}

 Strobe ¦P NMap¬Û¤ñ§ó¤£¨ãÆF¬¡©Ê,¦ý¤w¸g¦³ IPv6-enabling patch (see IPv6?status-apps/security-auditing for more). Usage example:

\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
         # ./strobe ::1 strobe 1.05 (c) 1995-1999 Julian Assange <proff@iq.org>.
         ::1 2401 unassigned unknown
         ::1 22 ssh Secure Shell - RSA encrypted rsh 
         ::1 515 printer spooler (lpd)
         ::1 6010 unassigned unknown 
         ::1 53 domain Domain Name Server
        
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}



\subsection{¼f®Öµ²ªG}

¦pªG¼f®Öµ²ªG¦P±zªºIPv6¦w¥þµ¦²¤¦³¥X¤J, ½Ð°ô¤WÀË´ú¥Xªºº|¬}.






\section{Encryption and Authentication(¥[±K©M»{ÃÒ)}

Support in kernel

Currently missing in 2.4, perhaps in 2.5 
(see below). There is an issue about keeping the 
Linux kernel source free of export/import-control-laws 
regarding encryption code. This is also one case why 
\onlynameurl{FreeS/WAN} project (IPv4 only IPsec) 
isn't still contained in vanilla source.

Support in USAGI kernel

The USAGI project has taken over in July 2001 
the IPv6 enabled FreeS/WAN code from the\onlynameurl{IABG / IPv6 Project} 
and included in their kernel extensions, but still work in progress, 
means that not all IABG features are already working in USAGI extension.




\subsection{¥Îªk}

°Ñ·Ó: \onlynameurl{FreeS/WAN / Online documentation} 


\section{½u¤W´ú¸Õ¤u¨ã}

¤º®e¦³«Ý¼W¥[... Åwªï´£«ØÄ³!
\begin{itemize}
\item finger, nslookup, ping, traceroute, whois: 
\onlynameurl{UK IPv6 Resource Centre / The test page}
\item ping, traceroute, tracepath, 6bone registry, DNS: 
\onlynameurl{ JOIN / Testtools}  (German language only, but should be no problem for non German speakers)
\item traceroute6, whois: \onlynameurl{IPng.nl}
\end{itemize}



\section{¨ä¥¦¸ê°T}


\subsection{½u¤W¸ê°T}

¥[¤JIPv6 backbone°©·Fºô¸ô\\ 
IPv6 test backbone: \onlynameurl{6bone}, 
\onlynameurl{How to join 6bone}


\subsubsection{¥D­nªºµù¥U°Ï°ì}

\begin{itemize}
\item America:              \onlynameurl{ARIN}
\onlynameurl{Ripe}
\item Asia/Pacific:         \onlynameurl{APNIC}
\item Latin America and Caribbea:
\onlynameurl{LACNIC}
\end{itemize}




Also a list of major (prefix length 35) allocations per local registry is available here:\\ 
                   \onlynameurl{ Ripe NCC / IPv6 allocations}






\subsubsection{Tunnel brokers}

\begin{itemize}
\item                       \onlynameurl{Freenet6} Canada
\item                       \onlynameurl{Hurricane Electric} US backbone
\item                       \onlynameurl{Centro Studi e Laboratory Telecomunicazioni} Italy
\item                       \onlynameurl{Wanadoo} Belgium
\item                       \onlynameurl{CERTNET-Nokia} China
\item                       \onlynameurl{Tunnelbroker Leipzig} Germany - DialupUsers with dynamic IP's can get a fix IPv6 IP...
\item                       \onlynameurl{Internet Initiative Japan} Japan - with IPv6 native line service and IPv6 tunneling Service
\item                       \onlynameurl{XS26 - Access to Six}Netherland - with POPs in Slovak Republic, Czech Republic, Netherlands, Germany and Hungary.
\item                       \onlynameurl{IPng Netherland} Netherland - Intouch, SurfNet, AMS-IX, UUNet, Cistron, RIPE NCC and AT\& T are connected at the AMS-IX. It is possible (there are requirements...) to get an static tunnel.
\item                       \onlynameurl{UNINETT} Norway - Pilot IPv6 Service (for Customers): tunnelbroker \& address allocation
\item                       \onlynameurl{NTT Europe}
\onlynameurl{NTT Euroope} United Kingdom - IPv6 Trial. IPv4 Tunnel and native IPv6 leased Line connections. POPs are located in London, UK Dusseldorf, Germany New Jersey, USA (East Coast) Cupertino, USA (West Coast) Tokyo, Japan
\item                       \onlynameurl{ESnet} USA - Energy Sciences Network: Tunnel Registry \& Address Delegation for directly connected ESnet sites and ESnet collaborators.
\item                       \onlynameurl{6REN} USA - The 6ren initiative is being coordinated by the Energy Sciences Network (ESnet), the network for the Energy Research program of the US Dept. of Energy, located at the University of California's Lawrence Berkeley National Laboratory
\end{itemize}


 §ó¦hªºIPv6¸ê°T:         \onlynameurl{ipv6-net.org}




\subsubsection{6to4}

\begin{itemize}
\item                       \onlynameurl{NSayer's 6to4 information}
\item                       \onlynameurl{RFC 3068 / An Anycast Prefix for 6to4 Relay Routers}
\end{itemize}





\subsubsection{Latest news}

\begin{itemize}
\item                        \onlynameurl{}
name="hs247 / IPv6 news and information"{$>$} also homepage for \#ipv6 channel on EFnet
\item                        \onlynameurl{bofh.st / latest IPv6 news} 
but currently Jan 2002 outdated..., also homepage for IPv6 channel on IRCnet
\item                        \onlynameurl{ipv6-net.org} German forum
\end{itemize}





\subsubsection{¦³Ãö¨óÄ³ªº°Ñ¦Ò}

\begin{itemize}
\item                        \onlynameurl{HS247 / IPv6 RFC list} Publishing the list of IPv6-related RFCs is beyond the scope of this document, but given URLs will lead you to such lists:
\item                        \onlynameurl{IPng Standardization Status} a little bit out-of-sync at the moment
\item                        \onlynameurl{IPv6 Related Specifications} on IPv6.org
\end{itemize}





\subsubsection{¥Ø«e»PIPv6¦³Ãöªº¯ó®×:}

\begin{itemize}
\item                        \onlynameurl{IP Version 6 } ipv6
\item                        \onlynameurl{Next Generation Transitition }
\item                        \onlynameurl{Dynamic Host Configuration }
\item                        \onlynameurl{Domain Name System Extension }
\item                        \onlynameurl{Mobile IP mobileip}
\end{itemize}





\subsubsection{¨ä¥¦}

\begin{itemize}
\item                        \onlynameurl{Network Sorcery / IPv6, Internet Protocol version 6} IPv6 protocol header
\item                        \onlynameurl{SWITCH IPv6 Pilot / References} big list of IPv6 references maintained by Simon Leinen
\item                        \onlynameurl{Advanced Network Management Laboratory / IPv6 Address Oracle} shows you IPv6 addresses in detail 
\end{itemize}
 




\subsubsection{²Î­p}

\begin{itemize}
\item                        \onlynameurl{IPv6 routing table history} created by Gert  Ding
\end{itemize}
 




\subsection{§ó¦hªº¸ê°T}

´Á«Ý¥[¤J§ó¦hªº¤º®e,Åwªï´£«ØÄ³!




\subsubsection{Linux related}

\begin{itemize}
\item                     \onlynameurl{IPv6-HowTo for Linux by Peter Bieringer} - Germany, and his 
\item                     \onlynameurl{Bieringer / IPv6 - software archive}
\item                     \onlynameurl{Linux+IPv6 status by Peter Bieringer} Germany
\item                     \onlynameurl{USAGI project} Japan, and their 
\item                     \onlynameurl{USAGI project - software archive}
\item                     \onlynameurl{Gav's Linux IPv6 Page}
\item                     \onlynameurl{Project6 - IPv6 Networking For Linux} Italy, and their 
\item                     \onlynameurl{ Project6 - software archive}
\end{itemize}





\subsection{³q«H½×¾Â}

\begin{tscreen}
\begin{verbatim}
+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|                                                                                                                                                                                                                          |                 
|    Focus            Request e-mail address       What to subscribe            Maillist e-mail address                Language                Access through WWW                                                          | 
+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|  Linux kernel        majordomo (at)                oss.sgi.com netdev         netdev (at) oss.sgi.com          English               http://oss.sgi.com/projects/netdev/archive/                                         |
|  networking                                                                                                                                                                                                              |            
|  including                                                                                                                                                                                                               |          
|  IPv6                                                                                                                                                                                                                    |             
+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|  Linux and          majordomo (at)                  linux-ipv6                linux-ipv6 (at) list.f00f.org    English                                                                                                   |             
|                       list.f00f.org                                                                                                                                                                                      |           
| IPv6 in                                                                       (moderated)                                                                                                                                |          
| general (1)                                                                                                                                                                                                              |           
+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+    
| Mobile IP           majordomo (at)                                            mipl (at) list.mipl.             English               http://www.mipl.mediapoli.com/mailinglist.html                                      |  
| (v6) for            list.mipl.mediapoli.com            mipl                   mediapoli.com                                          http://www.mipl.mediapoli.com/mail-archive/                                         |
|  Linux                                                                                                                                                                                                                   |           
|                                                                                                                                                                                                                          |              
+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ 
|Linux IPv6          usagi-users-ctl                                            usagi-users                      English               http://www.mipl.mediapoli.com/mailinglist.html                                      | 
|users using         (at) linux-ipv6.org                                        (at) linux-ipv6.org                                    http://www.mipl.mediapoli.com/mail-archive/                                         |
|USAGI                                                                                                                                                                                                                     |           
|extension                                                                                                                                                                                                                 |           
+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ 
|                                                                                                                                                                                                                          |             
|IPv6 on Debian                                                                 debian-ipv6 (at)                 English               http://lists.debian.org/debian-ipv6/                                                | 
|Linux               Web-based, see URL                                         lists.debian.org                                                                                                                           |         
|Web-based                                                                                                                                                                                                                 |          
|                                                                                                                                                                                                                          |           
+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|                                                                                                                                                                                                                          |            
|IPv6/6bone in        majordomo (at)                                            ipv6 (at)                        German/English        http://www.join.uni-muenster.de/JOIN/ipv6/texte-englisch/mailingliste.html          |
| Germany             atlan.uni-muenster.de           ipv6                      uni-muenster.de                                        http://www.join.uni-muenster.de/local/majordomo/ipv6/                               |
|                                                                                                                                                                                                                          |            
+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|                                                                                                                                                                                                                          |           
| 6bone                  majordomo (at)               6bone                     6bone (at)                       English               http://www.6bone.net/6bone_email.html                                               |
|                       isi.edu                                                 isi.edu                                                http://ryouko.dgim.crc.ca/ipv6/                                                     |   
|                                                                                                                                      http://www.wcug.wwu.edu/lists/6bone/                                                |
|                                                                                                                                                                                                                          |           
+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ 
|                                                                                                                                                                                                                          |           
|IPv6                    majordomo (at)               ipng                      ipng (at)                        English               http://playground.sun.com/pub/ipng/html/instructions.html                           |
|discussions             sunroof.eng.sun.com                                    sunroof.eng.sun.com                                    ftp://playground.sun.com/pub/ipng/mail-archive/                                     |
|                                                                                                                                      http://www.wcug.wwu.edu/lists/ipng/                                                 | 
+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ 
|                                                                                                                                                                                                                          |           
| IPv6 users              majordomo (at)              users                     users (at) ipv6.org              English               http://www.ipv6.org/mailing-lists.html                                              | 
| in general                 ipv6.org                                                                                                                                                                                      |          
|                                                                                                                                                                                                                          |          
+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ 
|                                                                                                                                                                                                                          |           
| Bugtracking of         bugtraq-subscribe (at)                                 bugtraq (at)                     English               http://online.securityfocus.com/popups/forums/bugtraq/intro.shtml                   |          
| Internet               securityfocus.com                                      securityfocus.com (moderated)                          http://online.securityfocus.com/archive/1                                           |
| applications (2)                                                                                                                                                                                                         |             
|                                                                                                                                                                                                                          |           
+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+  
|                                                                                                                                                                                                                          |
| IPv6 in general          Web-based, see URL                                   ipv6 (at) ipng.nl                English              http://mailman.ipng.nl/mailman/listinfo/ipv6/                                        | 
|                                                                                                                                     http://mailman.ipng.nl/pipermail/ipv6/                                               |
|                                                                                                                                                                                                                          |           
+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+                                                                                                                                  
|                                                                                                                                                                                                                          |                  
|                                                                                                                                                                                                                          |         
|                                                                                                                                                                                                                          |         
|                                                                                                                                                                                                                          |          
| majordomo (at)             majordomo (at)            ipv6                     ipv6 (at) mfa.eti.br             Portuguese           http://www.mfa.eti.br/listas.html                                                    |
|  mfa.eti.br                mfa.eti.br                                                                                                                                                                                    |         
|                                                                                                                                                                                                                          |           
+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ 

 



 (1) recommended for common Linux & IPv6 issues.

 (2) very recommended if you provide server applications.

 ¬O¤£¬O¦³¤°»ò¿òº|? Åwªï§Aªº«ØÄ³!

 ³o¸ÌÁÙ¦³¥t¤@¥÷²M³æ:        http://www.join.uni-muenster.de/JOIN/ipv6/texte-englisch/ipv6.infoquellen.html
                            
\end{verbatim}
\end{tscreen}



\subsubsection{¦³Ãöªºµo¦æª©}

\begin{itemize}
\item                     \onlynameurl{Polish(ed) Linux Distribution} ("market leader" in containing IPv6 enabled packages)
\item                     \onlynameurl{Red Hat Linux}
\item                     \onlynameurl{ Pekka Savola's IPv6 packages} Germany
\item                     \onlynameurl{Debian Linux} 
\item                     \onlynameurl{Craig Small's IPv6 information and status}
\item                     \onlynameurl{SuSE Linux}
\item                     \onlynameurl{Linux Mandrake} 

\end{itemize}







\section{¾ú¥v}

x.yª©¥» µo§G¦bInternet¤W. \\ 
x.y.z  ªí¥Ü¥¿¦b¶i¦æªºª©¥»and only published as LyX file on CVS.
\begin{tscreen}
\begin{verbatim}
 Releases 0.x

0.31
2002-09-29/PB: Extend information in proc-filesystem entries

0.30
2002-09-27/PB: Add some maillists

0.29
2002-09-18/PB: Update statement about nmap (triggered by Fyodor)

0.28.1
2002-09-16/PB: Add note about ping6 to multicast addresses, add some labels

0.28
2002-08-17/PB: Fix broken LDP/CVS links, add info about Polish translation, add URL of the IPv6 Address Oracle

0.27
2002-08-10/PB: Some minor updates

0.26.2
2002-07-15/PB: Add information neighbor discovery, split of firewalling (got some updates) and security into extra chapters

0.26.1
2002-07-13/PB: Update nmap/IPv6 information

0.26
2002-07-13/PB: Fill /proc-filesystem chapter, update DNS information about depricated A6/DNAME, change P-t-P tunnel setup to use of "ip" only

0.25.2
2002-07-11/PB: Minor spelling fixes

0.25.1
2002-06-23/PB: Minor spelling and other fixes

0.25
2002-05-16/PB: Cosmetic fix for 2\^{ }128, thanks to Jos¡¼ Ab¡¼lio Oliveira Matos for help with LyX

0.24
2002-05-02/PB: Add entries in URL list, minor spelling fixes

0.23
2002-03-27/PB: Add entries in URL list and at maillists, add a label and minor information about IPv6 on RHL

0.22
2002-03-04/PB: Add info about 6to4 support in kernel series 2.2.x and add an entry in URL list and at maillists

0.21
2002-02-26/PB: Migrate next grammar checks submitted by John Ronan 

0.20.4
2002-02-21/PB: Migrate more grammar checks submitted by John Ronan, add some additional hints at DNS section 

0.20.3
2002-02-12/PB: Migrate a minor grammar check patch submitted by John Ronan

0.20.2
2002-02-05/PB: Add mipl to maillist table

0.20.1
2002-01-31/PB: Add a hint how to generate 6to4 addresses

0.20
2002-01-30/PB: Add a hint about default route problem, some minor updates

0.19.2
2002-01-29/PB: Add many new URLs

0.19.1
2002-01-27/PB: Add some forgotten URLs

0.19
2002-01-25/PB: Add two German books, fix quote entinities in exported SGML code

0.18.2
2002-01-23/PB: Add a FAQ on the program chapter

0.18.1
2002-01-23/PB: Move "the end" to the end, add USAGI to maillists

0.18
2002-01-22/PB: Fix bugs in explanation of multicast address types

0.17.2
2002-01-22/PB: Cosmetic fix double existing text in history (at 0.16), move all credits to the end of the document

0.17.1
2002-01-20/PB: Add a reference, fix URL text in online-test-tools

0.17
2002-01-19/PB: Add some forgotten information and URLs about global IPv6 addresses

0.16
2002-01-19/PB: Minor fixes, remove "bold" and "emphasize" formats on code lines, fix "too long unwrapped code lines" using selfmade utility, extend list of URLs.

0.15
2002-01-15/PB: Fix bug in addresstype/anycast, move content related credits to end of document

0.14
2002-01-14/PB: Minor review at all, new chapter "debugging", review "addresses", spell checking, grammar checking (from beginning to 3.4.1) by Martin Krafft, add tcpdump examples, copy firewalling/netfilter6 from IPv6+Linux-HowTo, minor enhancements

0.13
2002-01-05/PB: Add example BIND9/host, move revision history to end of document, minor extensions

0.12
2002-01-03/PB: Merge review of David Ranch

0.11
2002-01-02/PB: Spell checking and merge review of Pekka Savola

0.10
2002-01-02/PB: First public release of chapter 1
\end{verbatim}
\end{tscreen}




\end{document}
