How to Install GNS3 on Mac Silicon (M1 / M2 / M3)

Installing GNS3 on Mac Silicon requires a few extra steps due to architecture differences. However, by using OrbStack, you can easily create a Linux environment that supports GNS3 On Mac Silicon M1/ M2 / M3. Follow the steps below to get started.


🔧 Prerequisites

Before diving in, you’ll need to download and install OrbStack — a lightweight tool for managing Linux VMs on macOS with Rosetta integration.

🧠 Tip: An OrbStack Linux VM with Rosetta is essential for running GNS3 on Apple Silicon smoothly.


🛠️ Installation Steps

1. Prepare Your Terminal Environment

First, open your preferred terminal. We’ll perform most of the setup via the command line.

Then, navigate to your Downloads folder:

cd ~/Downloads

2. Clone the GNS3 OrbStack Repository

Next, clone the required GitHub repository:

git clone https://github.com/mweisel/gns3-server-orbstack.git

Once cloned, move into the project directory:

cd gns3-server-orbstack

3. Set Up a Python Virtual Environment

After that, initialize a Python virtual environment using:

source init_venv.sh

Then, verify that Ansible was installed correctly:

ansible --version

4. Start OrbStack (If Not Already Running)

Now, check whether OrbStack is active. If it isn’t, start it:

orb status || orb start

5. Create the GNS3 Linux Machine

At this point, create the Linux VM using:

orb create --arch amd64 ubuntu:noble gns3

⏱️ This usually takes less than a minute, depending on your internet speed.

To verify it’s running, use:

orb list

Expected output:

NAME  STATE    DISTRO  VERSION  ARCH
gns3  running  ubuntu  noble    amd64

6. Test Connectivity with Ansible

Once the VM is ready, test connectivity:

ansible all -m ping

Expected result:

"ping": "pong"

7. Deploy the GNS3 On Mac Silicon M1/ M2 / M3

Now that connectivity is confirmed, deploy the GNS3 On Mac Silicon M1/ M2 / M3 using:

ansible-playbook server.yml

🛋️ Feel free to relax — this step is automated and typically takes less than 10 minutes.


8. Confirm the Installation

After deployment, confirm the server is working:

curl -s http://gns3.orb.local:3080/v2/version

9. Launch the GNS3 Web Interface

Next, open the Web UI in your browser:

open http://gns3.orb.local:3080

10. Deactivate the Python Environment

Once done, deactivate your virtual environment:

deactivate

🖥️ Final Client Configuration

To complete setup, connect your GNS3 client to the server:

  1. Launch the GNS3 client app.
  2. Go to Settings → Server → Main server tab.
  3. Enter the following:
    • Protocol: HTTP
    • Host: gns3.orb.local
    • Port: 3080
  4. Finally, click OK to save.

🔄 GNS3 Usage Workflow

Here’s how to use GNS3 going forward:

✅ Start Services

First, start OrbStack and the gns3 Linux machine:

orb status || orb start
orb start gns3

Alternatively, you can use the OrbStack GUI.

Then, launch the Web UI:

open http://gns3.orb.local:3080

🧪 Perform Lab Work

Once you’re in:

  • Start your devices in GNS3.
  • Save configurations (e.g., copy run start, wr mem).
  • Continue lab work as needed.

❌ Shut Down Properly

When finished:

  • Stop all devices in GNS3.
  • Close the GNS3 client.
  • Shut down the Linux VM:
orb stop gns3

Or do so via the OrbStack GUI.

🎉 You’re All Set!

In conclusion, you now have a fully functional GNS3 lab running on a Mac with an M1, M2, or M3 chip — all thanks to OrbStack and some smart configuration. Happy labbing!

 

Author Profile

Nickajay
Nickajay

0 Comments

Leave a Reply

Avatar placeholder