Quickstart Guide

Dependencies

The RAN Tester UE system has the following necessary dependencies. Please install them beforehand:

Building the Containers

First, clone the core repository and its submodules:

git clone --recurse-submodules https://github.com/oran-testing/ran-tester-ue

Navigate to the directory and run the system setup script:

cd ran-tester-ue
sudo ./scripts/system_setup.sh

Next, build the necessary containers. Run the following command to pull images for the components profile defined in ~/docker-compose.yaml, which includes rtUE, Jammer, Uu agent, and Sniffer:

sudo docker compose --profile components pull

Now, pull images for the system profile, which includes Grafana, InfluxDB, and Controller:

sudo docker compose --profile system pull

Configure Security Test

The default environment is defined in the controller configuration file located at ran-tester-ue/configs/default.yaml. The following configuration is for a :hoverxref:`Sniffing attack <sniffing_attack>`.

processes:                                                  # List of all processes to start
- type: "rtue"
    id: "rtue_uhd_1"
    config_file: "configs/uhd/ue_uhd.conf"                  # Path to the configuration file for the rtUE
    rf:
        type: "b200"                                        # Type of RF device (= USRP B210)
        images_dir: "/usr/share/uhd/images/"                # Directory for RF images

- type: "sniffer"
    id: "dci_sniffer_1"
    config_file: "../5g-sniffer/MSU-Private5G184205.toml"   # Path to the configuration file for the sniffer
    rf:
        type: "b200"
        images_dir: "/usr/share/uhd/images/"

Note

The configuration used by the controller is defined in ran-tester-ue/.env as DOCKER_CONTROLLER_INIT_CONFIG:

# This points to a configuration on the host machine
DOCKER_CONTROLLER_INIT_CONFIG=configs/default.yaml

Check Network Configuration

Before starting the containers, check for potential subnet conflicts between Docker’s network and your local network interface:

ifconfig

If you notice that Docker’s default subnet conflicts with your local network subnet, you’ll need to change the Docker network configuration. Modify the TCP gateway and subnet in your Docker configuration to use a different range, then restart Docker:

sudo systemctl restart docker

After resolving any network conflicts, you can proceed to start the security test.

Start Security Test

The following command will run a jammer and UE with the requested environment, writing all data to InfluxDB and displaying metrics in real-time with Grafana:

sudo docker compose --profile system up

The Grafana dashboard can be accessed at http://localhost:3300.