mininet-apple-silicon
Mininet for all types of CPUs, including Apple Silicon M series, intel and AMD
10K+
Mininet SDN Environment - Apple Silicon Compatible š Overview A production-ready Docker container providing a complete Software-Defined Networking (SDN) development environment with Mininet and Ryu Controller. Specially optimized for Apple Silicon (M1/M2/M3) Macs while maintaining full AMD64 compatibility. Created by Amirreza Alibeigi - Politecnico di Milano ⨠Key Features
ā Apple Silicon Native - Fully optimized for M1/M2/M3 Macs (ARM64) ā Cross-Platform - Works seamlessly on Intel/AMD (x86_64) systems ā Pre-configured SDN Stack - Mininet + Ryu Controller ready to use ā Complete Networking Toolkit - All essential tools included ā Persistent Storage - Mount your projects for development ā Example Code - Sample controllers and topologies included
š¦ What's Included
Mininet 2.3+ - Network emulation platform (built from source) Ryu SDN Controller 4.34 - OpenFlow controller framework Open vSwitch - Virtual switching Python 3.8+ - With pip and essential libraries Network Tools - iperf, ping, curl, wget, netstat, tcpdump Development Tools - git, vim, nano, build-essential Ubuntu 20.04 LTS - Stable base system
š Quick Start bash# Pull the image docker pull amirreza225/mininet-apple-silicon:latest
docker run -it --privileged --name mininet-sdn
--network host
-v "$(pwd)/projects:/app/projects"
-p 6653:6653 -p 8080:8080
amirreza225/mininet-apple-silicon:latest
sudo mn --test pingall š» Basic Usage Examples Simple Topology Test bash# Inside container sudo mn --topo single,3 --controller remote,ip=127.0.0.1,port=6653 Run SDN Controller bash# Terminal 1: Start Ryu controller ryu-manager /app/examples/simple_controller.py
python3 /app/examples/simple_topology.py Network Performance Testing bash# Create topology with bandwidth limits sudo mn --link tc,bw=10
mininet> h1 iperf -s & mininet> h2 iperf -c h1 šļø Architecture Support
linux/arm64 - Apple Silicon M1/M2/M3 linux/amd64 - Intel/AMD x86_64
š§ Container Configuration
Privileged Mode: Required for network namespace creation Host Networking: Direct access to host interfaces Exposed Ports:
6653 - OpenFlow 8080 - REST API 8000 - Web Server
š Volume Mounts Mount your local directory to /app/projects for persistent development: bash-v "$(pwd)/projects:/app/projects" š Perfect For
SDN/OpenFlow Development Network Research & Education Mininet Tutorials & Labs Network Automation Testing Academic Projects Cross-platform SDN Development
š Documentation & Support
GitHub Repository: MinininetDocker-AppleSiliconCompatible Issues & Support: GitHub Issues Examples: Included in /app/examples/ directory
š·ļø Tags
latest - Most recent stable version v1.0 - Initial release with Apple Silicon support
ā” Why This Image? Unlike standard Mininet containers that fail on Apple Silicon, this image is specifically built and tested for ARM64 architecture while maintaining backward compatibility. Get a consistent SDN development environment across all your devices - from M3 MacBooks to cloud servers. š License MIT License - Free for educational and commercial use š¤ Contributing Contributions welcome! Please submit issues and pull requests on GitHub.
Keywords: mininet, sdn, openflow, ryu, apple-silicon, m1, m2, m3, arm64, network-emulation, docker, networking, education, research
Content type
Image
Digest
sha256:db19aacbaā¦
Size
181 MB
Last updated
9 months ago
docker pull amirreza225/mininet-apple-silicon