MIPv6, an IPv6 mobility framework

The currently unnamed implementation (referred simply as mipv6) is an extensible and modular implementation of IPv6-based mobility mechanisms. The original objective was to develop a RFC 3775 compliant system but the platform was extended and the objectives redefined to support additional solutions such as Hierarchical MIPv6 and other local-mobility architectures such as those involved in the on-going efforts of the NETLMM IETF group.

The code here currently presented is by no means final and is part of an on-going effort. Several points such as the release of Linux Kernel 2.6.19 with MIPv6 support have subsequently delayed the release of a stable state of the code.

If you are interested in this software, please check the Support page for further ways on how to help the development.

The current code includes:

  • A RFC 3775 compliant control plane daemon.
    • Including Home Agent, Mobile Node and Correspondent Node functionality.
    • Partial IKEv1 support.
  • IPv6 Neighbor discovery (RFC 2461) and IPv6 Stateless Address Autoconfiguration (RFC 2462)
    • Both of these RFCs are partially implemented by the mobility framework due to a address configuration design decision.
    • The current model allows future mechanisms (such as SEND and others) to be implemented with minor effort.

Future plans:

  • Fully support MIPv6 with IKEv2 (draft-ietf-mip6-ikev2-ipsec-08)
  • Implement SEcure Neighbor Discovery (RFC 3971) and Cryptographically Generated Addresses (RFC 3972)
  • Support Hierarchical MIPv6 (only the MAP specific message bits are missing).
  • Follow NETLMM efforts and support the standardized solution (Proxy MIPv6 or other).

Additional implementation details will be available over time.

Contacts

For further information contact the main developer Hugo Santos (hugo {at} fivebits.net).

Source code

The latest source code is available through SVN. The patched Linux kernel that was used during development is not available as the mechanisms used by this implementation to support mobility in the kernel will be migrated to use the new facilities available from kernel version 2.6.19.

All of the code is currently licensed using the GPL v2. Contact Hugo Santos if you are interesting in special licensing.

-->