mirror of https://github.com/tLDP/LDP
updated
This commit is contained in:
parent
9a13880bb1
commit
f26ad22677
|
@ -2805,7 +2805,7 @@ Describes how to set up MMBase on a Debian GNU/Linux (Woody) system. </Para>
|
|||
Mobile-IPv6-HOWTO</ULink>,
|
||||
<CiteTitle>Linux Mobile IPv6 HOWTO</CiteTitle>
|
||||
</Para><Para>
|
||||
<CiteTitle>Updated: Dec 2003</CiteTitle>.
|
||||
<CiteTitle>Updated: Feb 2004</CiteTitle>.
|
||||
Describes the software and procedures to set up and use
|
||||
mobile IPv6 for Linux. </Para>
|
||||
</ListItem>
|
||||
|
|
|
@ -512,7 +512,7 @@ applications to make them LDAP-aware. </Para>
|
|||
Mobile-IPv6-HOWTO</ULink>,
|
||||
<CiteTitle>Linux Mobile IPv6 HOWTO</CiteTitle>
|
||||
</Para><Para>
|
||||
<CiteTitle>Updated: Dec 2003</CiteTitle>.
|
||||
<CiteTitle>Updated: Feb 2004</CiteTitle>.
|
||||
Describes the software and procedures to set up and use
|
||||
mobile IPv6 for Linux. </Para>
|
||||
</ListItem>
|
||||
|
|
Binary file not shown.
Before Width: | Height: | Size: 76 KiB After Width: | Height: | Size: 73 KiB |
|
@ -1,9 +1,9 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<!DOCTYPE article PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd" []>
|
||||
<!-- "DTD/docbookx.dtd" []> -->
|
||||
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd" []>
|
||||
<!-- "DTD/docbookx.dtd" []> -->
|
||||
|
||||
<article>
|
||||
<articleinfo>
|
||||
|
||||
|
@ -22,10 +22,17 @@
|
|||
<authorinitials>LKS</authorinitials>
|
||||
|
||||
<!-- All dates specified in ISO "YYYY-MM-DD" format -->
|
||||
<pubdate>2003-12-07</pubdate>
|
||||
<pubdate>2004-02-04</pubdate>
|
||||
|
||||
<!-- Most recent revision goes at the top; list in descending order -->
|
||||
<revhistory>
|
||||
<revision>
|
||||
<revnumber>1.1</revnumber>
|
||||
<date>2004-02-04</date>
|
||||
<authorinitials>LKS</authorinitials>
|
||||
<revremark>Added "Travelling through several foregin LAN's"
|
||||
and "Returning home". Some cleanup and restructuring.</revremark>
|
||||
</revision>
|
||||
<revision>
|
||||
<revnumber>1.0</revnumber>
|
||||
<date>2003-12-02</date>
|
||||
|
@ -33,14 +40,14 @@
|
|||
<revremark>Reviewed by LDP</revremark>
|
||||
</revision>
|
||||
<revision>
|
||||
<revnumber>0.7.2</revnumber>
|
||||
<revnumber>0.5.2</revnumber>
|
||||
<date>2003-11-26</date>
|
||||
<authorinitials>LKS</authorinitials>
|
||||
<revremark>A lot of cleanup. Thanks to John Levon levon [at]
|
||||
movementarian.org</revremark>
|
||||
</revision>
|
||||
<revision>
|
||||
<revnumber>0.7.1</revnumber>
|
||||
<revnumber>0.5.1</revnumber>
|
||||
<date>2003-11-22</date>
|
||||
<authorinitials>LKS</authorinitials>
|
||||
<revremark>Changed the license from <ulink
|
||||
|
@ -51,26 +58,26 @@
|
|||
problems.</ulink></revremark>
|
||||
</revision>
|
||||
<revision>
|
||||
<revnumber>0.7</revnumber>
|
||||
<revnumber>0.5</revnumber>
|
||||
<date>2003-11-18</date>
|
||||
<authorinitials>LKS</authorinitials>
|
||||
<revremark>Converted to XML Docbook. Some cleanup.</revremark>
|
||||
</revision>
|
||||
<revision>
|
||||
<revnumber>0.6</revnumber>
|
||||
<revnumber>0.4</revnumber>
|
||||
<date>2002-11-07</date>
|
||||
<authorinitials>LKS</authorinitials>
|
||||
<revremark>Fixed some errors + update. Thanks to Henrik Petander
|
||||
petander (at) tcs hut fi.</revremark>
|
||||
</revision>
|
||||
<revision>
|
||||
<revnumber>0.5.1</revnumber>
|
||||
<revnumber>0.3.1</revnumber>
|
||||
<date>2003-11-03</date>
|
||||
<authorinitials>LKS</authorinitials>
|
||||
<revremark>Updated to MIPL relase 1.0 (kernel 2.4.22).</revremark>
|
||||
</revision>
|
||||
<revision>
|
||||
<revnumber>0.5</revnumber>
|
||||
<revnumber>0.3</revnumber>
|
||||
<date>2003-08-05</date>
|
||||
<authorinitials>LKS</authorinitials>
|
||||
<revremark>Initial release.</revremark>
|
||||
|
@ -154,7 +161,8 @@
|
|||
|
||||
<mediaobject id="mobileIP">
|
||||
<imageobject>
|
||||
<imagedata fileref="images/Mobile-IP.png" format="PNG" align="center" scalefit="0"/>
|
||||
<imagedata fileref="images/Mobile-IP.png" format="PNG"
|
||||
width="520" align="center" scalefit="1"/>
|
||||
</imageobject>
|
||||
<textobject>
|
||||
<phrase>Mobile IP</phrase>
|
||||
|
@ -260,9 +268,10 @@ updated since 1998, so it is considered obsolete. </para>
|
|||
<para>The other implementation, which is up-to-date, is Helsinki
|
||||
University of Technology's MIPL project. The latest supported
|
||||
kernel is 2.4.22, and they have patches for the upcoming 2.6
|
||||
kernel. Visit <ulink url="http://www.mipl.mediapoli.com/">
|
||||
kernel (see the FAQ). Visit <ulink
|
||||
url="http://www.mipl.mediapoli.com/">
|
||||
http://www.mipl.mediapoli.com/</ulink> for papers, software or to
|
||||
browse the mail archive. </para>
|
||||
browse the mail archive. </para>
|
||||
|
||||
<!-- ################## -->
|
||||
|
||||
|
@ -362,7 +371,7 @@ browse the mail archive. </para>
|
|||
|
||||
<para> With debug messages it is easier to figure out what
|
||||
happened when something goes wrong. Also, when reporting a bug,
|
||||
debug messages are very helpful:</para>
|
||||
debug messages are very helpful.</para>
|
||||
|
||||
<para>To be sure you have all the correct options, you can run
|
||||
<userinput>chkconf_kernel.sh</userinput>, which is a small shell
|
||||
|
@ -373,9 +382,9 @@ browse the mail archive. </para>
|
|||
<para> Next you should compile and install your kernel.</para>
|
||||
|
||||
<para> Hint: To easily distinguish this kernel from other
|
||||
kernels, you can change the <quote>EXTRAVERSION</quote> value in the
|
||||
<userinput>/usr/src/linux/Makefile</userinput> to
|
||||
for example <quote>-MIPv6-1</quote>.</para>
|
||||
kernels, you can change the <quote>EXTRAVERSION</quote> variable
|
||||
in the <userinput>/usr/src/linux/Makefile</userinput> to for
|
||||
example <quote>-MIPv6-1</quote>.</para>
|
||||
|
||||
</listitem>
|
||||
|
||||
|
@ -470,6 +479,10 @@ browse the mail archive. </para>
|
|||
<screen>
|
||||
# echo '/etc/rc.d/mobile-ip6 start' >> /etc/rc.d/rc.local
|
||||
</screen>
|
||||
|
||||
<para>If you don't hack the Makefile, the
|
||||
<filename>mobile-ip6</filename> script is installed at '/' (you
|
||||
may then move it to /etc/rc.d/).</para>
|
||||
</listitem>
|
||||
|
||||
</orderedlist>
|
||||
|
@ -490,8 +503,9 @@ browse the mail archive. </para>
|
|||
<sect2 id="testcase">
|
||||
<title>Testcase</title>
|
||||
<para>The addresses we are using in our test-bed are
|
||||
site-local. <emphasis>Note that linking local addresses won't
|
||||
work!</emphasis> Our test-bed consist of four nodes; see figure
|
||||
site-local. You may as well use global addresses, but do
|
||||
<emphasis>note that link local addresses won't work!</emphasis>
|
||||
Our test-bed consist of four nodes; see figure
|
||||
<link linkend="mipv6testbed">"Mobile IPv6 testbed"</link>.</para>
|
||||
|
||||
<orderedlist>
|
||||
|
@ -518,17 +532,19 @@ browse the mail archive. </para>
|
|||
|
||||
<listitem>
|
||||
<para><emphasis>AR - Access Router:</emphasis> The link
|
||||
between AR and R is our <quote>internet</quote> (but is actually only a
|
||||
cross-cable). The AR has two interfaces; the wired interface
|
||||
to R has address <userinput>fec0:106:2300::1</userinput>, the
|
||||
wireless has address <userinput>fec0:106:1100::1</userinput>.</para>
|
||||
between AR and R is our <quote>internet</quote> - but in this
|
||||
testcase only a cross-cable (can be any network). The AR has
|
||||
two interfaces; the wired interface to R has address
|
||||
<userinput>fec0:106:2300::1</userinput>, the wireless has
|
||||
address <userinput>fec0:106:1100::1</userinput>.</para>
|
||||
</listitem>
|
||||
|
||||
</orderedlist>
|
||||
|
||||
<mediaobject id="mipv6testbed">
|
||||
<imageobject>
|
||||
<imagedata fileref="images/mipv6-testbed.png" format="PNG" align="center" scalefit="0"/>
|
||||
<imagedata fileref="images/mipv6-testbed.png" format="PNG"
|
||||
width="550px" align="center" scalefit="1"/>
|
||||
</imageobject>
|
||||
<textobject>
|
||||
<phrase>Mobile IPv6 testbed</phrase>
|
||||
|
@ -541,15 +557,16 @@ browse the mail archive. </para>
|
|||
|
||||
<!-- ################## -->
|
||||
<sect2 id="stepbystep">
|
||||
<title>Step-by-step</title>
|
||||
<title>Step-by-step configuration</title>
|
||||
|
||||
<!-- ############ -->
|
||||
<sect3 id="fullyipv6">
|
||||
<title>Fully functional IPv6 network</title>
|
||||
<title>Setting up a fully functional IPv6 network</title>
|
||||
<para>Before we can start testing mobile IP, we need a fully
|
||||
functional IPv6 network. All the nodes should be able to ping
|
||||
each other. This is a crucial part. If, for example, AR is not
|
||||
able to ping HA, then there will be no binding update.</para>
|
||||
each other. <emphasis>This is a crucial part.</emphasis> If, for
|
||||
example, AR is not able to ping HA, then there will be no binding
|
||||
update.</para>
|
||||
|
||||
<para>I will give a brief instruction to get our network up and
|
||||
running using IPv6. For more info on setting up an IPv6 network,
|
||||
|
@ -577,8 +594,7 @@ browse the mail archive. </para>
|
|||
# echo "1" > /proc/sys/net/ipv6/conf/eth0/autoconf
|
||||
# echo "1" > /proc/sys/net/ipv6/conf/eth0/accept_ra
|
||||
# echo "1" > /proc/sys/net/ipv6/conf/eth0/accept_redirects
|
||||
# /etc/init.d/mobile-ipv6 start
|
||||
# ip route add ::/0 via fec0:106:2700::1
|
||||
# /etc/init.d/mobile-ip6 start
|
||||
</screen>
|
||||
|
||||
</listitem>
|
||||
|
@ -589,8 +605,9 @@ browse the mail archive. </para>
|
|||
because it uses normal routing to deliver packets captured
|
||||
from a physical interface to the virtual tunnel
|
||||
interface. <emphasis>Note: You must add a default route or else
|
||||
HA will have problem contacting the MN. One possible solution
|
||||
is to have HA as the default router of the home network.</emphasis></para>
|
||||
HA will have problem contacting the MN on visited LAN's. One
|
||||
possible solution is to use HA as the default router of the
|
||||
home network.</emphasis></para>
|
||||
|
||||
<screen>
|
||||
# iwconfig eth0 mode ad-hoc essid homenet enc off
|
||||
|
@ -600,14 +617,14 @@ browse the mail archive. </para>
|
|||
# echo "0" > /proc/sys/net/ipv6/conf/eth0/accept_ra
|
||||
# echo "0" > /proc/sys/net/ipv6/conf/eth0/accept_redirects
|
||||
# ip route add ::/0 via fec0:106:2700::1
|
||||
# /etc/init.d/mobile-ipv6 start
|
||||
# /etc/init.d/mobile-ip6 start
|
||||
</screen>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para><emphasis>R:</emphasis> The (home) Router has two
|
||||
interfaces, one wireless and one line. The Router must have
|
||||
forwarding turned on.</para>
|
||||
interfaces; one wireless and one line. The Router must have
|
||||
forwarding turned on. </para>
|
||||
|
||||
<screen>
|
||||
# ifconfig eth0 inet6 add fec0:106:2300::2/64
|
||||
|
@ -623,7 +640,7 @@ browse the mail archive. </para>
|
|||
|
||||
<listitem>
|
||||
<para><emphasis>AR:</emphasis> The Access Router (on a foreign
|
||||
network) also has two interfaces, one wireless and one
|
||||
network) also has two interfaces; one wireless and one
|
||||
line. Forwarding must be turned on.</para>
|
||||
|
||||
<screen>
|
||||
|
@ -646,6 +663,122 @@ browse the mail archive. </para>
|
|||
should now be able to ping all the hosts from every host.</para>
|
||||
</sect3>
|
||||
|
||||
<!-- ############ -->
|
||||
<sect3 id="confmipv6">
|
||||
<title>Configuring Mobile IPv6</title>
|
||||
<para>The last configuration is MIPv6 settings in
|
||||
<filename>network-mip6.conf</filename>. In Debian/Slackware the
|
||||
file is found under <filename>/etc/</filename>. (RedHat the file
|
||||
is found under <filename>/etc/sysconfig/</filename>.) The file
|
||||
should be pretty self-explanatory. </para>
|
||||
|
||||
<orderedlist>
|
||||
<listitem>
|
||||
<para><emphasis>HA:</emphasis> The HA config file should
|
||||
contain these settings:</para>
|
||||
<screen>
|
||||
# cat /etc/network-mip6.conf
|
||||
|
||||
# Home Agent configuration file
|
||||
FUNCTIONALITY=ha
|
||||
DEBUGLEVEL=1
|
||||
MIN_TUNNEL_NR=1
|
||||
MAX_TUNNEL_NR=5
|
||||
TUNNEL_SITELOCAL=yes
|
||||
</screen>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para><emphasis>MN:</emphasis> The MN config file should
|
||||
look like this:</para>
|
||||
<screen>
|
||||
# cat /etc/network-mip6.conf
|
||||
|
||||
# Mobile Node configuration file
|
||||
FUNCTIONALITY=mn
|
||||
DEBUGLEVEL=1
|
||||
TUNNEL_SITELOCAL=yes
|
||||
MIN_TUNNEL_NR=1
|
||||
MAX_TUNNEL_NR=3
|
||||
HOMEDEV=mip6mnha1
|
||||
HOMEADDRESS=fec0:106:2700::4/64 # MN's home adress
|
||||
HOMEAGENT=fec0:106:2700::2/64 # HA's address
|
||||
</screen>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>Next, start mobile-IP:</para>
|
||||
<screen>
|
||||
# /etc/init.d/mobile-ip6 start
|
||||
Starting Mobile IPv6: OK
|
||||
</screen>
|
||||
</listitem>
|
||||
</orderedlist>
|
||||
|
||||
<para>You can verify that it started by doing a
|
||||
<userinput>ifconfig</userinput> on HA. If the tunnel(s) comes up,
|
||||
<varname>ip6tnl1</varname>, mobile-ip6 is started:</para>
|
||||
|
||||
<screen>
|
||||
# ifconfig
|
||||
eth1 Link encap:Ethernet HWaddr 00:02:2D:2D:DE:79
|
||||
inet6 addr: fec0:106:2700::2/64 Scope:Site
|
||||
inet6 addr: fe80::202:2dff:fe2d:de79/64 Scope:Link
|
||||
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
|
||||
RX packets:618 errors:6 dropped:6 overruns:0 frame:6
|
||||
TX packets:1485 errors:22 dropped:0 overruns:0 carrier:0
|
||||
collisions:0 txqueuelen:100
|
||||
RX bytes:87914 (85.8 KiB) TX bytes:252596 (246.6 KiB)
|
||||
Interrupt:3 Base address:0x100
|
||||
|
||||
ip6tnl1 Link encap:UNSPEC HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00 <co id="tunnel1"/>
|
||||
UP POINTOPOINT RUNNING NOARP MTU:1460 Metric:1
|
||||
RX packets:6 errors:0 dropped:0 overruns:0 frame:0
|
||||
TX packets:6 errors:0 dropped:0 overruns:0 carrier:0
|
||||
collisions:0 txqueuelen:0
|
||||
RX bytes:576 (576.0 b) TX bytes:624 (624.0 b)
|
||||
|
||||
ip6tnl2 Link encap:UNSPEC HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00 <co id="tunnel2"/>
|
||||
UP RUNNING NOARP MTU:1460 Metric:1
|
||||
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
|
||||
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
|
||||
collisions:0 txqueuelen:0
|
||||
RX bytes:0 (0.0 b) TX bytes:0 (0.0 b)
|
||||
|
||||
lo Link encap:Local Loopback
|
||||
inet addr:127.0.0.1 Mask:255.0.0.0
|
||||
inet6 addr: ::1/128 Scope:Host
|
||||
UP LOOPBACK RUNNING MTU:16436 Metric:1
|
||||
RX packets:8 errors:0 dropped:0 overruns:0 frame:0
|
||||
TX packets:8 errors:0 dropped:0 overruns:0 carrier:0
|
||||
collisions:0 txqueuelen:0
|
||||
RX bytes:560 (560.0 b) TX bytes:560 (560.0 b)
|
||||
</screen>
|
||||
|
||||
<calloutlist>
|
||||
<callout arearefs="tunnel1">
|
||||
<para>The tunnel is up and ready for connections.</para>
|
||||
</callout>
|
||||
<callout arearefs="tunnel2">
|
||||
<para>Another tunnel ready.</para>
|
||||
</callout>
|
||||
</calloutlist>
|
||||
|
||||
<para>You will also see the mipv6 kernel modules are loaded (MN):</para>
|
||||
|
||||
<screen>
|
||||
# lsmod
|
||||
Module Size Used by Not tainted
|
||||
mip6_mn 59888 0 (unused)
|
||||
ipv6_tunnel 11448 1 [mip6_mn]
|
||||
mip6_base 40728 0 [mip6_mn]
|
||||
ipv6 179764 -1 [mip6_mn ipv6_tunnel mip6_base]
|
||||
...
|
||||
</screen>
|
||||
|
||||
</sect3>
|
||||
|
||||
|
||||
<!-- ############ -->
|
||||
<sect3 id="ARradvd">
|
||||
<title>Configuring radvd on AR</title>
|
||||
|
@ -671,7 +804,8 @@ browse the mail archive. </para>
|
|||
obtain an advertisement quickly, a host sends one or more Router
|
||||
Solicitations to the all-routers multicast group.</quote> --- page 8</para>
|
||||
|
||||
<para>This is where we use RADVD.</para>
|
||||
<para>This is where we use
|
||||
<ulink url="http://v6web.litech.org/radvd/">RADVD</ulink>.</para>
|
||||
|
||||
<para>Read <ulink
|
||||
url="http://www.ietf.org/rfc/rfc2462.txt">[RFC2462]</ulink>
|
||||
|
@ -683,23 +817,24 @@ browse the mail archive. </para>
|
|||
|
||||
<screen>
|
||||
# cat /etc/radvd.conf
|
||||
interface eth1
|
||||
{
|
||||
interface eth1
|
||||
{
|
||||
AdvSendAdvert on;
|
||||
AdvIntervalOpt on;
|
||||
AdvIntervalOpt on;
|
||||
|
||||
MinRtrAdvInterval 3;
|
||||
MaxRtrAdvInterval 10;
|
||||
AdvHomeAgentFlag off;
|
||||
MinRtrAdvInterval 3;
|
||||
MaxRtrAdvInterval 10;
|
||||
AdvHomeAgentFlag off;
|
||||
|
||||
prefix fec0:106:1100::/64
|
||||
{
|
||||
AdvOnLink on;
|
||||
AdvAutonomous on;
|
||||
AdvRouterAddr on;
|
||||
};
|
||||
};
|
||||
prefix fec0:106:1100::/64
|
||||
{
|
||||
AdvOnLink on;
|
||||
AdvAutonomous on;
|
||||
AdvRouterAddr on;
|
||||
};
|
||||
};
|
||||
</screen>
|
||||
|
||||
<para>We then start it:</para>
|
||||
|
||||
<screen>
|
||||
|
@ -729,8 +864,14 @@ browse the mail archive. </para>
|
|||
AdvSourceLLAddress: 00 02 2D 54 D1 B2
|
||||
</screen>
|
||||
|
||||
<para><emphasis>Note! When using radvd on HA and enabling
|
||||
<quote>autoconf</quote> (in proc), you will also get an
|
||||
autogenerated IPv6 address on MN (which is superfluous) in
|
||||
addition to your static address:</emphasis></para>
|
||||
|
||||
</sect3>
|
||||
|
||||
<!-- ############ -->
|
||||
<sect3 id="radvdar">
|
||||
<title>Configuring radvd on HA</title>
|
||||
|
||||
|
@ -742,11 +883,11 @@ browse the mail archive. </para>
|
|||
|
||||
<screen>
|
||||
# cat /etc/radvd.conf
|
||||
interface eth1
|
||||
interface eth0
|
||||
{
|
||||
AdvSendAdvert on;
|
||||
MaxRtrAdvInterval 3;
|
||||
MinRtrAdvInterval 1;
|
||||
MinRtrAdvInterval 1;
|
||||
AdvIntervalOpt off;
|
||||
AdvHomeAgentFlag on;
|
||||
HomeAgentLifetime 10000;
|
||||
|
@ -763,57 +904,64 @@ browse the mail archive. </para>
|
|||
};
|
||||
</screen>
|
||||
|
||||
<para><emphasis>To be completed</emphasis>.</para>
|
||||
<para>Also do a <userinput>radvdump</userinput> on HA to check
|
||||
whether radvd messages are beeing sent:</para>
|
||||
|
||||
<screen>
|
||||
# radvdump
|
||||
Router advertisement from fe80::202:2dff:fe54:d11e (hoplimit 255)
|
||||
Received by interface eth0
|
||||
# Note: {Min,Max}RtrAdvInterval cannot be obtained with radvdump
|
||||
AdvCurHopLimit: 64
|
||||
AdvManagedFlag: off
|
||||
AdvOtherConfigFlag: off
|
||||
AdvHomeAgentFlag: on
|
||||
AdvReachableTime: 0
|
||||
AdvRetransTimer: 0
|
||||
Prefix fec0:106:2700::2/64
|
||||
AdvValidLifetime: 12000
|
||||
AdvPreferredLifetime: 10000
|
||||
AdvOnLink: on
|
||||
AdvAutonomous: on
|
||||
AdvRouterAddr: on
|
||||
AdvSourceLLAddress: 00 02 2D 54 D1 1E
|
||||
AdvHomeAgentInfo:
|
||||
HomeAgentPreference: 20
|
||||
HomeAgentLifetime: 1000
|
||||
</screen>
|
||||
|
||||
<screen>
|
||||
# ifconfig eth0
|
||||
eth0 Link encap:Ethernet HWaddr 00:90:7D:F3:03:1A
|
||||
inet6 addr: fec0:106:2700:0:290:7dff:fef3:31a/64 Scope:Site <co id="newaddress"/>
|
||||
inet6 addr: fec0:106:2700::4/64 Scope:Site <co id="staticadr"/>
|
||||
inet6 addr: fe80::290:7dff:fef3:31a/64 Scope:Link <co id="linkaddrs"/>
|
||||
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
|
||||
RX packets:513 errors:89 dropped:89 overruns:0 frame:85
|
||||
TX packets:140 errors:41 dropped:0 overruns:0 carrier:0
|
||||
collisions:0 txqueuelen:100
|
||||
RX bytes:56084 (54.7 Kb) TX bytes:19212 (18.7 Kb)
|
||||
Interrupt:3 Base address:0x100
|
||||
</screen>
|
||||
|
||||
<calloutlist>
|
||||
<callout arearefs="newaddress">
|
||||
<para>A new (superfluous) autogenerated address. Since we are
|
||||
setting <userinput>autoconf</userinput> in
|
||||
<userinput>/proc/sys/net/ipv6/conf/eth0/autoconf</userinput>
|
||||
to <userinput>1</userinput>, MN will generate a new adress
|
||||
combined with HA's prefix and it's own MAC address. I do not
|
||||
think is it possible to avoid having this address generated.</para>
|
||||
</callout>
|
||||
<callout arearefs="staticadr">
|
||||
<para>Our original static IPv6 address</para>
|
||||
</callout>
|
||||
<callout arearefs="linkaddrs">
|
||||
<para>The link-local address generated at boot.</para>
|
||||
</callout>
|
||||
</calloutlist>
|
||||
|
||||
</sect3>
|
||||
|
||||
<!-- ############ -->
|
||||
<sect3 id="confmipv6">
|
||||
<title>Configuring MIPv6</title>
|
||||
<para>The last configuration is MIPv6 settings in
|
||||
<filename>network-mip6.conf</filename>. In RedHat the file is
|
||||
found under
|
||||
<filename>/etc/sysconfig/network-mip6.conf</filename>. The file
|
||||
should be pretty self-explanatory. </para>
|
||||
|
||||
<screen>
|
||||
# cat /etc/sysconfig/network-mip6.conf
|
||||
|
||||
# Home Agent configuration file
|
||||
FUNCTIONALITY=ha
|
||||
DEBUGLEVEL=1
|
||||
MIN_TUNNEL_NR=1
|
||||
MAX_TUNNEL_NR=5
|
||||
TUNNEL_SITELOCAL=yes
|
||||
|
||||
# cat /etc/sysconfig/network-mip6.conf
|
||||
|
||||
# Mobile Node configuration file
|
||||
FUNCTIONALITY=mn
|
||||
DEBUGLEVEL=1
|
||||
TUNNEL_SITELOCAL=yes
|
||||
MIN_TUNNEL_NR=1
|
||||
MAX_TUNNEL_NR=3
|
||||
HOMEDEV=mip6mnha1
|
||||
HOMEADDRESS=fec0:106:2700::4/64 # MN home adress
|
||||
HOMEAGENT=fec0:106:2700::2/64 # HA's address
|
||||
</screen>
|
||||
|
||||
<para>Next, start mobile-IP:</para>
|
||||
|
||||
<screen>
|
||||
# /etc/init.d/mobile-ip6 start
|
||||
</screen>
|
||||
|
||||
<para>You can verify that it started by doing:</para>
|
||||
|
||||
<screen>
|
||||
# ifconfig
|
||||
</screen>
|
||||
|
||||
<para>If a tunnel comes up <varname>ip6tnl1</varname>, mobile-ip6 is started.</para>
|
||||
|
||||
</sect3>
|
||||
</sect2>
|
||||
</sect1>
|
||||
|
||||
|
@ -865,13 +1013,14 @@ browse the mail archive. </para>
|
|||
# tcpdump -i eth0 -vv ip6 or proto ipv6
|
||||
</screen>
|
||||
|
||||
<para>To travel to another net, you can issue the command on MN:</para>
|
||||
<para>To <quote>travel</quote> to another net, you can issue the
|
||||
command on MN:</para>
|
||||
|
||||
<screen>
|
||||
# iwconfig eth1 essid visitnet
|
||||
</screen>
|
||||
|
||||
<para>The MN is the on the other wireless network, and since it is
|
||||
<para>The MN is then on the other wireless network, and since it is
|
||||
sending out <quote>router solicitation</quote> (multicast), our AR will
|
||||
respond with it's prefix. MN will then configure itself with at new
|
||||
IPv6 address with the received prefix and it's own MAC address. If
|
||||
|
@ -879,30 +1028,36 @@ browse the mail archive. </para>
|
|||
address:</para>
|
||||
|
||||
<screen>
|
||||
# ifconfig eth0
|
||||
eth0 Link encap:Ethernet HWaddr 00:02:A5:6F:A0:8A
|
||||
inet addr:192.168.100.134 Bcast:255.255.255.255 Mask:255.255.255.255
|
||||
inet6 addr: fe80::202:a5ff:fe6f:a08a/10 Scope:Link <co id="linkaddr"/>
|
||||
inet6 addr: fec0:106:1100:0:202:a5ff:fe6f:a08a/64 Scope:Site <co id="newaddr"/>
|
||||
inet6 addr: fec0:106:2700::4/64 Scope:Site <co id="oldaddr"/>
|
||||
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
|
||||
RX packets:65 errors:44 dropped:0 overruns:0 frame:44
|
||||
TX packets:134 errors:5 dropped:0 overruns:0 carrier:0
|
||||
collisions:0 txqueuelen:100
|
||||
RX bytes:5528 (5.3 Kb) TX bytes:21272 (20.7 Kb)
|
||||
Interrupt:3 Base address:0x100
|
||||
# ifconfig eth0
|
||||
eth0 Link encap:Ethernet HWaddr 00:90:7D:F3:03:1A
|
||||
inet6 addr: fec0:106:1100:0:290:7dff:fef3:31a/64 Scope:Site <co id="newaddr"/>
|
||||
inet6 addr: fec0:106:2700:0:290:7dff:fef3:31a/64 Scope:Site <co id="superadr"/>
|
||||
inet6 addr: fec0:106:2700::4/64 Scope:Site <co id="oldaddr"/>
|
||||
inet6 addr: fe80::290:7dff:fef3:31a/64 Scope:Link <co id="linkaddr"/>
|
||||
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
|
||||
RX packets:854 errors:154 dropped:154 overruns:0 frame:148
|
||||
TX packets:293 errors:58 dropped:0 overruns:0 carrier:0
|
||||
collisions:0 txqueuelen:100
|
||||
RX bytes:96536 (94.2 Kb) TX bytes:44664 (43.6 Kb)
|
||||
Interrupt:3 Base address:0x100
|
||||
|
||||
</screen>
|
||||
<calloutlist>
|
||||
<callout arearefs="newaddr">
|
||||
<para>The new <quote>foreign</quote> address, generated by
|
||||
combining AR's prefix and MAC-address</para>
|
||||
</callout>
|
||||
<callout arearefs="superadr">
|
||||
<para>The superfluous home network address (because of HA
|
||||
radvd messages and MN autoconf set to
|
||||
<quote>true</quote>).</para>
|
||||
</callout>
|
||||
<callout arearefs="oldaddr">
|
||||
<para>The <quote>original</quote> (home) address</para>
|
||||
</callout>
|
||||
<callout arearefs="linkaddr">
|
||||
<para>The link-local address generated at boot</para>
|
||||
</callout>
|
||||
<callout arearefs="newaddr">
|
||||
<para>The new <quote>foriegn</quote> address, generated by combining AR's
|
||||
prefix and MAC-address</para>
|
||||
</callout>
|
||||
<callout arearefs="oldaddr">
|
||||
<para>The <quote>old</quote> (home) address</para>
|
||||
</callout>
|
||||
</calloutlist>
|
||||
|
||||
<para>Almost at the same time, the MN will perform a binding update
|
||||
|
@ -949,19 +1104,19 @@ browse the mail archive. </para>
|
|||
# mipdiag -l
|
||||
Mobile IPv6 Binding update list
|
||||
Recipient CN: fec0:106:2700::2
|
||||
BINDING home address: fec0:106:2700::4 care-of address: fec0:106:1100:0:202:a5ff:fe6f:a08a
|
||||
expires: 115 sequence: 0 state: 1
|
||||
delay: 3 max delay 256 callback time: 68
|
||||
BINDING home address: fec0:106:2700::4 care-of address: fec0:106:1100:0:290:7dff:fef3:31a
|
||||
expires: 936 sequence: 0 state: 1
|
||||
delay: 3 max delay 32 callback time: 736
|
||||
</screen>
|
||||
|
||||
<para>You can also verify it on HA with the statistics option
|
||||
(-s) and with the:</para>
|
||||
(-s) and with the <quote>binding cache</quote> (-c) option:</para>
|
||||
|
||||
<screen>
|
||||
# mipdiag -c
|
||||
Mobile IPv6 Binding cache
|
||||
Home Address Care-of Address Lifetime Type
|
||||
fec0:106:2700::4 fec0:106:1100:0:202:a5ff:fe6f:a08a 104 2
|
||||
Home Address Care-of Address Lifetime Type
|
||||
fec0:106:2700::4 fec0:106:1100:0:290:7dff:fef3:31a 971 2
|
||||
</screen>
|
||||
</sect2>
|
||||
|
||||
|
@ -1007,7 +1162,7 @@ browse the mail archive. </para>
|
|||
</callout>
|
||||
</calloutlist>
|
||||
|
||||
<para>You can now see the statistics have been updated:</para>
|
||||
<para>You can now see the statistics have been updated (on MN):</para>
|
||||
|
||||
<screen>
|
||||
# mipdiag -s
|
||||
|
@ -1032,6 +1187,12 @@ browse the mail archive. </para>
|
|||
::/0 :: UD 64 0 0 ip6tnl1
|
||||
....
|
||||
</screen>
|
||||
|
||||
<para>If it doesn't add a default route, you may add it manually:</para>
|
||||
|
||||
<screen>
|
||||
# ip route ::/0 via dev ip6tnl
|
||||
</screen>
|
||||
</sect2>
|
||||
|
||||
<!-- ################## -->
|
||||
|
@ -1039,7 +1200,108 @@ browse the mail archive. </para>
|
|||
<sect2 id="movement">
|
||||
<title>Travelling through several foregin LAN's</title>
|
||||
|
||||
<para>To be completed.</para>
|
||||
<para>To travel to several visited networks, is no different than
|
||||
travel to <emphasis>one</emphasis> network. The only thing you
|
||||
must have in mind is that you will generate a new address for each
|
||||
visited network.
|
||||
</para>
|
||||
|
||||
<mediaobject id="LANvisits">
|
||||
<imageobject>
|
||||
<imagedata fileref="images/lanvisits.png" format="PNG"
|
||||
width="550px" align="center" scalefit="1"/>
|
||||
</imageobject>
|
||||
<textobject>
|
||||
<phrase></phrase>
|
||||
</textobject>
|
||||
<caption>
|
||||
<para>MN travelling through severeal different LANs.</para>
|
||||
</caption>
|
||||
</mediaobject>
|
||||
|
||||
<orderedlist>
|
||||
<listitem>
|
||||
<para>MN first visits 'visitnet', as we have been through above.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>MN is then travelling from 'visitnet' to
|
||||
'visitnet2'.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>When at 'visitnet2', MN generates a new IPv6 address and
|
||||
do a new binding update to HA.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>MN then travels back home. (Se next section.)</para>
|
||||
</listitem>
|
||||
</orderedlist>
|
||||
|
||||
<para>The AR at <quote>visitnet2</quote>, is configured exactly
|
||||
as the other AR (at <quote>visitnet</quote>), except using address
|
||||
<userinput>fec0:106:1000::/64</userinput> instead of
|
||||
<userinput>fec0:106:1100::/64</userinput>.</para>
|
||||
|
||||
<para>To make the mobile node travel from 'visitnet' to
|
||||
'visitnet2', issue the command (on MN):</para>
|
||||
|
||||
<screen>
|
||||
# iwconfig eth0 essid visitnet2
|
||||
</screen>
|
||||
|
||||
<para>You will then see the MN configures itself to the new network:</para>
|
||||
|
||||
<screen>
|
||||
# ifconfig eth0
|
||||
eth1 Link encap:Ethernet HWaddr 00:90:7D:F3:03:1A
|
||||
inet6 addr: fec0:106:1000:0:290:7dff:fef3:31a/64 Scope:Site <co id="net2"/>
|
||||
inet6 addr: fec0:106:1100:0:290:7dff:fef3:31a/64 Scope:Site
|
||||
inet6 addr: fec0:106:2700:0:290:7dff:fef3:31a/64 Scope:Site
|
||||
inet6 addr: fec0:106:2700::4/64 Scope:Site
|
||||
inet6 addr: fe80::290:7dff:fef3:31a/64 Scope:Link
|
||||
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
|
||||
RX packets:1073 errors:212 dropped:212 overruns:0 frame:204
|
||||
TX packets:371 errors:72 dropped:0 overruns:0 carrier:0
|
||||
collisions:0 txqueuelen:100
|
||||
RX bytes:120340 (117.5 Kb) TX bytes:56912 (55.5 Kb)
|
||||
Interrupt:3 Base address:0x100
|
||||
</screen>
|
||||
|
||||
<calloutlist>
|
||||
<callout arearefs="net2">
|
||||
<para>The new autoconfigured address at 'visitnet2'.</para>
|
||||
</callout>
|
||||
</calloutlist>
|
||||
|
||||
<para><emphasis>Note! You may have to restart mobile-ipv6 on MN
|
||||
when coming to a new network!</emphasis></para>
|
||||
|
||||
<screen>
|
||||
# /etc/init.d/mobile-ip6 restart
|
||||
Stopping Mobile IPv6: OK
|
||||
Starting Mobile IPv6: OK
|
||||
</screen>
|
||||
|
||||
<para>The MN will then perform a new binding update to HA. Notice
|
||||
the new <quote>care-of address</quote>:</para>
|
||||
<screen>
|
||||
# mipdiag -l
|
||||
Mobile IPv6 Binding update list
|
||||
Recipient CN: fec0:106:2700::2
|
||||
BINDING home address: fec0:106:2700::4 care-of address: fec0:106:1000:0:290:7dff:fef3:31a
|
||||
expires: 973 sequence: 14 state: 1
|
||||
delay: 3 max delay 32 callback time: 773
|
||||
</screen>
|
||||
|
||||
<para>You can also see the <quote>binding cache</quote> on HA has
|
||||
been updated:</para>
|
||||
|
||||
<screen>
|
||||
# mipdiag -c
|
||||
Mobile IPv6 Binding cache
|
||||
Home Address Care-of Address Lifetime Type
|
||||
fec0:106:2700::4 fec0:106:1000:0:290:7dff:fef3:31a 943 2
|
||||
</screen>
|
||||
|
||||
</sect2>
|
||||
|
||||
<!-- ################## -->
|
||||
|
@ -1047,7 +1309,25 @@ browse the mail archive. </para>
|
|||
<sect2 id="home">
|
||||
<title>Returning home</title>
|
||||
|
||||
<para>To be completed.</para>
|
||||
<para>To make the MN return home, you can just issue the
|
||||
command:</para>
|
||||
|
||||
<screen>
|
||||
# iwconfig eth0 essid homenet
|
||||
</screen>
|
||||
|
||||
<para>The MN will know it is back home, since HA is sending out
|
||||
radvd messages with the HA-bit set (AdvHomeAgentFlag), see <xref
|
||||
linkend="radvdar"/></para>
|
||||
|
||||
<para>You can see the MN <quote>is back home</quote>, since the
|
||||
binding cache information at HA is flushed (empty):</para>
|
||||
|
||||
<screen>
|
||||
Mobile IPv6 Binding cache
|
||||
Home Address Care-of Address Lifetime Type
|
||||
</screen>
|
||||
|
||||
</sect2>
|
||||
|
||||
<!-- ################## -->
|
||||
|
@ -1061,7 +1341,8 @@ browse the mail archive. </para>
|
|||
|
||||
<mediaobject id="gnomemeeting">
|
||||
<imageobject>
|
||||
<imagedata fileref="images/gnomemeeting1.png" format="PNG" align="center" scalefit="0"/>
|
||||
<imagedata fileref="images/gnomemeeting1.png" format="PNG"
|
||||
width="250px" align="center" scalefit="1"/>
|
||||
</imageobject>
|
||||
<textobject>
|
||||
<phrase>GnomeMeeting</phrase>
|
||||
|
@ -1092,6 +1373,31 @@ browse the mail archive. </para>
|
|||
module.</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para><emphasis>Q: Is there any support for kernel 2.6.x?</emphasis></para>
|
||||
|
||||
<para>A: Here is the <ulink
|
||||
url="http://www.mipl.mediapoli.com/pipermail/mipl/2003-December/001871.html">answer
|
||||
from Henrik Petander</ulink> on the MIPL mailinglist:</para>
|
||||
|
||||
<para><quote>Here is a short overview of the status of MIPL for
|
||||
2.6 kernel series:</quote></para>
|
||||
|
||||
<para><quote>We have finished the kernel infrastructure for
|
||||
Mobile IPv6 in cooperation with the USAGI project. The
|
||||
infrastructure does route optimization, tunneling and policy
|
||||
routing.</quote></para>
|
||||
|
||||
<para><quote>We are now working on the userspace daemon which
|
||||
handles the MIPv6 signaling and controls the operation of the
|
||||
kernel part. The userspace part is also progressing
|
||||
nicely. However, the protocol logic is still missing, so there
|
||||
isn't really anything for users to test yet. We should have a
|
||||
well working and tested prototype ready and by the end of
|
||||
March.</quote></para>
|
||||
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para><emphasis>Q: Does MIPL support
|
||||
IPSec?</emphasis></para>
|
||||
|
@ -1132,6 +1438,21 @@ browse the mail archive. </para>
|
|||
network. MIPv6 from MIPL can't do this automatically.</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para><emphasis>Q: If MN has travelled through several visited
|
||||
LAN, and then returning home; the interface still has all the
|
||||
autogenerated IPv6 addresses from all the visited networks! Is
|
||||
there any way to <quote>flush/delete</quote> these
|
||||
addresses?</emphasis></para>
|
||||
|
||||
<para>A: No, I do not know of any automatic way these adresses
|
||||
can be removed, but you can delete them manually:</para>
|
||||
|
||||
<para><userinput>
|
||||
# ifconfig eth0 inet6 del <ipv6-address>
|
||||
</userinput></para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para><emphasis>Q: Host B has two interfaces with two
|
||||
different subnets assigned. When I ping B from host A, it does
|
||||
|
@ -1157,12 +1478,16 @@ browse the mail archive. </para>
|
|||
<para><emphasis>Q: How do I set a default gateway in
|
||||
IPv6?</emphasis></para>
|
||||
|
||||
<para>A: You do that using the traditional <quote>route</quote> or the newer
|
||||
<quote>IP</quote> command:</para>
|
||||
<para>A: You do that using the traditional <quote>route</quote>:</para>
|
||||
|
||||
<para><userinput>
|
||||
# route -A inet6 add default gw <ipv6-host>
|
||||
</userinput></para>
|
||||
|
||||
<para>or the newer <quote>ip</quote> command:</para>
|
||||
|
||||
<para><userinput>
|
||||
# ip route ::/0 via <ipv6-host>
|
||||
# route -A inet6 add default gw <ipv6-host>
|
||||
# ip route ::/0 via <ipv6-host>
|
||||
</userinput></para>
|
||||
</listitem>
|
||||
|
||||
|
@ -1274,7 +1599,7 @@ browse the mail archive. </para>
|
|||
<sect2 id="copyright">
|
||||
<title>Copyright and License</title>
|
||||
<para>
|
||||
Copyright © 2003 by Lars Strand. This material may
|
||||
Copyright © 2003,2004 by Lars Strand. This material may
|
||||
be distributed only subject to the terms and conditions set forth
|
||||
in the Open Publication License, v1.0 or later (the latest version
|
||||
is presently available at <ulink
|
||||
|
@ -1319,8 +1644,8 @@ browse the mail archive. </para>
|
|||
|
||||
<para>An up-to-date version of this document can be found at:</para>
|
||||
|
||||
<para> HTML: <ulink url="http://www.gnist.org/~lars/work/insc/mipv6/">
|
||||
http://www.gnist.org/~lars/work/insc/mipv6/</ulink> </para>
|
||||
<para> HTML: <ulink url="http://www.tldp.org/HOWTO/Mobile-IPv6-HOWTO/">
|
||||
http://www.tldp.org/HOWTO/Mobile-IPv6-HOWTO/</ulink> </para>
|
||||
</sect2>
|
||||
|
||||
<!-- ################## -->
|
||||
|
@ -1330,7 +1655,11 @@ browse the mail archive. </para>
|
|||
<para>Suggestions, corrections, additions wanted. Contributors
|
||||
wanted and acknowledged. Flames not wanted.</para>
|
||||
|
||||
<para>I can always be reached at <email>lars at unik no</email></para>
|
||||
<para>I can always be reached at <email>lars at unik
|
||||
no</email></para>
|
||||
|
||||
<para>Homepage: <ulink url="http://www.gnist.org/~lars">
|
||||
http://www.gnist.org/~lars</ulink></para>
|
||||
</sect2>
|
||||
|
||||
<!-- ################## -->
|
||||
|
|
Binary file not shown.
Before Width: | Height: | Size: 60 KiB After Width: | Height: | Size: 90 KiB |
Binary file not shown.
Before Width: | Height: | Size: 66 KiB After Width: | Height: | Size: 54 KiB |
Loading…
Reference in New Issue