[sdnog] mobility in IPv4 and ipv6

Jan Zorz - ISOC zorz at isoc.org
Wed Jan 28 12:48:50 SAST 2015

On 28/01/15 10:40, khansaa abdalla wrote:
> Hi all ,,
> I am trying to understand the tunnels in mobile ipv4 & ipv6. Those
> tunnels are static tunnels right? You have to configure them manually
> from the Home Agent to the Foreign Agent in mobile IPv4 right ?


It's a bit more complicated that that under the bonnet, but from 
operational point of view all this happens automatically once you 
configure HA (Home Agent) and MN (Mobile Node) properly.

I was part of the project team with Nokia when we developed the working 
prototypes of DSMIP6-TLS, back then on N900 phone and Linux server as HA 
and it worked very well. You can see the live-demo of that system that I 
did in Paris (World IPv6 Congress) in 2012 :)


So, how does it work? You install HA on Linux server somewhere and 
configure it, the biggest part of config is to put usernames and 
passwords and "Home Address" numbers in configuration. When you have the 
HA setup and you know where to connect you get the MN and configure the 
daemon that takes care of that end of a tunnel. What you need is a HA 
IPv4/IPv6 address and username/password. The rest is magic.

How does the magic work? It's complicated, but as a user you'll not be 
exposed to that. The tunnel establishes (over IPv6 or IPv4, depending 
what type of transport you have available) and both protocols are 
carried over it - IPv4 and IPv6. Within negotiation process in the 
protocol HA tells you your Home Address (v4 and v6) and you communicate 
back CoA (Care of Address), that is your local IPv6 address (or IPv4 if 
public) from which you send packets. You can have multiple CoA, in the 
last version of our prototype we had ability to register multiple CoA 
and be connected over multiple interfaces at the same time (3g, wifi, 
...) and also we had flow-mobility - the ability to specify which flows 
goes over which transport (if available).

When a CN (corresponding node) starts talking to your Home address, 
packets go to HA and then into the tunnel towards your MN. What MN does 
is that it sends back a packet with RH2 header, telling the other node 
that communication can be established directly to his IPv6 CoA (and also 
sends a binding update with same information) - and if CN is able to 
understand RH2 header and/or binding update then communication can be 
established directly, otherwise packets are sent to HA - tunnel - MN.

When you change the network the tunnel is automatically re-established 
and the whole thing just works.

Does this answer your question?

> In
> mobile IPv6, the tunnel is from the Home Agent to the Mobile Agent
> directly. So how is the tunnel built? Do I have to manually enable from
> my laptop when I am in the Foreign network?

No. See above ;)

Cheers, Jan Zorz

Jan Zorz
Internet Society
mailto:<zorz at isoc.org>
"Engineering is always positive in results..." N. Tesla

More information about the sdnog mailing list