Install UERANSIM UE and gNB - caprivm/virtualization GitHub Wiki

caprivm ([email protected])

Updated: January 2, 2023

Description

This page explains how to deploy a 5G UE and RAN (gNodeB) simulator based on UERANSIM. Based on the official documentation, "UERANSIM can be considered as a 5G mobile phone and a base station in basic terms. The project can be used for testing 5G Core Network and studying 5G System". The server used for the deployment has the following sizing:

Feature Value
OS Used Ubuntu 20.04 LTS
vCPU 2
RAM (GB) 4
Disk (GB) 40
Home user ubuntu
Number of NICs 1 (ens160)
UERANSIM branch master

The contents of the page are:

Prerequisites

Before executing the step-by-step of this guide, it is important to install the next tools:

sudo apt update
sudo apt upgrade -y
sudo apt install -y make net-tools gcc g++ 
sudo apt install -y libsctp-dev lksctp-tools iproute2
sudo snap install cmake --classic

NOTE: Don't install cmake with sudo apt-get install cmake, because it installs very old version of cmake by default. You can use sudo snap install cmake --classic or build cmake directly from sources.

Environment Variables

The list of environment variables used for this implementation are summarized in the following exports:

export NODE_USER="ubuntu"
export NODE_IP="10.1.3.106"

NOTE: Replace or configure each of the variables according to your environment.

Deploy the UERANSIM

Reference: https://github.com/aligungr/UERANSIM/wiki/Installation

Clone the UERANSIM repository and build the binaries:

git clone https://github.com/aligungr/UERANSIM ~/UERANSIM
cd ~/UERANSIM
make

And that's it. After successfully compiling the project, output binaries will be copied to ~/UERANSIM/build folder. And you should see the following files:

  1. nr-gnb: Main executable for 5G gNB (RAN)
  2. nr-ue: Main executable for 5G UE
  3. nr-cli: CLI tool for 5G gNB and UE
  4. nr-binder: A tool for utilizing UE's internet connectivity.
  5. libdevbnd.so: A dynamic library for nr-binder

Run nr-gnb and nr-ue to start using UE and gNB. More details about them can be found in next steps:

Enjoy UERANSIM!

⚠️ **GitHub.com Fallback** ⚠️