3138 lines
64 KiB
HTML
3138 lines
64 KiB
HTML
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
|
||
<HTML
|
||
><HEAD
|
||
><TITLE
|
||
>Linux Optimized Link State Routing Protocol (OLSR) IPv6
|
||
HOWTO</TITLE
|
||
><META
|
||
NAME="GENERATOR"
|
||
CONTENT="Modular DocBook HTML Stylesheet Version 1.7"></HEAD
|
||
><BODY
|
||
CLASS="article"
|
||
BGCOLOR="#FFFFFF"
|
||
TEXT="#000000"
|
||
LINK="#0000FF"
|
||
VLINK="#840084"
|
||
ALINK="#0000FF"
|
||
><DIV
|
||
CLASS="ARTICLE"
|
||
><DIV
|
||
CLASS="TITLEPAGE"
|
||
><H1
|
||
CLASS="title"
|
||
><A
|
||
NAME="AEN2"
|
||
></A
|
||
>Linux Optimized Link State Routing Protocol (OLSR) IPv6
|
||
HOWTO</H1
|
||
><H3
|
||
CLASS="author"
|
||
><A
|
||
NAME="AEN5"
|
||
>Lars Strand</A
|
||
></H3
|
||
><DIV
|
||
CLASS="affiliation"
|
||
><DIV
|
||
CLASS="address"
|
||
><P
|
||
CLASS="address"
|
||
><TT
|
||
CLASS="email"
|
||
><<A
|
||
HREF="mailto:lars (at) unik no"
|
||
>lars (at) unik no</A
|
||
>></TT
|
||
></P
|
||
></DIV
|
||
></DIV
|
||
><P
|
||
CLASS="pubdate"
|
||
>2004-04-23<BR></P
|
||
><DIV
|
||
CLASS="revhistory"
|
||
><TABLE
|
||
WIDTH="100%"
|
||
BORDER="0"
|
||
><TR
|
||
><TH
|
||
ALIGN="LEFT"
|
||
VALIGN="TOP"
|
||
COLSPAN="3"
|
||
><B
|
||
>Revision History</B
|
||
></TH
|
||
></TR
|
||
><TR
|
||
><TD
|
||
ALIGN="LEFT"
|
||
>Revision 1.0</TD
|
||
><TD
|
||
ALIGN="LEFT"
|
||
>2004-04-23</TD
|
||
><TD
|
||
ALIGN="LEFT"
|
||
>Revised by: EJH</TD
|
||
></TR
|
||
><TR
|
||
><TD
|
||
ALIGN="LEFT"
|
||
COLSPAN="3"
|
||
>Final review complete. Document published to the LDP
|
||
collection.</TD
|
||
></TR
|
||
><TR
|
||
><TD
|
||
ALIGN="LEFT"
|
||
>Revision 0.6</TD
|
||
><TD
|
||
ALIGN="LEFT"
|
||
>2004-04-19</TD
|
||
><TD
|
||
ALIGN="LEFT"
|
||
>Revised by: LKS</TD
|
||
></TR
|
||
><TR
|
||
><TD
|
||
ALIGN="LEFT"
|
||
COLSPAN="3"
|
||
>Thanks to Thomas Zimmerman <thomas (at) zimres
|
||
net> for a language review! Updated to latest version number and
|
||
added a section on plugin-support in OLSRd. Changed lisence
|
||
back to <A
|
||
HREF="http://www.gnu.org/copyleft/fdl.html"
|
||
TARGET="_top"
|
||
>GFDL</A
|
||
></TD
|
||
></TR
|
||
><TR
|
||
><TD
|
||
ALIGN="LEFT"
|
||
>Revision 0.5</TD
|
||
><TD
|
||
ALIGN="LEFT"
|
||
>2004-03-08</TD
|
||
><TD
|
||
ALIGN="LEFT"
|
||
>Revised by: LKS</TD
|
||
></TR
|
||
><TR
|
||
><TD
|
||
ALIGN="LEFT"
|
||
COLSPAN="3"
|
||
>An almost complete rewrite. Adding OLSRd (old
|
||
uOLSR), updated to RFC3626. Removed NROLSR and
|
||
CRCOLSR. Converted to XML Docbook. Changed the license from
|
||
<A
|
||
HREF="http://www.gnu.org/copyleft/fdl.html"
|
||
TARGET="_top"
|
||
> GFDL
|
||
</A
|
||
> to <A
|
||
HREF="http://www.opencontent.org/openpub/"
|
||
TARGET="_top"
|
||
> OPL </A
|
||
> due
|
||
to some GFDL <A
|
||
HREF="http://people.debian.org/~srivasta/Position_Statement.xhtml"
|
||
TARGET="_top"
|
||
> problems.</A
|
||
></TD
|
||
></TR
|
||
><TR
|
||
><TD
|
||
ALIGN="LEFT"
|
||
>Revision 0.3</TD
|
||
><TD
|
||
ALIGN="LEFT"
|
||
>2003-08-05</TD
|
||
><TD
|
||
ALIGN="LEFT"
|
||
>Revised by: LKS</TD
|
||
></TR
|
||
><TR
|
||
><TD
|
||
ALIGN="LEFT"
|
||
COLSPAN="3"
|
||
>Initial release.</TD
|
||
></TR
|
||
></TABLE
|
||
></DIV
|
||
><DIV
|
||
><DIV
|
||
CLASS="abstract"
|
||
><A
|
||
NAME="AEN45"
|
||
></A
|
||
><P
|
||
></P
|
||
><P
|
||
> This document describes the software and procedures to set up
|
||
and use <A
|
||
HREF="http://www.ietf.org/rfc/rfc3626"
|
||
TARGET="_top"
|
||
>Optimized
|
||
Link State Routing Protocol (OLSR)</A
|
||
> with IPv6 for
|
||
Linux. OLSR is used as a routing protocol for
|
||
Mobile Ad-Hoc Networks (<A
|
||
HREF="http://www.ietf.org/rfc/rfc2501.txt"
|
||
TARGET="_top"
|
||
>MANET</A
|
||
>) (also
|
||
called <SPAN
|
||
CLASS="QUOTE"
|
||
>"spontaneous network"</SPAN
|
||
>).
|
||
</P
|
||
><P
|
||
></P
|
||
></DIV
|
||
></DIV
|
||
><HR></DIV
|
||
><DIV
|
||
CLASS="TOC"
|
||
><DL
|
||
><DT
|
||
><B
|
||
>Table of Contents</B
|
||
></DT
|
||
><DT
|
||
>1. <A
|
||
HREF="#intro"
|
||
>Introduction</A
|
||
></DT
|
||
><DD
|
||
><DL
|
||
><DT
|
||
>1.1. <A
|
||
HREF="#WhyAdHoc"
|
||
>Why Ad-Hoc network?</A
|
||
></DT
|
||
><DT
|
||
>1.2. <A
|
||
HREF="#WhatMANET"
|
||
>What is a MANET?</A
|
||
></DT
|
||
><DT
|
||
>1.3. <A
|
||
HREF="#WhatOLSR"
|
||
>What is Optimized Link State Routing (OLSR)?</A
|
||
></DT
|
||
><DT
|
||
>1.4. <A
|
||
HREF="#HowOLSR"
|
||
>How does OLSR work?</A
|
||
></DT
|
||
><DT
|
||
>1.5. <A
|
||
HREF="#IBSS"
|
||
>What about IBSS (IEEE ad-hoc mode)?</A
|
||
></DT
|
||
></DL
|
||
></DD
|
||
><DT
|
||
>2. <A
|
||
HREF="#IPv6"
|
||
>IPv6</A
|
||
></DT
|
||
><DT
|
||
>3. <A
|
||
HREF="#OLSRLinux"
|
||
>OLSR for Linux</A
|
||
></DT
|
||
><DD
|
||
><DL
|
||
><DT
|
||
>3.1. <A
|
||
HREF="#installing"
|
||
>Installing OLSRd</A
|
||
></DT
|
||
><DT
|
||
>3.2. <A
|
||
HREF="#using"
|
||
>Using OLSRd</A
|
||
></DT
|
||
><DT
|
||
>3.3. <A
|
||
HREF="#hna"
|
||
>What about HNA messages?</A
|
||
></DT
|
||
><DT
|
||
>3.4. <A
|
||
HREF="#plugins"
|
||
>Plugin support</A
|
||
></DT
|
||
><DT
|
||
>3.5. <A
|
||
HREF="#gui"
|
||
>Optional GUI</A
|
||
></DT
|
||
><DT
|
||
>3.6. <A
|
||
HREF="#other"
|
||
>Other OLSR implementations</A
|
||
></DT
|
||
></DL
|
||
></DD
|
||
><DT
|
||
>4. <A
|
||
HREF="#faq"
|
||
>FAQ</A
|
||
></DT
|
||
><DT
|
||
>5. <A
|
||
HREF="#resources"
|
||
>Useful Resources</A
|
||
></DT
|
||
><DT
|
||
>6. <A
|
||
HREF="#copyack"
|
||
>Copyright, acknowledgments and miscellaneous</A
|
||
></DT
|
||
><DD
|
||
><DL
|
||
><DT
|
||
>6.1. <A
|
||
HREF="#copyright"
|
||
>Copyright and License</A
|
||
></DT
|
||
><DT
|
||
>6.2. <A
|
||
HREF="#produced"
|
||
>How this document was produced</A
|
||
></DT
|
||
><DT
|
||
>6.3. <A
|
||
HREF="#feedback"
|
||
>Feedback</A
|
||
></DT
|
||
><DT
|
||
>6.4. <A
|
||
HREF="#ack"
|
||
>Acknowledgments</A
|
||
></DT
|
||
></DL
|
||
></DD
|
||
><DT
|
||
>A. <A
|
||
HREF="#gfdl"
|
||
>GNU Free Documentation License</A
|
||
></DT
|
||
><DD
|
||
><DL
|
||
><DT
|
||
>A.1. <A
|
||
HREF="#gfdl-0"
|
||
>PREAMBLE</A
|
||
></DT
|
||
><DT
|
||
>A.2. <A
|
||
HREF="#gfdl-1"
|
||
>APPLICABILITY AND DEFINITIONS</A
|
||
></DT
|
||
><DT
|
||
>A.3. <A
|
||
HREF="#gfdl-2"
|
||
>VERBATIM COPYING</A
|
||
></DT
|
||
><DT
|
||
>A.4. <A
|
||
HREF="#gfdl-3"
|
||
>COPYING IN QUANTITY</A
|
||
></DT
|
||
><DT
|
||
>A.5. <A
|
||
HREF="#gfdl-4"
|
||
>MODIFICATIONS</A
|
||
></DT
|
||
><DT
|
||
>A.6. <A
|
||
HREF="#gfdl-5"
|
||
>COMBINING DOCUMENTS</A
|
||
></DT
|
||
><DT
|
||
>A.7. <A
|
||
HREF="#gfdl-6"
|
||
>COLLECTIONS OF DOCUMENTS</A
|
||
></DT
|
||
><DT
|
||
>A.8. <A
|
||
HREF="#gfdl-7"
|
||
>AGGREGATION WITH INDEPENDENT WORKS</A
|
||
></DT
|
||
><DT
|
||
>A.9. <A
|
||
HREF="#gfdl-8"
|
||
>TRANSLATION</A
|
||
></DT
|
||
><DT
|
||
>A.10. <A
|
||
HREF="#gfdl-9"
|
||
>TERMINATION</A
|
||
></DT
|
||
><DT
|
||
>A.11. <A
|
||
HREF="#gfdl-10"
|
||
>FUTURE REVISIONS OF THIS LICENSE</A
|
||
></DT
|
||
><DT
|
||
>A.12. <A
|
||
HREF="#gfdl-addendum"
|
||
>ADDENDUM: How to use this License for
|
||
your documents</A
|
||
></DT
|
||
></DL
|
||
></DD
|
||
></DL
|
||
></DIV
|
||
><DIV
|
||
CLASS="sect1"
|
||
><H1
|
||
CLASS="sect1"
|
||
><A
|
||
NAME="intro"
|
||
></A
|
||
>1. Introduction</H1
|
||
><P
|
||
> This document describes the software and procedures to set up
|
||
and use Optimized Link State Routing Protocol (OLSR) with IPv6
|
||
for Linux.
|
||
</P
|
||
><DIV
|
||
CLASS="sect2"
|
||
><HR><H2
|
||
CLASS="sect2"
|
||
><A
|
||
NAME="WhyAdHoc"
|
||
></A
|
||
>1.1. Why Ad-Hoc network?</H2
|
||
><P
|
||
> An English translation of <EM
|
||
>ad-hoc</EM
|
||
> is <SPAN
|
||
CLASS="QUOTE"
|
||
>"For a
|
||
particular purpose (improvised, made up in an instant)"</SPAN
|
||
>
|
||
(source: <A
|
||
HREF="http://en.wikipedia.org/wiki/List_of_Latin_phrases#A"
|
||
TARGET="_top"
|
||
>Wikipedia</A
|
||
>).
|
||
An Ad-hoc network, or <SPAN
|
||
CLASS="QUOTE"
|
||
>"spontaneous network"</SPAN
|
||
>, is
|
||
especially useful when dealing with wireless devices in which some
|
||
of the devices are part of the network only for the duration of a
|
||
communications session and the need for a dynamic network topology
|
||
is eminent. A <SPAN
|
||
CLASS="QUOTE"
|
||
>"Mobile Ad hoc Network"</SPAN
|
||
> is usually
|
||
called a <EM
|
||
>MANET</EM
|
||
>.
|
||
</P
|
||
></DIV
|
||
><DIV
|
||
CLASS="sect2"
|
||
><HR><H2
|
||
CLASS="sect2"
|
||
><A
|
||
NAME="WhatMANET"
|
||
></A
|
||
>1.2. What is a MANET?</H2
|
||
><P
|
||
><SPAN
|
||
CLASS="QUOTE"
|
||
>"
|
||
A MANET consists of mobile platforms (e.g., a router with multiple
|
||
hosts and wireless communications devices)--herein simply referred to
|
||
as <SPAN
|
||
CLASS="QUOTE"
|
||
>'nodes'</SPAN
|
||
>--which are free to move about
|
||
arbitrarily. The nodes may be located in or on airplanes, ships,
|
||
trucks, cars, perhaps even on people or very small devices, and
|
||
there may be multiple hosts per router. A MANET is an autonomous
|
||
system of mobile nodes. The system may operate in isolation, or
|
||
may have gateways to and interface with a fixed network."</SPAN
|
||
>
|
||
--- <A
|
||
HREF="http://www.ietf.org/rfc/rfc2501.txt"
|
||
TARGET="_top"
|
||
>RFC2501:
|
||
Mobile Ad hoc Networking (MANET), section 3 (page 3).</A
|
||
>
|
||
</P
|
||
></DIV
|
||
><DIV
|
||
CLASS="sect2"
|
||
><HR><H2
|
||
CLASS="sect2"
|
||
><A
|
||
NAME="WhatOLSR"
|
||
></A
|
||
>1.3. What is Optimized Link State Routing (OLSR)?</H2
|
||
><P
|
||
> <SPAN
|
||
CLASS="QUOTE"
|
||
>"OLSR is a proactive routing protocol for mobile ad hoc
|
||
networks. The protocol inherits the stability of a link state
|
||
algorithm and has the advantage of having routes immediately
|
||
available when needed due to its proactive nature. OLSR is an
|
||
optimization over the classical link state protocol, tailored for
|
||
mobile ad hoc networks."</SPAN
|
||
>
|
||
</P
|
||
><P
|
||
> <SPAN
|
||
CLASS="QUOTE"
|
||
>"OLSR is designed to work in a completely distributed manner
|
||
and does not depend on any central entity. The protocol does NOT
|
||
REQUIRE reliable transmission of control messages: each node sends
|
||
control messages periodically, and can therefore sustain a
|
||
reasonable loss of some such messages. Such losses occur
|
||
frequently in radio networks due to collisions or other
|
||
transmission problems."</SPAN
|
||
> --- <A
|
||
HREF="http://www.ietf.org/rfc/rfc3626.txt"
|
||
TARGET="_top"
|
||
>RFC3626: OLSR, section
|
||
1.3 (page 8)</A
|
||
>
|
||
</P
|
||
></DIV
|
||
><DIV
|
||
CLASS="sect2"
|
||
><HR><H2
|
||
CLASS="sect2"
|
||
><A
|
||
NAME="HowOLSR"
|
||
></A
|
||
>1.4. How does OLSR work?</H2
|
||
><P
|
||
>
|
||
<SPAN
|
||
CLASS="QUOTE"
|
||
>"The Optimized Link State Routing Protocol (OLSR) is
|
||
developed for mobile ad hoc networks. It operates as a table
|
||
driven, proactive protocol, i.e., exchanges topology information
|
||
with other nodes of the network regularly. Each node selects a
|
||
set of its neighbor nodes as <SPAN
|
||
CLASS="QUOTE"
|
||
>'multi-point relays'</SPAN
|
||
>
|
||
(MPR). In OLSR, only nodes, selected as such MPRs, are
|
||
responsible for forwarding control traffic, intended for diffusion
|
||
into the entire network. MPRs provide an efficient mechanism for
|
||
flooding control traffic by reducing the number of transmissions
|
||
required."</SPAN
|
||
> --- <A
|
||
HREF="http://www.ietf.org/rfc/rfc3626.txt"
|
||
TARGET="_top"
|
||
>RFC3626: OLSR, section
|
||
1 (page 4)</A
|
||
>
|
||
</P
|
||
></DIV
|
||
><DIV
|
||
CLASS="sect2"
|
||
><HR><H2
|
||
CLASS="sect2"
|
||
><A
|
||
NAME="IBSS"
|
||
></A
|
||
>1.5. What about IBSS (IEEE ad-hoc mode)?</H2
|
||
><P
|
||
>The IEEE 802.11 standard defines two modes: </P
|
||
><DIV
|
||
CLASS="mediaobject"
|
||
><P
|
||
><IMG
|
||
SRC="images/802-11.png"
|
||
ALIGN="center"
|
||
WIDTH="550"><DIV
|
||
CLASS="caption"
|
||
><P
|
||
>IEEE 802.11 standard</P
|
||
></DIV
|
||
></P
|
||
></DIV
|
||
><P
|
||
></P
|
||
><OL
|
||
TYPE="1"
|
||
><LI
|
||
><P
|
||
><EM
|
||
>Infrastructure mode:</EM
|
||
> The
|
||
wireless network consist of at least one access point (AP)
|
||
connected to the wired network and a set of wireless
|
||
nodes (WN). This configuration is called a <EM
|
||
>Basic Service Set
|
||
(BSS)</EM
|
||
>. Extended Service Set (ESS) is a set of two or
|
||
more BSSs (multiple cells).</P
|
||
></LI
|
||
><LI
|
||
><P
|
||
><EM
|
||
>Ad hoc mode:</EM
|
||
> Also called
|
||
<SPAN
|
||
CLASS="QUOTE"
|
||
>"IEEE ad-hoc mode"</SPAN
|
||
> or <SPAN
|
||
CLASS="QUOTE"
|
||
>"peer-to-peer
|
||
mode"</SPAN
|
||
>. This configuration is called
|
||
<EM
|
||
>Independent Basic Service Set
|
||
(IBSS)</EM
|
||
> and is useful for establishing a
|
||
network where wireless infrastructure does not exist or where
|
||
services are not required.</P
|
||
></LI
|
||
></OL
|
||
><P
|
||
> So why use OLSR when we can use <SPAN
|
||
CLASS="QUOTE"
|
||
>"IEEE ad-hoc
|
||
mode"</SPAN
|
||
>? <EM
|
||
>IEEE ad-hoc mode does NOT support
|
||
multi-hop.</EM
|
||
> See <A
|
||
HREF="#multihop"
|
||
>figure
|
||
below</A
|
||
>
|
||
</P
|
||
><DIV
|
||
CLASS="mediaobject"
|
||
><P
|
||
><IMG
|
||
SRC="images/multihop.png"
|
||
ALIGN="center"
|
||
WIDTH="550"><DIV
|
||
CLASS="caption"
|
||
><P
|
||
><SPAN
|
||
CLASS="QUOTE"
|
||
>"IEEE 8102.11 Ad hoc"</SPAN
|
||
> mode has
|
||
<EM
|
||
>no</EM
|
||
> support for multihop, something OLSR
|
||
does have.</P
|
||
></DIV
|
||
></P
|
||
></DIV
|
||
></DIV
|
||
></DIV
|
||
><DIV
|
||
CLASS="sect1"
|
||
><HR><H1
|
||
CLASS="sect1"
|
||
><A
|
||
NAME="IPv6"
|
||
></A
|
||
>2. IPv6</H1
|
||
><P
|
||
>IP version 6 (IPv6) is a new version of the Internet Protocol,
|
||
designed as the successor to IP version 4 (IPv4) <A
|
||
HREF="http://www.ietf.org/rfc/rfc791.txt"
|
||
TARGET="_top"
|
||
>[RFC-791]</A
|
||
>. The
|
||
changes from IPv4 to IPv6 fall primarily into the following
|
||
categories:
|
||
</P
|
||
><P
|
||
></P
|
||
><UL
|
||
><LI
|
||
><P
|
||
>Expanded addressing capabilities </P
|
||
></LI
|
||
><LI
|
||
><P
|
||
>Header format simplification</P
|
||
></LI
|
||
><LI
|
||
><P
|
||
>Improved support for extensions and options</P
|
||
></LI
|
||
><LI
|
||
><P
|
||
>Flow labeling capability</P
|
||
></LI
|
||
><LI
|
||
><P
|
||
>Authentication and privacy capabilities</P
|
||
></LI
|
||
></UL
|
||
><P
|
||
>For more information on IPv6 in general, visit the <A
|
||
HREF="http://www.ietf.org/html.charters/ipv6-charter.html"
|
||
TARGET="_top"
|
||
>IETF's IPv6
|
||
Working Group</A
|
||
>.
|
||
</P
|
||
></DIV
|
||
><DIV
|
||
CLASS="sect1"
|
||
><HR><H1
|
||
CLASS="sect1"
|
||
><A
|
||
NAME="OLSRLinux"
|
||
></A
|
||
>3. OLSR for Linux</H1
|
||
><P
|
||
> There are several OLSR implementation for Linux, but not all of them
|
||
support IPv6. You should know how to enable and use IPv6
|
||
on Linux. Peter Bieringer has written an excellent <A
|
||
HREF="http://ldp.linux.no/HOWTO/Linux+IPv6-HOWTO/"
|
||
TARGET="_top"
|
||
>Linux IPv6
|
||
HOWTO</A
|
||
>.
|
||
</P
|
||
><P
|
||
> There is one OLSR implementation that is becoming the
|
||
<SPAN
|
||
CLASS="QUOTE"
|
||
>"standard"</SPAN
|
||
> and most widely used. It goes by the
|
||
descriptive name <SPAN
|
||
CLASS="QUOTE"
|
||
>"OLSRd"</SPAN
|
||
> (old Unik-OLSR).
|
||
</P
|
||
><P
|
||
> OLSRd is an implementation based on the INRA C code, but has been
|
||
almost completely rewritten, so there is not much left of the original
|
||
INRA code (that mean it almost GPL). OLSRd also is under very rapid
|
||
development, and if you report in a bug, it is usually fixed in a
|
||
matter of hours.
|
||
</P
|
||
><P
|
||
> OLSRd <A
|
||
HREF="http://www.olsr.org/index.cgi?action=comp"
|
||
TARGET="_top"
|
||
>fully comply</A
|
||
>
|
||
to the OLSR RFC, support for plugins, and it has an optional GUI
|
||
interface (to see what's going on). The implementation also has a
|
||
informative <SPAN
|
||
CLASS="QUOTE"
|
||
>"up-to-date"</SPAN
|
||
> <A
|
||
HREF="http://www.olsr.org"
|
||
TARGET="_top"
|
||
>web-page</A
|
||
> with links to mailing
|
||
lists and papers.
|
||
</P
|
||
><DIV
|
||
CLASS="sect2"
|
||
><HR><H2
|
||
CLASS="sect2"
|
||
><A
|
||
NAME="installing"
|
||
></A
|
||
>3.1. Installing OLSRd</H2
|
||
><P
|
||
>There are up-to multiple new releases of OLSRd each month, so
|
||
check the OLSRd <A
|
||
HREF="http://www.olsr.org"
|
||
TARGET="_top"
|
||
>web-site</A
|
||
>
|
||
for the newest release.</P
|
||
><P
|
||
> <P
|
||
></P
|
||
><OL
|
||
TYPE="1"
|
||
><LI
|
||
><P
|
||
> The latest release as of this writing is 0.4.3, but by the
|
||
time you read this there is almost certain a new release. Fetch the
|
||
latest release from <A
|
||
HREF="http://www.olsr.org/index.cgi?action=download"
|
||
TARGET="_top"
|
||
> http://www.olsr.org/index.cgi?action=download</A
|
||
>.</P
|
||
></LI
|
||
><LI
|
||
><P
|
||
>Unpack, compile and install the source code:</P
|
||
><TABLE
|
||
BORDER="0"
|
||
BGCOLOR="#E0E0E0"
|
||
WIDTH="100%"
|
||
><TR
|
||
><TD
|
||
><FONT
|
||
COLOR="#000000"
|
||
><PRE
|
||
CLASS="programlisting"
|
||
> <TT
|
||
CLASS="prompt"
|
||
># </TT
|
||
><TT
|
||
CLASS="userinput"
|
||
><B
|
||
><B
|
||
CLASS="command"
|
||
>tar</B
|
||
> jxvf uolsrd-x.y.z</B
|
||
></TT
|
||
>
|
||
<TT
|
||
CLASS="prompt"
|
||
># </TT
|
||
><TT
|
||
CLASS="userinput"
|
||
><B
|
||
><B
|
||
CLASS="command"
|
||
>cd</B
|
||
> unik-olsrd-x.y.z</B
|
||
></TT
|
||
>
|
||
<TT
|
||
CLASS="prompt"
|
||
># </TT
|
||
><TT
|
||
CLASS="userinput"
|
||
><B
|
||
><B
|
||
CLASS="command"
|
||
>make</B
|
||
></B
|
||
></TT
|
||
>
|
||
<TT
|
||
CLASS="prompt"
|
||
># </TT
|
||
><TT
|
||
CLASS="userinput"
|
||
><B
|
||
><B
|
||
CLASS="command"
|
||
>make install</B
|
||
></B
|
||
></TT
|
||
>
|
||
</PRE
|
||
></FONT
|
||
></TD
|
||
></TR
|
||
></TABLE
|
||
></LI
|
||
><LI
|
||
><P
|
||
>The <TT
|
||
CLASS="userinput"
|
||
><B
|
||
>olsrd</B
|
||
></TT
|
||
> gets installed to
|
||
<TT
|
||
CLASS="filename"
|
||
>/usr/bin/</TT
|
||
> and a default config file,
|
||
<TT
|
||
CLASS="filename"
|
||
>olsrd.conf</TT
|
||
> can be found under
|
||
<TT
|
||
CLASS="filename"
|
||
>/etc</TT
|
||
></P
|
||
></LI
|
||
></OL
|
||
>
|
||
</P
|
||
><P
|
||
>Check out the <TT
|
||
CLASS="filename"
|
||
>/etc/olsrd.conf</TT
|
||
> config
|
||
file, and change values to fit your system. All values in this file
|
||
can be overridden with command line options to
|
||
<TT
|
||
CLASS="userinput"
|
||
><B
|
||
>olsrd</B
|
||
></TT
|
||
>. The main options to change are:</P
|
||
><P
|
||
> <TABLE
|
||
BORDER="0"
|
||
BGCOLOR="#E0E0E0"
|
||
WIDTH="100%"
|
||
><TR
|
||
><TD
|
||
><FONT
|
||
COLOR="#000000"
|
||
><PRE
|
||
CLASS="screen"
|
||
> # Debug level(0-9)
|
||
# If set to 0 the daemon runs in the background
|
||
DEBUG 1
|
||
# IP version to use (4 or 6)
|
||
IPVERSION 6
|
||
# A list of whitespace separated interface names
|
||
INTERFACES eth1
|
||
</PRE
|
||
></FONT
|
||
></TD
|
||
></TR
|
||
></TABLE
|
||
>
|
||
</P
|
||
><P
|
||
> Later on, when you know OLSRd is configured correctly, you may set
|
||
<SPAN
|
||
CLASS="QUOTE"
|
||
>"DEBUG"</SPAN
|
||
> to <TT
|
||
CLASS="userinput"
|
||
><B
|
||
>0</B
|
||
></TT
|
||
> to make it run in
|
||
the background. You may then also add it to your init scripts. But
|
||
to test that everything first, set this to at least
|
||
<TT
|
||
CLASS="userinput"
|
||
><B
|
||
>1</B
|
||
></TT
|
||
> (setting this higher will produce a lot
|
||
more info messages on APM, forwarding, parsing of the config file
|
||
etc.)
|
||
</P
|
||
></DIV
|
||
><DIV
|
||
CLASS="sect2"
|
||
><HR><H2
|
||
CLASS="sect2"
|
||
><A
|
||
NAME="using"
|
||
></A
|
||
>3.2. Using OLSRd</H2
|
||
><DIV
|
||
CLASS="sect3"
|
||
><H3
|
||
CLASS="sect3"
|
||
><A
|
||
NAME="onehost"
|
||
></A
|
||
>3.2.1. On one host</H3
|
||
><P
|
||
>When OLSRd is installed and configured, it can be started
|
||
as root with:</P
|
||
><TABLE
|
||
BORDER="0"
|
||
BGCOLOR="#E0E0E0"
|
||
WIDTH="100%"
|
||
><TR
|
||
><TD
|
||
><FONT
|
||
COLOR="#000000"
|
||
><PRE
|
||
CLASS="programlisting"
|
||
> <TT
|
||
CLASS="prompt"
|
||
># </TT
|
||
><TT
|
||
CLASS="userinput"
|
||
><B
|
||
><B
|
||
CLASS="command"
|
||
>olsrd</B
|
||
></B
|
||
></TT
|
||
>
|
||
</PRE
|
||
></FONT
|
||
></TD
|
||
></TR
|
||
></TABLE
|
||
><P
|
||
>All the settings in <TT
|
||
CLASS="filename"
|
||
>/etc/olsrd.conf</TT
|
||
>
|
||
can be overridden by command line options:</P
|
||
><TABLE
|
||
BORDER="0"
|
||
BGCOLOR="#E0E0E0"
|
||
WIDTH="100%"
|
||
><TR
|
||
><TD
|
||
><FONT
|
||
COLOR="#000000"
|
||
><PRE
|
||
CLASS="programlisting"
|
||
> <TT
|
||
CLASS="prompt"
|
||
># </TT
|
||
><TT
|
||
CLASS="userinput"
|
||
><B
|
||
><B
|
||
CLASS="command"
|
||
>olsrd</B
|
||
> -i eth1 -ipv6 -d 1</B
|
||
></TT
|
||
>
|
||
</PRE
|
||
></FONT
|
||
></TD
|
||
></TR
|
||
></TABLE
|
||
><P
|
||
>Would start <TT
|
||
CLASS="userinput"
|
||
><B
|
||
>olsrd</B
|
||
></TT
|
||
> listening on
|
||
interface <TT
|
||
CLASS="userinput"
|
||
><B
|
||
>eth1</B
|
||
></TT
|
||
> using IPv6 and with debug
|
||
messages.</P
|
||
><P
|
||
>We start olsrd:</P
|
||
><TABLE
|
||
BORDER="0"
|
||
BGCOLOR="#E0E0E0"
|
||
WIDTH="100%"
|
||
><TR
|
||
><TD
|
||
><FONT
|
||
COLOR="#000000"
|
||
><PRE
|
||
CLASS="screen"
|
||
> <TT
|
||
CLASS="prompt"
|
||
># </TT
|
||
><TT
|
||
CLASS="userinput"
|
||
><B
|
||
><B
|
||
CLASS="command"
|
||
>olsrd</B
|
||
> -i eth1 -d 1 -ipv6</B
|
||
></TT
|
||
>
|
||
|
||
*** UniK olsrd-0.4.3 ***
|
||
|
||
hello interval = 2.00 hello int nonwireless: = 4.00 <A
|
||
NAME="tuning"
|
||
><IMG
|
||
SRC="../images/callouts/1.gif"
|
||
HSPACE="0"
|
||
VSPACE="0"
|
||
BORDER="0"
|
||
ALT="(1)"></A
|
||
>
|
||
tc interval = 5.00 polling interval = 0.10
|
||
neighbor_hold_time = 6.00 neighbor_hold_time_nw = 12.00
|
||
topology_hold_time = 15.00 tos setting = 16
|
||
hna_interval = 15.00 mid_interval = 5.00
|
||
Willingness set to 3 - next update in 20.000000 secs
|
||
Using IP version 6
|
||
Using multicast address ff05::15
|
||
|
||
---- Interface configuration ----
|
||
|
||
eth1: <A
|
||
NAME="interface"
|
||
><IMG
|
||
SRC="../images/callouts/2.gif"
|
||
HSPACE="0"
|
||
VSPACE="0"
|
||
BORDER="0"
|
||
ALT="(2)"></A
|
||
>
|
||
Address: fec0:106:2700::10
|
||
Multicast: ff05::15
|
||
Interface eth1 set up for use with index 0
|
||
|
||
|
||
Main address: fec0:106:2700::10 <A
|
||
NAME="adr"
|
||
><IMG
|
||
SRC="../images/callouts/3.gif"
|
||
HSPACE="0"
|
||
VSPACE="0"
|
||
BORDER="0"
|
||
ALT="(3)"></A
|
||
>
|
||
|
||
NEIGHBORS: l=linkstate, m=MPR, w=willingness
|
||
|
||
Thread created - polling every 0.10 seconds <A
|
||
NAME="list"
|
||
><IMG
|
||
SRC="../images/callouts/4.gif"
|
||
HSPACE="0"
|
||
VSPACE="0"
|
||
BORDER="0"
|
||
ALT="(4)"></A
|
||
>
|
||
neighbor list: 11:43:17.214807
|
||
neighbor list: 11:43:19.194967
|
||
neighbor list: 11:43:21.395046
|
||
neighbor list: 11:43:23.604800
|
||
neighbor list: 11:43:25.694875
|
||
</PRE
|
||
></FONT
|
||
></TD
|
||
></TR
|
||
></TABLE
|
||
><DIV
|
||
CLASS="calloutlist"
|
||
><DL
|
||
COMPACT="COMPACT"
|
||
><DT
|
||
><A
|
||
HREF="#tuning"
|
||
><IMG
|
||
SRC="../images/callouts/1.gif"
|
||
HSPACE="0"
|
||
VSPACE="0"
|
||
BORDER="0"
|
||
ALT="(1)"></A
|
||
></DT
|
||
><DD
|
||
>This shows all the settings OLSRd is using. You may
|
||
override these by either specifying it in the config file
|
||
(<TT
|
||
CLASS="filename"
|
||
>/etc/olsrd.conf</TT
|
||
>) or specify it at the
|
||
command line. Read the <A
|
||
HREF="http://www.ietf.org/rfc/rfc3626.txt"
|
||
TARGET="_top"
|
||
>OLSR RFC</A
|
||
> for a
|
||
description on what all these settings means.</DD
|
||
><DT
|
||
><A
|
||
HREF="#interface"
|
||
><IMG
|
||
SRC="../images/callouts/2.gif"
|
||
HSPACE="0"
|
||
VSPACE="0"
|
||
BORDER="0"
|
||
ALT="(2)"></A
|
||
></DT
|
||
><DD
|
||
>OLSRd found our interface. If you are using OLSRd with
|
||
multiple interfaces, <SPAN
|
||
CLASS="QUOTE"
|
||
>"Multiple Interface
|
||
Declaration"</SPAN
|
||
> (MID) messages will be generated.</DD
|
||
><DT
|
||
><A
|
||
HREF="#adr"
|
||
><IMG
|
||
SRC="../images/callouts/3.gif"
|
||
HSPACE="0"
|
||
VSPACE="0"
|
||
BORDER="0"
|
||
ALT="(3)"></A
|
||
></DT
|
||
><DD
|
||
>If you are using OLSRd with multiple interfaces, it will
|
||
pick the first interface specified as the <SPAN
|
||
CLASS="QUOTE"
|
||
>"main"</SPAN
|
||
>
|
||
address.</DD
|
||
><DT
|
||
><A
|
||
HREF="#list"
|
||
><IMG
|
||
SRC="../images/callouts/4.gif"
|
||
HSPACE="0"
|
||
VSPACE="0"
|
||
BORDER="0"
|
||
ALT="(4)"></A
|
||
></DT
|
||
><DD
|
||
>Since no other hosts are running OLSRd, this list is
|
||
empty.</DD
|
||
></DL
|
||
></DIV
|
||
><P
|
||
>Another thing worth noticing, is that an entry is added to
|
||
our routing table:</P
|
||
><TABLE
|
||
BORDER="0"
|
||
BGCOLOR="#E0E0E0"
|
||
WIDTH="100%"
|
||
><TR
|
||
><TD
|
||
><FONT
|
||
COLOR="#000000"
|
||
><PRE
|
||
CLASS="screen"
|
||
> <TT
|
||
CLASS="prompt"
|
||
>#</TT
|
||
> <TT
|
||
CLASS="userinput"
|
||
><B
|
||
><B
|
||
CLASS="command"
|
||
>route</B
|
||
> -A inet6</B
|
||
></TT
|
||
>
|
||
Destination: Next Hop Flags Metric Ref Use Iface
|
||
...
|
||
ff05::15/128 ff05::15 UAC 0 1 1 eth1
|
||
...
|
||
</PRE
|
||
></FONT
|
||
></TD
|
||
></TR
|
||
></TABLE
|
||
><P
|
||
>This is the IPv6 multicast address OLSR is using to talk to
|
||
other nodes running OLSR.</P
|
||
></DIV
|
||
><DIV
|
||
CLASS="sect3"
|
||
><HR><H3
|
||
CLASS="sect3"
|
||
><A
|
||
NAME="addhosts"
|
||
></A
|
||
>3.2.2. Adding other hosts</H3
|
||
><P
|
||
>There is no point in using OLSRd on only one node, so we add
|
||
some nodes. You will then see the <SPAN
|
||
CLASS="QUOTE"
|
||
>"neighbor list"</SPAN
|
||
> gets
|
||
updated:</P
|
||
><TABLE
|
||
BORDER="0"
|
||
BGCOLOR="#E0E0E0"
|
||
WIDTH="100%"
|
||
><TR
|
||
><TD
|
||
><FONT
|
||
COLOR="#000000"
|
||
><PRE
|
||
CLASS="screen"
|
||
> neighbor list: 12:55:14.733586
|
||
neighbor list: 12:55:18.803585
|
||
Willingness for fec0:106:2700::11 changed from 0 to 3 - UPDATING <A
|
||
NAME="will"
|
||
><IMG
|
||
SRC="../images/callouts/1.gif"
|
||
HSPACE="0"
|
||
VSPACE="0"
|
||
BORDER="0"
|
||
ALT="(1)"></A
|
||
>
|
||
neighbor list: 12:55:22.763585
|
||
fec0:106:2700::11:l=0:m=0:w=3[2hlist:] <A
|
||
NAME="newhost"
|
||
><IMG
|
||
SRC="../images/callouts/2.gif"
|
||
HSPACE="0"
|
||
VSPACE="0"
|
||
BORDER="0"
|
||
ALT="(2)"></A
|
||
>
|
||
neighbor list: 12:55:26.833589
|
||
fec0:106:2700::11:l=1:m=0:w=3[2hlist:]
|
||
Willingness for fec0:106:2700::12 changed from 0 to 2 - UPDATING <A
|
||
NAME="thirdhost"
|
||
><IMG
|
||
SRC="../images/callouts/3.gif"
|
||
HSPACE="0"
|
||
VSPACE="0"
|
||
BORDER="0"
|
||
ALT="(3)"></A
|
||
>
|
||
neighbor list: 12:55:30.903585
|
||
fec0:106:2700::12:l=0:m=0:w=2[2hlist:]
|
||
fec0:106:2700::11:l=1:m=0:w=3[2hlist:]
|
||
neighbor list: 12:55:34.863585
|
||
fec0:106:2700::12:l=0:m=0:w=2[2hlist:]
|
||
fec0:106:2700::11:l=1:m=0:w=3[2hlist:]
|
||
neighbor list: 12:55:39.153586
|
||
fec0:106:2700::12:l=1:m=0:w=2[2hlist:fec0:106:2700::11:] <A
|
||
NAME="triangle"
|
||
><IMG
|
||
SRC="../images/callouts/4.gif"
|
||
HSPACE="0"
|
||
VSPACE="0"
|
||
BORDER="0"
|
||
ALT="(4)"></A
|
||
>
|
||
fec0:106:2700::11:l=1:m=0:w=3[2hlist:fec0:106:2700::12:] <A
|
||
NAME="triangle2"
|
||
><IMG
|
||
SRC="../images/callouts/5.gif"
|
||
HSPACE="0"
|
||
VSPACE="0"
|
||
BORDER="0"
|
||
ALT="(5)"></A
|
||
>
|
||
neighbor list: 12:55:43.443605
|
||
fec0:106:2700::12:l=1:m=0:w=2[2hlist:fec0:106:2700::11:]
|
||
fec0:106:2700::11:l=1:m=0:w=3[2hlist:fec0:106:2700::12:]
|
||
</PRE
|
||
></FONT
|
||
></TD
|
||
></TR
|
||
></TABLE
|
||
><DIV
|
||
CLASS="calloutlist"
|
||
><DL
|
||
COMPACT="COMPACT"
|
||
><DT
|
||
><A
|
||
HREF="#will"
|
||
><IMG
|
||
SRC="../images/callouts/1.gif"
|
||
HSPACE="0"
|
||
VSPACE="0"
|
||
BORDER="0"
|
||
ALT="(1)"></A
|
||
></DT
|
||
><DD
|
||
> Another node detected (node B). This specifies the willingness of a node
|
||
to carry and forward traffic for other nodes. Here the new node
|
||
<TT
|
||
CLASS="userinput"
|
||
><B
|
||
>fec0:106:2700::11</B
|
||
></TT
|
||
> is willing to forward
|
||
traffic. A host with low battery may not be willing to forward
|
||
large amount of traffic, - so it will proclaim a lower
|
||
willingness value (routing based on powerstatus is available as a
|
||
plugin).
|
||
</DD
|
||
><DT
|
||
><A
|
||
HREF="#newhost"
|
||
><IMG
|
||
SRC="../images/callouts/2.gif"
|
||
HSPACE="0"
|
||
VSPACE="0"
|
||
BORDER="0"
|
||
ALT="(2)"></A
|
||
></DT
|
||
><DD
|
||
> The node has been added to our routing table. We can not (yet)
|
||
reach any other node by way of this node, since the 2-hop neighbor
|
||
list (<TT
|
||
CLASS="userinput"
|
||
><B
|
||
>[2hlist:]</B
|
||
></TT
|
||
>) is empty. A 2-hop
|
||
neighbor is a node heard by a neighbor.
|
||
</DD
|
||
><DT
|
||
><A
|
||
HREF="#thirdhost"
|
||
><IMG
|
||
SRC="../images/callouts/3.gif"
|
||
HSPACE="0"
|
||
VSPACE="0"
|
||
BORDER="0"
|
||
ALT="(3)"></A
|
||
></DT
|
||
><DD
|
||
> Here is a third node (node C) running OLSRd.
|
||
</DD
|
||
><DT
|
||
><A
|
||
HREF="#triangle"
|
||
><IMG
|
||
SRC="../images/callouts/4.gif"
|
||
HSPACE="0"
|
||
VSPACE="0"
|
||
BORDER="0"
|
||
ALT="(4)"></A
|
||
></DT
|
||
><DD
|
||
> After a short time, when all nodes have been updated and routes
|
||
calculated, we may also reach any of the other nodes via the
|
||
other. The 2-hop neighbor list
|
||
(<TT
|
||
CLASS="userinput"
|
||
><B
|
||
>[2hlist:]</B
|
||
></TT
|
||
>) is populated: We can reach node
|
||
<TT
|
||
CLASS="userinput"
|
||
><B
|
||
> B</B
|
||
></TT
|
||
> via <TT
|
||
CLASS="userinput"
|
||
><B
|
||
>C</B
|
||
></TT
|
||
>.
|
||
</DD
|
||
><DT
|
||
><A
|
||
HREF="#triangle2"
|
||
><IMG
|
||
SRC="../images/callouts/5.gif"
|
||
HSPACE="0"
|
||
VSPACE="0"
|
||
BORDER="0"
|
||
ALT="(5)"></A
|
||
></DT
|
||
><DD
|
||
> Here we can reach node <TT
|
||
CLASS="userinput"
|
||
><B
|
||
>C</B
|
||
></TT
|
||
> via
|
||
<TT
|
||
CLASS="userinput"
|
||
><B
|
||
>B</B
|
||
></TT
|
||
>.
|
||
</DD
|
||
></DL
|
||
></DIV
|
||
><P
|
||
>You will also see the routing table is updated with the new
|
||
hosts:</P
|
||
><TABLE
|
||
BORDER="0"
|
||
BGCOLOR="#E0E0E0"
|
||
WIDTH="100%"
|
||
><TR
|
||
><TD
|
||
><FONT
|
||
COLOR="#000000"
|
||
><PRE
|
||
CLASS="screen"
|
||
> <TT
|
||
CLASS="prompt"
|
||
>#</TT
|
||
> <TT
|
||
CLASS="userinput"
|
||
><B
|
||
><B
|
||
CLASS="command"
|
||
>route</B
|
||
> -A inet6</B
|
||
></TT
|
||
>
|
||
Destination: Next Hop Flags Metric Ref Use Iface
|
||
...
|
||
fec0:106:2700::11/128 :: UH 1 0 0 eth1
|
||
fec0:106:2700::12/128 :: UH 1 0 0 eth1
|
||
...
|
||
</PRE
|
||
></FONT
|
||
></TD
|
||
></TR
|
||
></TABLE
|
||
><P
|
||
> The real beauty of OLSR is when you add a bunch of nodes and move
|
||
them around. You can still reach each one of them either directly
|
||
(if they are close), or through other nodes.
|
||
</P
|
||
></DIV
|
||
><DIV
|
||
CLASS="sect3"
|
||
><HR><H3
|
||
CLASS="sect3"
|
||
><A
|
||
NAME="movement"
|
||
></A
|
||
>3.2.3. Movement</H3
|
||
><P
|
||
> When every node can reach every other node, it's no fun. Let's
|
||
start moving the nodes, so that node <SPAN
|
||
CLASS="QUOTE"
|
||
>"A"</SPAN
|
||
> and
|
||
<SPAN
|
||
CLASS="QUOTE"
|
||
>"B"</SPAN
|
||
> are out of (radio) range of each other. So when
|
||
we move node <SPAN
|
||
CLASS="QUOTE"
|
||
>"A"</SPAN
|
||
> far enough away so that
|
||
it can't hear node <SPAN
|
||
CLASS="QUOTE"
|
||
>"C"</SPAN
|
||
>, all traffic must go through
|
||
node <SPAN
|
||
CLASS="QUOTE"
|
||
>"B"</SPAN
|
||
>: </P
|
||
><DIV
|
||
CLASS="mediaobject"
|
||
><P
|
||
><IMG
|
||
SRC="images/movement.png"
|
||
ALIGN="center"
|
||
WIDTH="450"><DIV
|
||
CLASS="caption"
|
||
><P
|
||
>We move our three nodes so that node
|
||
<TT
|
||
CLASS="userinput"
|
||
><B
|
||
>A</B
|
||
></TT
|
||
> and <TT
|
||
CLASS="userinput"
|
||
><B
|
||
>C</B
|
||
></TT
|
||
> must
|
||
speak through node <TT
|
||
CLASS="userinput"
|
||
><B
|
||
>B</B
|
||
></TT
|
||
> to reach each
|
||
other.
|
||
</P
|
||
></DIV
|
||
></P
|
||
></DIV
|
||
><P
|
||
> Tip: Instead of physically moving the nodes around, you can use
|
||
<TT
|
||
CLASS="userinput"
|
||
><B
|
||
>ip6tables</B
|
||
></TT
|
||
>. You can drop all packet using the
|
||
MAC-address. You just need to block on one node:
|
||
</P
|
||
><TABLE
|
||
BORDER="0"
|
||
BGCOLOR="#E0E0E0"
|
||
WIDTH="100%"
|
||
><TR
|
||
><TD
|
||
><FONT
|
||
COLOR="#000000"
|
||
><PRE
|
||
CLASS="screen"
|
||
> <TT
|
||
CLASS="prompt"
|
||
># </TT
|
||
><TT
|
||
CLASS="userinput"
|
||
><B
|
||
><B
|
||
CLASS="command"
|
||
>ip6tables</B
|
||
> -A INPUT -m mac --mac-source XX:XX:XX:XX:XX:XX -j DROP</B
|
||
></TT
|
||
>
|
||
</PRE
|
||
></FONT
|
||
></TD
|
||
></TR
|
||
></TABLE
|
||
><P
|
||
> The output from OLSRd on host A is then:
|
||
</P
|
||
><TABLE
|
||
BORDER="0"
|
||
BGCOLOR="#E0E0E0"
|
||
WIDTH="100%"
|
||
><TR
|
||
><TD
|
||
><FONT
|
||
COLOR="#000000"
|
||
><PRE
|
||
CLASS="screen"
|
||
> neighbor list: 13:22:35.693587
|
||
fec0:106:2700::11:l=1:m=1:w=3[2hlist:fec0:106:2700::12:] <A
|
||
NAME="onlyone"
|
||
><IMG
|
||
SRC="../images/callouts/1.gif"
|
||
HSPACE="0"
|
||
VSPACE="0"
|
||
BORDER="0"
|
||
ALT="(1)"></A
|
||
>
|
||
neighbor list: 13:22:40.093588
|
||
fec0:106:2700::11:l=1:m=1:w=3[2hlist:fec0:106:2700::12:]
|
||
neighbor list: 13:22:44.053594
|
||
fec0:106:2700::11:l=1:m=1:w=3[2hlist:fec0:106:2700::12:]
|
||
neighbor list: 13:22:48.233594
|
||
fec0:106:2700::11:l=1:m=1:w=3[2hlist:fec0:106:2700::12:]
|
||
neighbor list: 13:22:52.193605
|
||
fec0:106:2700::11:l=1:m=1:w=3[2hlist:fec0:106:2700::12:]
|
||
</PRE
|
||
></FONT
|
||
></TD
|
||
></TR
|
||
></TABLE
|
||
><DIV
|
||
CLASS="calloutlist"
|
||
><DL
|
||
COMPACT="COMPACT"
|
||
><DT
|
||
><A
|
||
HREF="#onlyone"
|
||
><IMG
|
||
SRC="../images/callouts/1.gif"
|
||
HSPACE="0"
|
||
VSPACE="0"
|
||
BORDER="0"
|
||
ALT="(1)"></A
|
||
></DT
|
||
><DD
|
||
> We can reach node <TT
|
||
CLASS="userinput"
|
||
><B
|
||
>B</B
|
||
></TT
|
||
> directly, and via node
|
||
<TT
|
||
CLASS="userinput"
|
||
><B
|
||
>B</B
|
||
></TT
|
||
> we can reach node <TT
|
||
CLASS="userinput"
|
||
><B
|
||
>C</B
|
||
></TT
|
||
>.
|
||
</DD
|
||
></DL
|
||
></DIV
|
||
><P
|
||
> The routing table also gets updated. For node
|
||
<TT
|
||
CLASS="userinput"
|
||
><B
|
||
>A</B
|
||
></TT
|
||
> to reach node <TT
|
||
CLASS="userinput"
|
||
><B
|
||
>C</B
|
||
></TT
|
||
> it
|
||
must go through node <TT
|
||
CLASS="userinput"
|
||
><B
|
||
>B</B
|
||
></TT
|
||
>:</P
|
||
><TABLE
|
||
BORDER="0"
|
||
BGCOLOR="#E0E0E0"
|
||
WIDTH="100%"
|
||
><TR
|
||
><TD
|
||
><FONT
|
||
COLOR="#000000"
|
||
><PRE
|
||
CLASS="screen"
|
||
> <TT
|
||
CLASS="prompt"
|
||
>#</TT
|
||
> <TT
|
||
CLASS="userinput"
|
||
><B
|
||
><B
|
||
CLASS="command"
|
||
>route</B
|
||
> -A inet6</B
|
||
></TT
|
||
>
|
||
Destination: Next Hop Flags Metric Ref Use Iface
|
||
...
|
||
fec0:106:2700::11/128 :: UH 1 1 0 eth1
|
||
fec0:106:2700::12/128 fec0:106:2700::11 UGH 2 0 0 eth1
|
||
...
|
||
</PRE
|
||
></FONT
|
||
></TD
|
||
></TR
|
||
></TABLE
|
||
></DIV
|
||
></DIV
|
||
><DIV
|
||
CLASS="sect2"
|
||
><HR><H2
|
||
CLASS="sect2"
|
||
><A
|
||
NAME="hna"
|
||
></A
|
||
>3.3. What about HNA messages?</H2
|
||
><P
|
||
><SPAN
|
||
CLASS="QUOTE"
|
||
>"
|
||
In order to provide this capability of injecting external routing
|
||
information into an OLSR MANET, a node with such non-MANET interfaces
|
||
periodically issues a Host and Network Association (HNA) message,
|
||
containing sufficient information for the recipients to construct an
|
||
appropriate routing table."</SPAN
|
||
>
|
||
</P
|
||
><P
|
||
><SPAN
|
||
CLASS="QUOTE"
|
||
>"
|
||
An example of such a situation could be where a node is equipped with
|
||
a fixed network (e.g., an Ethernet) connecting to a larger network as
|
||
well as a wireless network interface running OLSR."</SPAN
|
||
> --- <A
|
||
HREF="http://www.ietf.org/rfc/rfc2501.txt"
|
||
TARGET="_top"
|
||
>RFC3626: OLSR, section
|
||
12 (page 51).</A
|
||
>
|
||
</P
|
||
><DIV
|
||
CLASS="mediaobject"
|
||
><P
|
||
><IMG
|
||
SRC="images/HNA.png"
|
||
ALIGN="center"
|
||
WIDTH="550"><DIV
|
||
CLASS="caption"
|
||
><P
|
||
>OLSR with a gateway (GW), that sends out HNA messages. All
|
||
the other nodes may then be accessing the
|
||
<SPAN
|
||
CLASS="QUOTE"
|
||
>"Internet"</SPAN
|
||
></P
|
||
></DIV
|
||
></P
|
||
></DIV
|
||
><P
|
||
> To have one node, act as a gateway and send out HNA messages, you
|
||
must change the <TT
|
||
CLASS="userinput"
|
||
><B
|
||
>HNA6</B
|
||
></TT
|
||
> in
|
||
<TT
|
||
CLASS="filename"
|
||
>/etc/olsrd.conf</TT
|
||
>:
|
||
</P
|
||
><TABLE
|
||
BORDER="0"
|
||
BGCOLOR="#E0E0E0"
|
||
WIDTH="100%"
|
||
><TR
|
||
><TD
|
||
><FONT
|
||
COLOR="#000000"
|
||
><PRE
|
||
CLASS="screen"
|
||
> # HNA IPv6 routes
|
||
# syntax: netaddr prefix
|
||
# Example Internet gateway
|
||
HNA6 :: 0
|
||
</PRE
|
||
></FONT
|
||
></TD
|
||
></TR
|
||
></TABLE
|
||
><P
|
||
> When you start <TT
|
||
CLASS="userinput"
|
||
><B
|
||
>OLSRd</B
|
||
></TT
|
||
>, you will see the node
|
||
is sending out HNA messages periodically:</P
|
||
><TABLE
|
||
BORDER="0"
|
||
BGCOLOR="#E0E0E0"
|
||
WIDTH="100%"
|
||
><TR
|
||
><TD
|
||
><FONT
|
||
COLOR="#000000"
|
||
><PRE
|
||
CLASS="screen"
|
||
> ...
|
||
Sending HNA (48 bytes)...
|
||
...
|
||
</PRE
|
||
></FONT
|
||
></TD
|
||
></TR
|
||
></TABLE
|
||
><P
|
||
> When the other nodes receives a HNA message, they update their
|
||
routing table:
|
||
</P
|
||
><TABLE
|
||
BORDER="0"
|
||
BGCOLOR="#E0E0E0"
|
||
WIDTH="100%"
|
||
><TR
|
||
><TD
|
||
><FONT
|
||
COLOR="#000000"
|
||
><PRE
|
||
CLASS="screen"
|
||
> <TT
|
||
CLASS="prompt"
|
||
>#</TT
|
||
> <TT
|
||
CLASS="userinput"
|
||
><B
|
||
><B
|
||
CLASS="command"
|
||
>route</B
|
||
> -A inet6</B
|
||
></TT
|
||
>
|
||
Destination: Next Hop Flags Metric Ref Use Iface
|
||
...
|
||
::/0 fec0:106:2700::1 UG 1 0 0 eth1
|
||
...
|
||
</PRE
|
||
></FONT
|
||
></TD
|
||
></TR
|
||
></TABLE
|
||
><P
|
||
> You may also have multiple nodes in a MANET to act as gateways
|
||
(sending out HNA messages). Each mobile node then use the nearest
|
||
gateway.
|
||
</P
|
||
></DIV
|
||
><DIV
|
||
CLASS="sect2"
|
||
><HR><H2
|
||
CLASS="sect2"
|
||
><A
|
||
NAME="plugins"
|
||
></A
|
||
>3.4. Plugin support</H2
|
||
><P
|
||
>As of version 0.4.3 OLSRd also support plugins. Plugins may be
|
||
used to add extended functionality in a MANET. If only a subset of
|
||
the nodes knows how to interpret the messagetype, it will be
|
||
forwarded by all the nodes by the <SPAN
|
||
CLASS="QUOTE"
|
||
>"default forwarding
|
||
algorithm"</SPAN
|
||
>
|
||
(see section 3.4.1 in the <A
|
||
HREF="http://ietf.org/rfc/rfc3626.txt"
|
||
TARGET="_top"
|
||
>OLSR RFC</A
|
||
>). This way
|
||
certain nodes may add special functionlity into OLSR.</P
|
||
><P
|
||
>As of this writing, two example plugins is included in the
|
||
OLSRd release. One of these plugins add routing based on
|
||
powerstatus. If one node has low battery, it can set its willingness
|
||
lower and traffic may be routed through other nodes.</P
|
||
></DIV
|
||
><DIV
|
||
CLASS="sect2"
|
||
><HR><H2
|
||
CLASS="sect2"
|
||
><A
|
||
NAME="gui"
|
||
></A
|
||
>3.5. Optional GUI</H2
|
||
><P
|
||
> OLSRd also has an optional GUI, which can show a list of
|
||
available nodes and grab packets. To compile the GUI front end,
|
||
you must have GTK2. In <TT
|
||
CLASS="filename"
|
||
>unik-olsrd-x.y.z</TT
|
||
>
|
||
directory do:
|
||
</P
|
||
><TABLE
|
||
BORDER="0"
|
||
BGCOLOR="#E0E0E0"
|
||
WIDTH="100%"
|
||
><TR
|
||
><TD
|
||
><FONT
|
||
COLOR="#000000"
|
||
><PRE
|
||
CLASS="screen"
|
||
>
|
||
<TT
|
||
CLASS="prompt"
|
||
>#</TT
|
||
> <TT
|
||
CLASS="userinput"
|
||
><B
|
||
><B
|
||
CLASS="command"
|
||
>cd</B
|
||
> front-end</B
|
||
></TT
|
||
>
|
||
<TT
|
||
CLASS="prompt"
|
||
>#</TT
|
||
> <TT
|
||
CLASS="userinput"
|
||
><B
|
||
><B
|
||
CLASS="command"
|
||
>make</B
|
||
></B
|
||
></TT
|
||
>
|
||
<TT
|
||
CLASS="prompt"
|
||
>#</TT
|
||
> <TT
|
||
CLASS="userinput"
|
||
><B
|
||
><B
|
||
CLASS="command"
|
||
>make</B
|
||
> install</B
|
||
></TT
|
||
>
|
||
</PRE
|
||
></FONT
|
||
></TD
|
||
></TR
|
||
></TABLE
|
||
><DIV
|
||
CLASS="note"
|
||
><P
|
||
></P
|
||
><TABLE
|
||
CLASS="note"
|
||
WIDTH="100%"
|
||
BORDER="0"
|
||
><TR
|
||
><TD
|
||
WIDTH="25"
|
||
ALIGN="CENTER"
|
||
VALIGN="TOP"
|
||
><IMG
|
||
SRC="../images/note.gif"
|
||
HSPACE="5"
|
||
ALT="Note"></TD
|
||
><TD
|
||
ALIGN="LEFT"
|
||
VALIGN="TOP"
|
||
><P
|
||
> Remember to start OLSRd with the
|
||
<TT
|
||
CLASS="userinput"
|
||
><B
|
||
>-ipc</B
|
||
></TT
|
||
> switch or set
|
||
<TT
|
||
CLASS="userinput"
|
||
><B
|
||
>IPC-CONNECT yes</B
|
||
></TT
|
||
> in
|
||
<TT
|
||
CLASS="userinput"
|
||
><B
|
||
>/etc/olsrd.conf</B
|
||
></TT
|
||
> to enable the GUI to chat
|
||
with OLSRd.
|
||
</P
|
||
></TD
|
||
></TR
|
||
></TABLE
|
||
></DIV
|
||
><P
|
||
> To see some examples of the use of GUI, check out <A
|
||
HREF="http://www.olsr.org/index.cgi?action=gui"
|
||
TARGET="_top"
|
||
> http://www.olsr.org/index.cgi?action=gui</A
|
||
>
|
||
</P
|
||
></DIV
|
||
><DIV
|
||
CLASS="sect2"
|
||
><HR><H2
|
||
CLASS="sect2"
|
||
><A
|
||
NAME="other"
|
||
></A
|
||
>3.6. Other OLSR implementations</H2
|
||
><P
|
||
>There is also other OLSR implementations, none have gained as
|
||
much popularity as OLSRd, and none of them (except <A
|
||
HREF="http://qolsr.lri.fr/"
|
||
TARGET="_top"
|
||
>QOLSR</A
|
||
>?) are fully RFC
|
||
compliant.</P
|
||
><DIV
|
||
CLASS="sect3"
|
||
><HR><H3
|
||
CLASS="sect3"
|
||
><A
|
||
NAME="inria"
|
||
></A
|
||
>3.6.1. INRIA</H3
|
||
><P
|
||
>INRIA was one of the first(?) implementation of OLSR <A
|
||
HREF="http://hipercom.inria.fr/olsr/#code"
|
||
TARGET="_top"
|
||
>http://hipercom.inria.fr/olsr/#code</A
|
||
>.
|
||
Their web-site has not been updated for quite a while, and the
|
||
OLSR code you can download only complies to
|
||
draft-ietf-manet-olsr-03.txt (it's now an RFC). There is suppose to
|
||
be another more up-to-date version of INRIA olsr, but I have not
|
||
found it. INRIA OLSR does not support IPv6.</P
|
||
></DIV
|
||
><DIV
|
||
CLASS="sect3"
|
||
><HR><H3
|
||
CLASS="sect3"
|
||
><A
|
||
NAME="nr"
|
||
></A
|
||
>3.6.2. NROLSR</H3
|
||
><P
|
||
>The <SPAN
|
||
CLASS="QUOTE"
|
||
>"US Naval Research Laboratory"</SPAN
|
||
> (NRL) also
|
||
has an OLSR implementation. It is written in C++, and has IPv6
|
||
support. <A
|
||
HREF="http://pf.itd.nrl.navy.mil/projects/olsr/"
|
||
TARGET="_top"
|
||
> http://pf.itd.nrl.navy.mil/projects/olsr/</A
|
||
>
|
||
</P
|
||
></DIV
|
||
><DIV
|
||
CLASS="sect3"
|
||
><HR><H3
|
||
CLASS="sect3"
|
||
><A
|
||
NAME="crc"
|
||
></A
|
||
>3.6.3. CRCOLSR</H3
|
||
><P
|
||
>CRCOLSR is a implementation based on the French INRIA
|
||
code. It is is supposed to be maintained by <SPAN
|
||
CLASS="QUOTE"
|
||
>"Communication
|
||
Research Center"</SPAN
|
||
> (CRC) in Canada. But as of this writing,
|
||
there have been no new releases since April 3, 2003. <A
|
||
HREF="http://pf.itd.nrl.navy.mil/projects/olsr/"
|
||
TARGET="_top"
|
||
> http://pf.itd.nrl.navy.mil/projects/olsr/</A
|
||
></P
|
||
></DIV
|
||
><DIV
|
||
CLASS="sect3"
|
||
><HR><H3
|
||
CLASS="sect3"
|
||
><A
|
||
NAME="qolsr"
|
||
></A
|
||
>3.6.4. QOLSR</H3
|
||
><P
|
||
>QOLSR is aiming to provide <SPAN
|
||
CLASS="QUOTE"
|
||
>"Quality of
|
||
Service"</SPAN
|
||
> routing in wireless mobile ad hoc
|
||
networks. There is no QoS support at the time of this writing,
|
||
and support for ipv4/ipv6 is triggered at compile time. Written
|
||
in C++.</P
|
||
></DIV
|
||
></DIV
|
||
></DIV
|
||
><DIV
|
||
CLASS="sect1"
|
||
><HR><H1
|
||
CLASS="sect1"
|
||
><A
|
||
NAME="faq"
|
||
></A
|
||
>4. FAQ</H1
|
||
><P
|
||
>Some of these question/answers are from the <A
|
||
HREF="http://www.olsr.org"
|
||
TARGET="_top"
|
||
>OLSRd</A
|
||
> site.</P
|
||
><DIV
|
||
CLASS="qandaset"
|
||
><DL
|
||
><DT
|
||
>4.1. <A
|
||
HREF="#AEN387"
|
||
>If OLSRd fully RFC3626 compliant?</A
|
||
></DT
|
||
><DT
|
||
>4.2. <A
|
||
HREF="#AEN393"
|
||
>Can I mix site-local and global IPv6 addresses?</A
|
||
></DT
|
||
><DT
|
||
>4.3. <A
|
||
HREF="#AEN399"
|
||
>The GUI front-end failed to compile...why?</A
|
||
></DT
|
||
><DT
|
||
>4.4. <A
|
||
HREF="#AEN404"
|
||
>If there is multiply gateways present, how does
|
||
the mobile node conclude to use the nearest one?</A
|
||
></DT
|
||
><DT
|
||
>4.5. <A
|
||
HREF="#AEN410"
|
||
>I get OLSRd up and running - but the nodes
|
||
don't seem to <SPAN
|
||
CLASS="QUOTE"
|
||
>"hear"</SPAN
|
||
> each other!</A
|
||
></DT
|
||
></DL
|
||
><DIV
|
||
CLASS="qandaentry"
|
||
><DIV
|
||
CLASS="question"
|
||
><P
|
||
><A
|
||
NAME="AEN387"
|
||
></A
|
||
><B
|
||
>4.1. </B
|
||
>If OLSRd fully RFC3626 compliant?</P
|
||
></DIV
|
||
><DIV
|
||
CLASS="answer"
|
||
><P
|
||
><B
|
||
> </B
|
||
>Yes. It even has implemented some of the extra
|
||
functionality mentioned in the RFC. See the <A
|
||
HREF="http://www.olsr.org/index.cgi?action=comp"
|
||
TARGET="_top"
|
||
> RFC Compliance</A
|
||
> section for complete list.
|
||
</P
|
||
></DIV
|
||
></DIV
|
||
><DIV
|
||
CLASS="qandaentry"
|
||
><DIV
|
||
CLASS="question"
|
||
><P
|
||
><A
|
||
NAME="AEN393"
|
||
></A
|
||
><B
|
||
>4.2. </B
|
||
>Can I mix site-local and global IPv6 addresses?</P
|
||
></DIV
|
||
><DIV
|
||
CLASS="answer"
|
||
><P
|
||
><B
|
||
> </B
|
||
>Yes. But keep in mind that they intentionally were not
|
||
designed to be used at the same time. The network topology can be
|
||
quite <SPAN
|
||
CLASS="QUOTE"
|
||
>"messy"</SPAN
|
||
> if you start using these two.
|
||
</P
|
||
></DIV
|
||
></DIV
|
||
><DIV
|
||
CLASS="qandaentry"
|
||
><DIV
|
||
CLASS="question"
|
||
><P
|
||
><A
|
||
NAME="AEN399"
|
||
></A
|
||
><B
|
||
>4.3. </B
|
||
>The GUI front-end failed to compile...why?</P
|
||
></DIV
|
||
><DIV
|
||
CLASS="answer"
|
||
><P
|
||
><B
|
||
> </B
|
||
>You probably don't have the GTK2.0 development libraries
|
||
installed.</P
|
||
></DIV
|
||
></DIV
|
||
><DIV
|
||
CLASS="qandaentry"
|
||
><DIV
|
||
CLASS="question"
|
||
><P
|
||
><A
|
||
NAME="AEN404"
|
||
></A
|
||
><B
|
||
>4.4. </B
|
||
>If there is multiply gateways present, how does
|
||
the mobile node conclude to use the nearest one?</P
|
||
></DIV
|
||
><DIV
|
||
CLASS="answer"
|
||
><P
|
||
><B
|
||
> </B
|
||
>When a new gateway is detected, the Mobile Node checks the
|
||
distance (number of hops) to this newly discovered gateway
|
||
compared to the current gateway. If there is a shorter distance,
|
||
this new gateway becomes the current (default) gateway. See
|
||
section 12.6.2 in the OLSR RFC (<A
|
||
HREF="http://www.ietf.org/rfc/rfc3626.txt"
|
||
TARGET="_top"
|
||
>RFC3626</A
|
||
>)</P
|
||
></DIV
|
||
></DIV
|
||
><DIV
|
||
CLASS="qandaentry"
|
||
><DIV
|
||
CLASS="question"
|
||
><P
|
||
><A
|
||
NAME="AEN410"
|
||
></A
|
||
><B
|
||
>4.5. </B
|
||
>I get OLSRd up and running - but the nodes
|
||
don't seem to <SPAN
|
||
CLASS="QUOTE"
|
||
>"hear"</SPAN
|
||
> each other!</P
|
||
></DIV
|
||
><DIV
|
||
CLASS="answer"
|
||
><P
|
||
><B
|
||
> </B
|
||
>Most of the time this is a configuration error: Check
|
||
the following:</P
|
||
><P
|
||
></P
|
||
><UL
|
||
><LI
|
||
><P
|
||
> If using WLAN interfaces make sure the ESSID/key match.
|
||
</P
|
||
></LI
|
||
><LI
|
||
><P
|
||
> Make sure the cards are set in <SPAN
|
||
CLASS="QUOTE"
|
||
>"ad-hoc"</SPAN
|
||
> mode
|
||
and not <SPAN
|
||
CLASS="QUOTE"
|
||
>"managed"</SPAN
|
||
>.
|
||
</P
|
||
></LI
|
||
><LI
|
||
><P
|
||
> Make sure you are not blocking UDP/698. If using
|
||
netfilter run <TT
|
||
CLASS="userinput"
|
||
><B
|
||
>ip6tables -L</B
|
||
></TT
|
||
> as root
|
||
to see what rules are set. <TT
|
||
CLASS="userinput"
|
||
><B
|
||
>ip6tables
|
||
-F</B
|
||
></TT
|
||
> flushes all rules.
|
||
</P
|
||
></LI
|
||
></UL
|
||
></DIV
|
||
></DIV
|
||
></DIV
|
||
></DIV
|
||
><DIV
|
||
CLASS="sect1"
|
||
><HR><H1
|
||
CLASS="sect1"
|
||
><A
|
||
NAME="resources"
|
||
></A
|
||
>5. Useful Resources</H1
|
||
><P
|
||
> <P
|
||
></P
|
||
><OL
|
||
TYPE="1"
|
||
><LI
|
||
><P
|
||
>OLSRd (old uOLSR)<A
|
||
HREF="http://www.olsr.org"
|
||
TARGET="_top"
|
||
> http://www.olsr.org</A
|
||
>
|
||
</P
|
||
></LI
|
||
><LI
|
||
><P
|
||
>Optimized Link State Routing Protocol (OLSR) RFC3626<A
|
||
HREF="http://www.ietf.org/rfc/rfc3626.txt"
|
||
TARGET="_top"
|
||
> http://www.ietf.org/rfc/rfc3626.txt</A
|
||
>
|
||
</P
|
||
></LI
|
||
><LI
|
||
><P
|
||
>Mobile Ad hoc Networking (MANET) RFC2501<A
|
||
HREF="http://www.ietf.org/rfc/rfc2501.txt"
|
||
TARGET="_top"
|
||
> http://www.ietf.org/rfc/rfc3626.txt</A
|
||
>
|
||
</P
|
||
></LI
|
||
><LI
|
||
><P
|
||
>Mobile Ad-hoc Networks (manet) Working Group (IETF)<A
|
||
HREF="http://www.ietf.org/html.charters/manet-charter.html"
|
||
TARGET="_top"
|
||
> http://www.ietf.org/html.charters/manet-charter.html</A
|
||
>
|
||
</P
|
||
></LI
|
||
><LI
|
||
><P
|
||
>Open Shortest Path First IGP (ospf)<A
|
||
HREF="http://www.ietf.org/html.charters/ospf-charter.html"
|
||
TARGET="_top"
|
||
> http://www.ietf.org/html.charters/ospf-charter.html</A
|
||
>
|
||
</P
|
||
></LI
|
||
><LI
|
||
><P
|
||
>Protean Forge - OLSR software (CRC and NRL) <A
|
||
HREF="http://pf.itd.nrl.navy.mil/projects/olsr/"
|
||
TARGET="_top"
|
||
> http://pf.itd.nrl.navy.mil/projects/olsr/</A
|
||
></P
|
||
></LI
|
||
><LI
|
||
><P
|
||
>INRIA OLSR <A
|
||
HREF="http://hipercom.inria.fr/olsr/"
|
||
TARGET="_top"
|
||
> http://hipercom.inria.fr/olsr/</A
|
||
></P
|
||
></LI
|
||
><LI
|
||
><P
|
||
>QOLSR <A
|
||
HREF="http://qolsr.lri.fr/"
|
||
TARGET="_top"
|
||
> http://qolsr.lri.fr/</A
|
||
></P
|
||
></LI
|
||
><LI
|
||
><P
|
||
>IPv6 Working Group (IETF) <A
|
||
HREF="http://www.ietf.org/html.charters/ipv6-charter.html"
|
||
TARGET="_top"
|
||
> http://www.ietf.org/html.charters/ipv6-charter.html </A
|
||
></P
|
||
></LI
|
||
><LI
|
||
><P
|
||
>RFC2460 Internet Protocol, Version 6 (IPv6) Specification
|
||
<A
|
||
HREF="http://www.ietf.org/rfc/rfc2460.txt"
|
||
TARGET="_top"
|
||
> http://www.ietf.org/rfc/rfc2460.txt </A
|
||
></P
|
||
></LI
|
||
><LI
|
||
><P
|
||
>Peter Bieringer's Linux IPv6 HOWTO (en) <A
|
||
HREF="http://ldp.linux.no/HOWTO/Linux+IPv6-HOWTO/"
|
||
TARGET="_top"
|
||
> http://ldp.linux.no/HOWTO/Linux+IPv6-HOWTO/ </A
|
||
></P
|
||
></LI
|
||
><LI
|
||
><P
|
||
>Current Status of IPv6 Support for Networking Applications
|
||
<A
|
||
HREF="http://www.deepspace6.net/docs/ipv6_status_page_apps.html"
|
||
TARGET="_top"
|
||
> http://www.deepspace6.net/docs/ipv6_status_page_apps.html</A
|
||
></P
|
||
></LI
|
||
></OL
|
||
>
|
||
</P
|
||
></DIV
|
||
><DIV
|
||
CLASS="sect1"
|
||
><HR><H1
|
||
CLASS="sect1"
|
||
><A
|
||
NAME="copyack"
|
||
></A
|
||
>6. Copyright, acknowledgments and miscellaneous</H1
|
||
><DIV
|
||
CLASS="sect2"
|
||
><H2
|
||
CLASS="sect2"
|
||
><A
|
||
NAME="copyright"
|
||
></A
|
||
>6.1. Copyright and License</H2
|
||
><P
|
||
> Copyright (c) 2003, 2004 Lars Strand.</P
|
||
><P
|
||
> Permission is granted to copy, distribute and/or modify this
|
||
document under the terms of the <A
|
||
HREF="http://www.gnu.org/licenses/fdl.html"
|
||
TARGET="_top"
|
||
>GNU Free
|
||
Documentation License</A
|
||
>, Version 1.2 or any later version
|
||
published by the Free Software Foundation; with no Invariant
|
||
Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy
|
||
of the license is included in the section entitled "GNU Free
|
||
Documentation License".
|
||
</P
|
||
></DIV
|
||
><DIV
|
||
CLASS="sect2"
|
||
><HR><H2
|
||
CLASS="sect2"
|
||
><A
|
||
NAME="produced"
|
||
></A
|
||
>6.2. How this document was produced</H2
|
||
><P
|
||
>This document was originally written in LaTeX using
|
||
Emacs. HTML version created with latex2html. Later it was
|
||
converted to DocBook XML.</P
|
||
><P
|
||
>An up-to-date version of this document can be found at:</P
|
||
><P
|
||
> HTML: <A
|
||
HREF="http://www.tldp.org/HOWTO/OLSR-IPv6-HOWTO/index.html"
|
||
TARGET="_top"
|
||
> http://www.tldp.org/HOWTO/OLSR-IPv6-HOWTO/index.html</A
|
||
> </P
|
||
></DIV
|
||
><DIV
|
||
CLASS="sect2"
|
||
><HR><H2
|
||
CLASS="sect2"
|
||
><A
|
||
NAME="feedback"
|
||
></A
|
||
>6.3. Feedback</H2
|
||
><P
|
||
>Suggestions, corrections, additions wanted. Contributors
|
||
wanted and acknowledged. Flames not wanted.</P
|
||
><P
|
||
>I can always be reached at <TT
|
||
CLASS="email"
|
||
><<A
|
||
HREF="mailto:lars at unik
|
||
no"
|
||
>lars at unik
|
||
no</A
|
||
>></TT
|
||
></P
|
||
><P
|
||
>Homepage: <A
|
||
HREF="http://www.gnist.org/~lars/"
|
||
TARGET="_top"
|
||
> http://www.gnist.org/~lars/</A
|
||
></P
|
||
></DIV
|
||
><DIV
|
||
CLASS="sect2"
|
||
><HR><H2
|
||
CLASS="sect2"
|
||
><A
|
||
NAME="ack"
|
||
></A
|
||
>6.4. Acknowledgments</H2
|
||
><P
|
||
>This document was produced as a part of Interoperable
|
||
Networks for Secure Communications <A
|
||
HREF="http://insc.nodeca.mil.no/"
|
||
TARGET="_top"
|
||
>(INSC task 6)</A
|
||
></P
|
||
><P
|
||
>Thanks to Andreas Hafslund (andreha [at] unik no) for
|
||
initial support. Also thanks to UniK (University Graduate Center)
|
||
<A
|
||
HREF="http://www.unik.no"
|
||
TARGET="_top"
|
||
>http://www.unik.no</A
|
||
> and FFI
|
||
(Norwegian Defence Research Establishment) <A
|
||
HREF="http://www.ffi.mil.no"
|
||
TARGET="_top"
|
||
>http://www.ffi.mil.no</A
|
||
> for
|
||
hardware support.</P
|
||
><P
|
||
>Also thanks to Andreas T<>nnesen (andreto [at] unik no) for
|
||
technical help updating this howto</P
|
||
><P
|
||
>Thanks also to the other HOWTO authors whose works I have
|
||
referenced: </P
|
||
><P
|
||
><EM
|
||
>Linux IPv6 HOWTO (en)</EM
|
||
> by Peter
|
||
Bieringer</P
|
||
></DIV
|
||
></DIV
|
||
><DIV
|
||
CLASS="appendix"
|
||
><HR><H1
|
||
CLASS="appendix"
|
||
><A
|
||
NAME="gfdl"
|
||
></A
|
||
>A. GNU Free Documentation License</H1
|
||
><FONT
|
||
COLOR="RED"
|
||
>Version 1.2, November 2002</FONT
|
||
><A
|
||
NAME="fsf-copyright"
|
||
></A
|
||
><BLOCKQUOTE
|
||
CLASS="BLOCKQUOTE"
|
||
><P
|
||
>Copyright (C) 2000,2001,2002 Free Software Foundation, Inc.
|
||
59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||
Everyone is permitted to copy and distribute verbatim copies
|
||
of this license document, but changing it is not allowed.</P
|
||
></BLOCKQUOTE
|
||
><DIV
|
||
CLASS="section"
|
||
><HR><H1
|
||
CLASS="section"
|
||
><A
|
||
NAME="gfdl-0"
|
||
></A
|
||
>A.1. PREAMBLE</H1
|
||
><P
|
||
>The purpose of this License is to make a manual, textbook, or
|
||
other functional and useful document "free" in the sense of freedom: to
|
||
assure everyone the effective freedom to copy and redistribute it, with
|
||
or without modifying it, either commercially or noncommercially.
|
||
Secondarily, this License preserves for the author and publisher a way
|
||
to get credit for their work, while not being considered responsible for
|
||
modifications made by others.</P
|
||
><P
|
||
>This License is a kind of "copyleft", which means that derivative
|
||
works of the document must themselves be free in the same sense. It
|
||
complements the GNU General Public License, which is a copyleft license
|
||
designed for free software.</P
|
||
><P
|
||
>We have designed this License in order to use it for manuals for
|
||
free software, because free software needs free documentation: a free
|
||
program should come with manuals providing the same freedoms that the
|
||
software does. But this License is not limited to software manuals; it
|
||
can be used for any textual work, regardless of subject matter or
|
||
whether it is published as a printed book. We recommend this License
|
||
principally for works whose purpose is instruction or reference.</P
|
||
></DIV
|
||
><DIV
|
||
CLASS="section"
|
||
><HR><H1
|
||
CLASS="section"
|
||
><A
|
||
NAME="gfdl-1"
|
||
></A
|
||
>A.2. APPLICABILITY AND DEFINITIONS</H1
|
||
><P
|
||
>This License applies to any manual or other work, in
|
||
any medium, that contains a notice placed by the copyright holder saying
|
||
it can be distributed under the terms of this License. Such a notice
|
||
grants a world-wide, royalty-free license, unlimited in duration, to use
|
||
that work under the conditions stated herein. The "Document", below,
|
||
refers to any such manual or work. Any member of the public is a
|
||
licensee, and is addressed as "you". You accept the license if you
|
||
copy, modify or distribute the work in a way requiring permission under
|
||
copyright law.</P
|
||
><P
|
||
>A "Modified Version" of the Document means any
|
||
work containing the Document or a portion of it, either copied verbatim,
|
||
or with modifications and/or translated into another language.</P
|
||
><P
|
||
>A "Secondary Section" is a named appendix or
|
||
a front-matter section of the Document that deals exclusively with the
|
||
relationship of the publishers or authors of the Document to the
|
||
Document's overall subject (or to related matters) and contains nothing
|
||
that could fall directly within that overall subject. (Thus, if the
|
||
Document is in part a textbook of mathematics, a Secondary Section may
|
||
not explain any mathematics.) The relationship could be a matter of
|
||
historical connection with the subject or with related matters, or of
|
||
legal, commercial, philosophical, ethical or political position
|
||
regarding them.</P
|
||
><P
|
||
>The "Invariant Sections" are certain Secondary
|
||
Sections whose titles are designated, as being those of Invariant
|
||
Sections, in the notice that says that the Document is released under
|
||
this License. If a section does not fit the above definition of
|
||
Secondary then it is not allowed to be designated as Invariant. The
|
||
Document may contain zero Invariant Sections. If the Document does not
|
||
identify any Invariant Sections then there are none.</P
|
||
><P
|
||
>The "Cover Texts" are certain short passages of
|
||
text that are listed, as Front-Cover Texts or Back-Cover Texts, in the
|
||
notice that says that the Document is released under this License. A
|
||
Front-Cover Text may be at most 5 words, and a Back-Cover Text may be at
|
||
most 25 words.</P
|
||
><P
|
||
>A "Transparent" copy of the Document means a
|
||
machine-readable copy, represented in a format whose specification is
|
||
available to the general public, that is suitable for revising the
|
||
document straightforwardly with generic text editors or (for images
|
||
composed of pixels) generic paint programs or (for drawings) some widely
|
||
available drawing editor, and that is suitable for input to text
|
||
formatters or for automatic translation to a variety of formats suitable
|
||
for input to text formatters. A copy made in an otherwise Transparent
|
||
file format whose markup, or absence of markup, has been arranged to
|
||
thwart or discourage subsequent modification by readers is not
|
||
Transparent. An image format is not Transparent if used for any
|
||
substantial amount of text. A copy that is not "Transparent" is called
|
||
"Opaque".</P
|
||
><P
|
||
>Examples of suitable formats for Transparent copies include plain
|
||
ASCII without markup, Texinfo input format, LaTeX input format, SGML or
|
||
XML using a publicly available DTD, and standard-conforming simple HTML,
|
||
PostScript or PDF designed for human modification. Examples of
|
||
transparent image formats include PNG, XCF and JPG. Opaque formats
|
||
include proprietary formats that can be read and edited only by
|
||
proprietary word processors, SGML or XML for which the DTD and/or
|
||
processing tools are not generally available, and the machine-generated
|
||
HTML, PostScript or PDF produced by some word processors for output
|
||
purposes only.</P
|
||
><P
|
||
>The "Title Page" means, for a printed book,
|
||
the title page itself, plus such following pages as are needed to hold,
|
||
legibly, the material this License requires to appear in the title page.
|
||
For works in formats which do not have any title page as such, "Title
|
||
Page" means the text near the most prominent appearance of the work's
|
||
title, preceding the beginning of the body of the text.</P
|
||
><P
|
||
>A section "Entitled XYZ" means a named subunit
|
||
of the Document whose title either is precisely XYZ or contains XYZ in
|
||
parentheses following text that translates XYZ in another language.
|
||
(Here XYZ stands for a specific section name mentioned below, such as
|
||
"Acknowledgements", "Dedications", "Endorsements", or "History".) To
|
||
"Preserve the Title" of such a section when you modify the Document
|
||
means that it remains a section "Entitled XYZ" according to this
|
||
definition.</P
|
||
><P
|
||
>The Document may include Warranty Disclaimers next to the notice
|
||
which states that this License applies to the Document. These Warranty
|
||
Disclaimers are considered to be included by reference in this License,
|
||
but only as regards disclaiming warranties: any other implication that
|
||
these Warranty Disclaimers may have is void and has no effect on the
|
||
meaning of this License.</P
|
||
></DIV
|
||
><DIV
|
||
CLASS="section"
|
||
><HR><H1
|
||
CLASS="section"
|
||
><A
|
||
NAME="gfdl-2"
|
||
></A
|
||
>A.3. VERBATIM COPYING</H1
|
||
><P
|
||
>You may copy and distribute the Document in any medium, either
|
||
commercially or noncommercially, provided that this License, the
|
||
copyright notices, and the license notice saying this License applies to
|
||
the Document are reproduced in all copies, and that you add no other
|
||
conditions whatsoever to those of this License. You may not use
|
||
technical measures to obstruct or control the reading or further copying
|
||
of the copies you make or distribute. However, you may accept
|
||
compensation in exchange for copies. If you distribute a large enough
|
||
number of copies you must also follow the conditions in section 3.
|
||
</P
|
||
><P
|
||
>You may also lend copies, under the same conditions stated above,
|
||
and you may publicly display copies.</P
|
||
></DIV
|
||
><DIV
|
||
CLASS="section"
|
||
><HR><H1
|
||
CLASS="section"
|
||
><A
|
||
NAME="gfdl-3"
|
||
></A
|
||
>A.4. COPYING IN QUANTITY</H1
|
||
><P
|
||
>If you publish printed copies (or copies in media that commonly
|
||
have printed covers) of the Document, numbering more than 100, and the
|
||
Document's license notice requires Cover Texts, you must enclose the
|
||
copies in covers that carry, clearly and legibly, all these Cover Texts:
|
||
Front-Cover Texts on the front cover, and Back-Cover Texts on the back
|
||
cover. Both covers must also clearly and legibly identify you as the
|
||
publisher of these copies. The front cover must present the full title
|
||
with all words of the title equally prominent and visible. You may add
|
||
other material on the covers in addition. Copying with changes limited
|
||
to the covers, as long as they preserve the title of the Document and
|
||
satisfy these conditions, can be treated as verbatim copying in other
|
||
respects.</P
|
||
><P
|
||
>If the required texts for either cover are too voluminous to fit
|
||
legibly, you should put the first ones listed (as many as fit
|
||
reasonably) on the actual cover, and continue the rest onto adjacent
|
||
pages.</P
|
||
><P
|
||
>If you publish or distribute Opaque copies of the Document
|
||
numbering more than 100, you must either include a machine-readable
|
||
Transparent copy along with each Opaque copy, or state in or with each
|
||
Opaque copy a computer-network location from which the general
|
||
network-using public has access to download using public-standard
|
||
network protocols a complete Transparent copy of the Document, free of
|
||
added material. If you use the latter option, you must take reasonably
|
||
prudent steps, when you begin distribution of Opaque copies in quantity,
|
||
to ensure that this Transparent copy will remain thus accessible at the
|
||
stated location until at least one year after the last time you
|
||
distribute an Opaque copy (directly or through your agents or retailers)
|
||
of that edition to the public.</P
|
||
><P
|
||
>It is requested, but not required, that you contact the authors of
|
||
the Document well before redistributing any large number of copies, to
|
||
give them a chance to provide you with an updated version of the
|
||
Document.</P
|
||
></DIV
|
||
><DIV
|
||
CLASS="section"
|
||
><HR><H1
|
||
CLASS="section"
|
||
><A
|
||
NAME="gfdl-4"
|
||
></A
|
||
>A.5. MODIFICATIONS</H1
|
||
><P
|
||
>You may copy and distribute a Modified Version of the Document
|
||
under the conditions of sections 2 and 3 above, provided that you
|
||
release the Modified Version under precisely this License, with the
|
||
Modified Version filling the role of the Document, thus licensing
|
||
distribution and modification of the Modified Version to whoever
|
||
possesses a copy of it. In addition, you must do these things in the
|
||
Modified Version:</P
|
||
><P
|
||
></P
|
||
><OL
|
||
TYPE="A"
|
||
><LI
|
||
><P
|
||
>Use in the Title Page (and on the covers, if any) a
|
||
title distinct from that of the Document, and from those of previous
|
||
versions (which should, if there were any, be listed in the History
|
||
section of the Document). You may use the same title as a previous
|
||
version if the original publisher of that version gives permission.
|
||
</P
|
||
></LI
|
||
><LI
|
||
><P
|
||
>List on the Title Page, as authors, one or more
|
||
persons or entities responsible for authorship of the modifications in
|
||
the Modified Version, together with at least five of the principal
|
||
authors of the Document (all of its principal authors, if it has fewer
|
||
than five), unless they release you from this requirement.
|
||
</P
|
||
></LI
|
||
><LI
|
||
><P
|
||
>State on the Title page the name of the publisher of
|
||
the Modified Version, as the publisher.</P
|
||
></LI
|
||
><LI
|
||
><P
|
||
>Preserve all the copyright notices of the Document.
|
||
</P
|
||
></LI
|
||
><LI
|
||
><P
|
||
>Add an appropriate copyright notice for your
|
||
modifications adjacent to the other copyright notices.
|
||
</P
|
||
></LI
|
||
><LI
|
||
><P
|
||
>Include, immediately after the copyright notices, a
|
||
license notice giving the public permission to use the Modified
|
||
Version under the terms of this License, in the form shown in the
|
||
<A
|
||
HREF="#gfdl-addendum"
|
||
>Addendum</A
|
||
> below.
|
||
</P
|
||
></LI
|
||
><LI
|
||
><P
|
||
>Preserve in that license notice the full lists of
|
||
Invariant Sections and required Cover Texts given in the Document's
|
||
license notice.</P
|
||
></LI
|
||
><LI
|
||
><P
|
||
>Include an unaltered copy of this License.
|
||
</P
|
||
></LI
|
||
><LI
|
||
><P
|
||
>Preserve the section Entitled "History", Preserve its
|
||
Title, and add to it an item stating at least the title, year, new
|
||
authors, and publisher of the Modified Version as given on the Title
|
||
Page. If there is no section Entitled "History" in the Document,
|
||
create one stating the title, year, authors, and publisher of the
|
||
Document as given on its Title Page, then add an item describing the
|
||
Modified Version as stated in the previous sentence.
|
||
</P
|
||
></LI
|
||
><LI
|
||
><P
|
||
>Preserve the network location, if any, given in the
|
||
Document for public access to a Transparent copy of the Document, and
|
||
likewise the network locations given in the Document for previous
|
||
versions it was based on. These may be placed in the "History"
|
||
section. You may omit a network location for a work that was
|
||
published at least four years before the Document itself, or if the
|
||
original publisher of the version it refers to gives permission.
|
||
</P
|
||
></LI
|
||
><LI
|
||
><P
|
||
>For any section Entitled "Acknowledgements" or
|
||
"Dedications", Preserve the Title of the section, and preserve in the
|
||
section all the substance and tone of each of the contributor
|
||
acknowledgements and/or dedications given therein.
|
||
</P
|
||
></LI
|
||
><LI
|
||
><P
|
||
>Preserve all the Invariant Sections of the Document,
|
||
unaltered in their text and in their titles. Section numbers or the
|
||
equivalent are not considered part of the section titles.
|
||
</P
|
||
></LI
|
||
><LI
|
||
><P
|
||
>Delete any section Entitled "Endorsements".
|
||
Such a section may not be included in the Modified Version.
|
||
</P
|
||
></LI
|
||
><LI
|
||
><P
|
||
>Do not retitle any existing section to be Entitled
|
||
"Endorsements" or to conflict in title with any Invariant Section.
|
||
</P
|
||
></LI
|
||
><LI
|
||
><P
|
||
>Preserve any Warranty Disclaimers.
|
||
</P
|
||
></LI
|
||
></OL
|
||
><P
|
||
>If the Modified Version includes new front-matter sections or
|
||
appendices that qualify as Secondary Sections and contain no material
|
||
copied from the Document, you may at your option designate some or all
|
||
of these sections as invariant. To do this, add their titles to the
|
||
list of Invariant Sections in the Modified Version's license notice.
|
||
These titles must be distinct from any other section titles.</P
|
||
><P
|
||
>You may add a section Entitled "Endorsements", provided it
|
||
contains nothing but endorsements of your Modified Version by various
|
||
parties--for example, statements of peer review or that the text has
|
||
been approved by an organization as the authoritative definition of a
|
||
standard.</P
|
||
><P
|
||
>You may add a passage of up to five words as a Front-Cover Text,
|
||
and a passage of up to 25 words as a Back-Cover Text, to the end of the
|
||
list of Cover Texts in the Modified Version. Only one passage of
|
||
Front-Cover Text and one of Back-Cover Text may be added by (or through
|
||
arrangements made by) any one entity. If the Document already includes
|
||
a cover text for the same cover, previously added by you or by
|
||
arrangement made by the same entity you are acting on behalf of, you may
|
||
not add another; but you may replace the old one, on explicit permission
|
||
from the previous publisher that added the old one.</P
|
||
><P
|
||
>The author(s) and publisher(s) of the Document do not by this
|
||
License give permission to use their names for publicity for or to
|
||
assert or imply endorsement of any Modified Version.</P
|
||
></DIV
|
||
><DIV
|
||
CLASS="section"
|
||
><HR><H1
|
||
CLASS="section"
|
||
><A
|
||
NAME="gfdl-5"
|
||
></A
|
||
>A.6. COMBINING DOCUMENTS</H1
|
||
><P
|
||
>You may combine the Document with other documents released under
|
||
this License, under the terms defined in <A
|
||
HREF="#gfdl-4"
|
||
>section
|
||
4</A
|
||
> above for modified versions, provided that you include in the
|
||
combination all of the Invariant Sections of all of the original
|
||
documents, unmodified, and list them all as Invariant Sections of your
|
||
combined work in its license notice, and that you preserve all their
|
||
Warranty Disclaimers.</P
|
||
><P
|
||
>The combined work need only contain one copy of this License, and
|
||
multiple identical Invariant Sections may be replaced with a single
|
||
copy. If there are multiple Invariant Sections with the same name but
|
||
different contents, make the title of each such section unique by adding
|
||
at the end of it, in parentheses, the name of the original author or
|
||
publisher of that section if known, or else a unique number. Make the
|
||
same adjustment to the section titles in the list of Invariant Sections
|
||
in the license notice of the combined work.</P
|
||
><P
|
||
>In the combination, you must combine any sections Entitled
|
||
"History" in the various original documents, forming one section
|
||
Entitled "History"; likewise combine any sections Entitled
|
||
"Acknowledgements", and any sections Entitled "Dedications". You must
|
||
delete all sections Entitled "Endorsements".</P
|
||
></DIV
|
||
><DIV
|
||
CLASS="section"
|
||
><HR><H1
|
||
CLASS="section"
|
||
><A
|
||
NAME="gfdl-6"
|
||
></A
|
||
>A.7. COLLECTIONS OF DOCUMENTS</H1
|
||
><P
|
||
>You may make a collection consisting of the Document and other
|
||
documents released under this License, and replace the individual copies
|
||
of this License in the various documents with a single copy that is
|
||
included in the collection, provided that you follow the rules of this
|
||
License for verbatim copying of each of the documents in all other
|
||
respects.</P
|
||
><P
|
||
>You may extract a single document from such a collection, and
|
||
distribute it individually under this License, provided you insert a
|
||
copy of this License into the extracted document, and follow this
|
||
License in all other respects regarding verbatim copying of that
|
||
document.</P
|
||
></DIV
|
||
><DIV
|
||
CLASS="section"
|
||
><HR><H1
|
||
CLASS="section"
|
||
><A
|
||
NAME="gfdl-7"
|
||
></A
|
||
>A.8. AGGREGATION WITH INDEPENDENT WORKS</H1
|
||
><P
|
||
>A compilation of the Document or its derivatives with other
|
||
separate and independent documents or works, in or on a volume of a
|
||
storage or distribution medium, is called an "aggregate" if the
|
||
copyright resulting from the compilation is not used to limit the legal
|
||
rights of the compilation's users beyond what the individual works
|
||
permit. When the Document is included in an aggregate, this License does
|
||
not apply to the other works in the aggregate which are not themselves
|
||
derivative works of the Document.</P
|
||
><P
|
||
>If the Cover Text requirement of section 3 is applicable to these
|
||
copies of the Document, then if the Document is less than one half of
|
||
the entire aggregate, the Document's Cover Texts may be placed on covers
|
||
that bracket the Document within the aggregate, or the electronic
|
||
equivalent of covers if the Document is in electronic form. Otherwise
|
||
they must appear on printed covers that bracket the whole
|
||
aggregate.</P
|
||
></DIV
|
||
><DIV
|
||
CLASS="section"
|
||
><HR><H1
|
||
CLASS="section"
|
||
><A
|
||
NAME="gfdl-8"
|
||
></A
|
||
>A.9. TRANSLATION</H1
|
||
><P
|
||
>Translation is considered a kind of modification, so you may
|
||
distribute translations of the Document under the terms of section 4.
|
||
Replacing Invariant Sections with translations requires special
|
||
permission from their copyright holders, but you may include
|
||
translations of some or all Invariant Sections in addition to the
|
||
original versions of these Invariant Sections. You may include a
|
||
translation of this License, and all the license notices in the
|
||
Document, and any Warranty Disclaimers, provided that you also include
|
||
the original English version of this License and the original versions
|
||
of those notices and disclaimers. In case of a disagreement between the
|
||
translation and the original version of this License or a notice or
|
||
disclaimer, the original version will prevail.</P
|
||
><P
|
||
>If a section in the Document is Entitled "Acknowledgements",
|
||
"Dedications", or "History", the requirement (section 4) to Preserve its
|
||
Title (section 1) will typically require changing the actual
|
||
title.</P
|
||
></DIV
|
||
><DIV
|
||
CLASS="section"
|
||
><HR><H1
|
||
CLASS="section"
|
||
><A
|
||
NAME="gfdl-9"
|
||
></A
|
||
>A.10. TERMINATION</H1
|
||
><P
|
||
>You may not copy, modify, sublicense, or distribute the Document
|
||
except as expressly provided for under this License. Any other attempt
|
||
to copy, modify, sublicense or distribute the Document is void, and will
|
||
automatically terminate your rights under this License. However,
|
||
parties who have received copies, or rights, from you under this License
|
||
will not have their licenses terminated so long as such parties remain
|
||
in full compliance.</P
|
||
></DIV
|
||
><DIV
|
||
CLASS="section"
|
||
><HR><H1
|
||
CLASS="section"
|
||
><A
|
||
NAME="gfdl-10"
|
||
></A
|
||
>A.11. FUTURE REVISIONS OF THIS LICENSE</H1
|
||
><P
|
||
>The Free Software Foundation may publish new, revised versions of
|
||
the GNU Free Documentation License from time to time. Such new versions
|
||
will be similar in spirit to the present version, but may differ in
|
||
detail to address new problems or concerns. See
|
||
http://www.gnu.org/copyleft/.</P
|
||
><P
|
||
>Each version of the License is given a distinguishing version
|
||
number. If the Document specifies that a particular numbered version of
|
||
this License "or any later version" applies to it, you have the option
|
||
of following the terms and conditions either of that specified version
|
||
or of any later version that has been published (not as a draft) by the
|
||
Free Software Foundation. If the Document does not specify a version
|
||
number of this License, you may choose any version ever published (not
|
||
as a draft) by the Free Software Foundation.</P
|
||
></DIV
|
||
><DIV
|
||
CLASS="section"
|
||
><HR><H1
|
||
CLASS="section"
|
||
><A
|
||
NAME="gfdl-addendum"
|
||
></A
|
||
>A.12. ADDENDUM: How to use this License for
|
||
your documents</H1
|
||
><P
|
||
>To use this License in a document you have written, include a copy
|
||
of the License in the document and put the following copyright and
|
||
license notices just after the title page:</P
|
||
><A
|
||
NAME="copyright-sample"
|
||
></A
|
||
><BLOCKQUOTE
|
||
CLASS="BLOCKQUOTE"
|
||
><P
|
||
> Copyright (c) YEAR YOUR NAME.
|
||
Permission is granted to copy, distribute and/or modify this document
|
||
under the terms of the GNU Free Documentation License, Version 1.2
|
||
or any later version published by the Free Software Foundation;
|
||
with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts.
|
||
A copy of the license is included in the section entitled "GNU
|
||
Free Documentation License".
|
||
</P
|
||
></BLOCKQUOTE
|
||
><P
|
||
>If you have Invariant Sections, Front-Cover Texts and Back-Cover
|
||
Texts, replace the "with...Texts." line with this:</P
|
||
><A
|
||
NAME="inv-cover-sample"
|
||
></A
|
||
><BLOCKQUOTE
|
||
CLASS="BLOCKQUOTE"
|
||
><P
|
||
> with the Invariant Sections being LIST THEIR TITLES, with the
|
||
Front-Cover Texts being LIST, and with the Back-Cover Texts being LIST.
|
||
</P
|
||
></BLOCKQUOTE
|
||
><P
|
||
>If you have Invariant Sections without Cover Texts, or some other
|
||
combination of the three, merge those two alternatives to suit the
|
||
situation.</P
|
||
><P
|
||
>If your document contains nontrivial examples of program code, we
|
||
recommend releasing these examples in parallel under your choice of free
|
||
software license, such as the GNU General Public License, to permit
|
||
their use in free software.</P
|
||
></DIV
|
||
></DIV
|
||
></DIV
|
||
></BODY
|
||
></HTML
|
||
> |