{"id":28170166,"url":"https://github.com/root-hbx/mobility-management-linux","last_synced_at":"2025-05-15T17:17:25.082Z","repository":{"id":281468885,"uuid":"945359060","full_name":"root-hbx/mobility-management-linux","owner":"root-hbx","description":"MIPv4 simulator on ubuntu 22.04LTS for mobility management experiments","archived":false,"fork":false,"pushed_at":"2025-03-12T09:07:50.000Z","size":1688,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-05-14T08:07:25.252Z","etag":null,"topics":["mipv4","mobilecomputing","simulator","wirelessnetwork"],"latest_commit_sha":null,"homepage":"https://root-hbx.github.io/mobility-management-linux/","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/root-hbx.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2025-03-09T08:20:49.000Z","updated_at":"2025-03-12T09:07:53.000Z","dependencies_parsed_at":"2025-03-09T10:19:31.271Z","dependency_job_id":"be96a6bc-32a0-453b-8ac3-ed0a4b699ce9","html_url":"https://github.com/root-hbx/mobility-management-linux","commit_stats":null,"previous_names":["root-hbx/mobility-management-linux"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/root-hbx%2Fmobility-management-linux","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/root-hbx%2Fmobility-management-linux/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/root-hbx%2Fmobility-management-linux/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/root-hbx%2Fmobility-management-linux/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/root-hbx","download_url":"https://codeload.github.com/root-hbx/mobility-management-linux/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254384944,"owners_count":22062422,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["mipv4","mobilecomputing","simulator","wirelessnetwork"],"created_at":"2025-05-15T17:17:24.541Z","updated_at":"2025-05-15T17:17:25.065Z","avatar_url":"https://github.com/root-hbx.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Mobility Management Simulator\n\n\u003e aka. MM-Sim\n\n- Mobility Management\n- Mobile IP: MIPv4\n\nPartial implementation of [RFC 5944](https://tools.ietf.org/html/rfc5944) Mobile IP framework for Linux Ubuntu 22.04LTS, written in Python 3.10.\n\n---\n\n🔥 *News* 🔥\n\n- [2025-0311] All functions (`start/stop/register/deregister/status`) are ready to go!\n- [2025-0310] Refactor! Refactor! Refactor!\n- [2025-0309] MM-Sim is supporting Ubuntu 22.04 LTS and Python 3.10 now\n\n## Overview\n\n🚀 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.\n\n🌟 A brief introduction of Mobile IP is provided [here](https://docs.google.com/presentation/d/1uMKtgEIESeQTkul_gu7KrXnIFI3lo5WVHKnhKJMQ3ag/edit?usp=drive_link)\n\n🎉 Following key features are supported:\n\n* Mobile IP protocol (Registration Request and Reply)\n* Mobile-Home Authentication Extension (MHAE) with  the 128-bit key `HMAC-MD5` authentication algorithm\n* Home Agent entity\n* Mobile Node entity\n* Co-located CoA mode\n* Forward and Reverse tunneling\n* GRE encapsulation\n* Identification based on timestamp\n\n⚠️ Following key features are not supported:\n\n* Agent discovery and advertisement with ICMP\n* Foreign Agent entity\n* Minimal encapsulation\n* Broadcast datagrams\n\nBasic use case that can be achieved with this implementation of MIP is shown on figure below.\n\n![](./doc/demo.png)\n\n## Quick Start\n\n**Create a venv**\n\n```sh\n# create a venv with py3.10\npython -m venv .venv\n# activate\nsource .venv/bin/activate\n```\n\n**Dependencies**\n\n```bash\n# plz make sure you are under a python venv\npip install ntplib pyroute2 netaddr\n```\n\n**Start for HA and MN**\n\n```bash\ncd mobility-management-linux\n# HOME AGENT: with sudo privilege!!!\nsudo $(which python3) -m examples.home_agent examples/ha.cfg\n# MOBILE NODE: with sudo privilege!!!\n# start\nsudo $(which python3) -m examples.mn_agent start examples/mn.cfg\n# Other args like: stop / register / deregister ...\n```\n\nCongratulates! Now HA and MN are started 👍\n\nMore commands for exploring can be checked [here](./examples/README.md).\n\n## Related Work\n\nThis repo is inspired by [mkiol's Mobile IP](https://github.com/mkiol/MobileIP) 🫡\n\nThis project, developed by [Boxuan Hu](https://bxhu2004.com/), rectifies errors in previous work and upgrades the entire project from Python 2 to Python 3, incorporating a comprehensive restructuring. 🚀\n\nModifications and additions are licensed under [MIT-License](https://en.wikipedia.org/wiki/MIT_License). For details on what changes were made, please refer to the commit history.\n\nThe project is currently stable on Linux Ubuntu 22.04 LTS and supports Python 3.10. 🌟\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Froot-hbx%2Fmobility-management-linux","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Froot-hbx%2Fmobility-management-linux","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Froot-hbx%2Fmobility-management-linux/lists"}