aka. MM-Sim
Partial implementation of RFC 5944 Mobile IP framework for Linux Ubuntu 22.04LTS, written in Python 3.10.
π₯ News π₯
start/stop/register/deregister/status
) are ready to go!π Mobile IP (MIP) framework allows transparent routing of IP packets to mobile nodes regardless of its current point of attachment in a the Internet. Thanks to MIP, mobile node is able to roam from an its home network to any foreign network, being always reachable through its home IP address.
π A brief introduction of Mobile IP is provided here
π Following key features are supported:
HMAC-MD5
authentication algorithmβ οΈ Following key features are not supported:
Basic use case that can be achieved with this implementation of MIP is shown on figure below.
Create a venv
# create a venv with py3.10
python -m venv .venv
# activate
source .venv/bin/activate
Dependencies
# plz make sure you are under a python venv
pip install ntplib pyroute2 netaddr
Start for HA and MN
cd mobility-management-linux
# HOME AGENT: with sudo privilege!!!
sudo $(which python3) -m examples.home_agent examples/ha.cfg
# MOBILE NODE: with sudo privilege!!!
# start
sudo $(which python3) -m examples.mn_agent start examples/mn.cfg
# Other args like: stop / register / deregister ...
Congratulates! Now HA and MN are started π
More commands for exploring can be checked here.
This repo is inspired by mkiolβs Mobile IP π«‘
This project, developed by Boxuan Hu, rectifies errors in previous work and upgrades the entire project from Python 2 to Python 3, incorporating a comprehensive restructuring. π
Modifications and additions are licensed under MIT-License. For details on what changes were made, please refer to the commit history.
The project is currently stable on Linux Ubuntu 22.04 LTS and supports Python 3.10. π