---
title: "Install swXtchBridge"
slug: "install-swxtchbridge"
updated: 2026-03-10T20:08:00Z
published: 2026-03-10T20:08:00Z
canonical: "docs.swxtch.io/install-swxtchbridge"
---

> ## Documentation Index
> Fetch the complete documentation index at: https://docs.swxtch.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Install swXtchBridge

> [!NOTE]
> **WHAT TO EXPECT**
> 
> **In this article**, users will learn how to install SwXtchBridge.

## Before starting

Review the [SwXtchBridge System Requirements](/v2/docs/swxtchbridge-system-requirements) to understand the prerequisites for installing swXtchBridge.

> [!NOTE]
> NOTE
> 
> There are different cloudSwXtch topologies users can deploy depending on the number of NICs they have. For more information on single-NIC, 2-NIC, 3-NIC configurations, see the [swXtchBridge Topologies](/v2/docs/swxtch-bridge-topologies) page.

### Pre-Installation

The following steps must be done prior to installing the swXtchBridge.

#### STEP ONE: Update Currently Installed OS Packages

1. Please update the installed OS packages:
  1. RHEL

```shell
dnf upgrade
```
  2. Ubuntu

```shell
apt update && apt upgrade -y
```
2. Reboot VM:

```shell
sudo reboot now
```
3. (optional) Install Docker. For quick installation guides, see our [How to Install Docker on RHEL/Ubuntu](/v2/docs/how-to-install-docker-on-rhel-and-ubuntu). Or use `--auto_deps` with the installation script.

#### STEP TWO: Gather Information from the swXtchBridge NICs

You will be asked what interfaces you want to use for control, data, and user, so you can see the names executing:

1. Run the following command where the swXtchBridge will be installed:

```shell
ip a
```
2. Look for the names and the subnets to be sure and select the proper NIC when asked. Users can also put the arguments to install in a non-interactive way. Review [swXtchBridge Topologies](/v2/docs/swxtch-bridge-topologies) to understand what NICs should be used for each option given during the installation process.

#### STEP THREE: Review Firewall Exceptions for RHEL [Optional]

The swXtchBridge installer script will automatically open the following ports:

```shell
sudo firewall-cmd --add-port=80/tcp --permanent
sudo firewall-cmd --add-port=9999/udp --permanent
sudo firewall-cmd --add-protocol=igmp --permanent
```

To open up additional ports for producing/consuming multicast traffic, use the following command:

```shell
sudo firewall-cmd --add-port=<port>/udp --permanent
sudo systemctl restart firewalld
```

> [!WARNING]
> NOTE
> 
> In some rare cases, it might be helpful to disable the firewall if the swXtchBridge installation fails, for troubleshooting purposes.

## swXtchBridge Installation

Since swXtchBridge installs via Docker, users can forgo the traditional steps of downloading dependencies. Containers allow users to support any system that meets the basic system requirements. It will only work if the cloudSwXtch instance is up and running and the bridge host has network connectivity to the cloudSwXtch instance.

> [!WARNING]
> Reminder
> 
> Before you start, review the [swXtchBridge System Requirements](/v2/docs/swxtchbridge-system-requirements) for Docker-specific RHEL and Ubuntu system requirements.

### Install steps

Follow the next steps:

1. **Open** a shell console on the machine that will host the swXtchBridge. Make sure it has connectivity to the control plane network of the cloudSwXtch.
  1. **Ping**the cloudSwXtch using the control IP or hostname:

```shell
ping <cloudSwXtch-instance-IP or instance-name>
```
    1. **If the ping fails to find the cloudSwXtch instance by name**, try pinging the IP address of the cloudSwXtch instance. If the IP works, then use the IP address in place of the name in all future commands. This can happen if the default DNS settings are not configured for the Virtual Network.
2. Run the following command, replacing **<cloudSwXtch-IP>** with the cloudSwXtch’s control IP address. Note that if this is an upgrade and there is already an existent configuration, the persist argument `--persist` can be used to keep it.

```shell
curl http://<swxtch-ip>/swx/services/install/swx-bridge-install.sh -o swx-bridge-install.sh; chmod +x swx-bridge-install.sh; ./swx-bridge-install.sh --auto_deps
```

Note that the installer will attempt to pick the correct interfaces; to ensure the selection of interfaces to be used in the install, use the arguments below. To better understand them, please refer to the [swXtchBridge Topologies](/v2/docs/swxtch-bridge-topologies) page:

`--ctrl_interface`

`--data_interface`

`--user_interface`

1. Confirm that the selected **control**NIC is the one to be used. Select Y to use the currently displayed, or N to change to to the desired NIC.

![](https://cdn.document360.io/84c5db44-f675-4f33-a980-5d3fc63073ca/Images/Documentation/swx-bridge%20install-control.png)
2. Next, the installer will ask to choose the **data**NIC.

![](https://cdn.document360.io/84c5db44-f675-4f33-a980-5d3fc63073ca/Images/Documentation/swx-bridge%20install-data.png)
3. Next, the installer will ask to choose the **user** NIC.

![](https://cdn.document360.io/84c5db44-f675-4f33-a980-5d3fc63073ca/Images/Documentation/swx-bridge%20install-user.png)

Optionally, users can use the following arguments to make the installation unattended:

```shell
-c, --ctrl_interface <interface name>   manually select control interface
-d, --data_interface <interface name>   manually select data interface
-i, --user_interface <interface name>   manually select user interface
--swxtch_ctrl_ip <ip address>           manually select ctrl ip of the swXtch
--swxtch_data_ip <ip address>           manually select data ip of the swXtch
```

The installation should be complete. Depending on the state before the installation, a reboot may be enforced.

Configuration files can be found in /var/opt/swxtch.

Logs files can be found at /var/log/swxtch. For more information on logging see [How to View cloudSwXtch and swXtchBridge Logs](/v2/docs/how-to-view-cloudswxtch-logs-troubleshooting).

Next, users can verify if the swXtchBridge appears in the [swx-top](/v2/docs/swx-top) or [wXcked Eye](/v2/docs/wxcked-eye) interface.

> [!TIP]
> Viewing swXtchBridge Container Logs
> 
> To view swXtchBridge Container logs, users will need to run the *docker logs* command. For a complete list of Docker commands, see[Helpful Docker Service Commands](/v2/docs/helpful-docker-service-commands).
