fix(oai-lte-ue): unrestrict socket in nas init. Fix running with a docker Ubuntu container
Signed-off-by: Raphael Defosseux <raphael.defosseux@eurecom.fr>
This commit is contained in:
@@ -0,0 +1,272 @@
|
|||||||
|
version: '3.8'
|
||||||
|
|
||||||
|
services:
|
||||||
|
cassandra:
|
||||||
|
image: cassandra:2.1
|
||||||
|
container_name: rfsim4g-cassandra
|
||||||
|
networks:
|
||||||
|
private_net:
|
||||||
|
ipv4_address: 192.168.68.2
|
||||||
|
environment:
|
||||||
|
CASSANDRA_CLUSTER_NAME: "OAI HSS Cluster"
|
||||||
|
CASSANDRA_ENDPOINT_SNITCH: GossipingPropertyFileSnitch
|
||||||
|
healthcheck:
|
||||||
|
test: /bin/bash -c "nodetool status"
|
||||||
|
interval: 10s
|
||||||
|
timeout: 5s
|
||||||
|
retries: 5
|
||||||
|
|
||||||
|
db_init:
|
||||||
|
image: cassandra:2.1
|
||||||
|
container_name: rfsim4g-db-init
|
||||||
|
depends_on: [cassandra]
|
||||||
|
deploy:
|
||||||
|
restart_policy:
|
||||||
|
condition: on-failure
|
||||||
|
max_attempts: 10
|
||||||
|
networks:
|
||||||
|
private_net:
|
||||||
|
ipv4_address: 192.168.68.4
|
||||||
|
volumes:
|
||||||
|
- ./oai_db.cql:/home/oai_db.cql
|
||||||
|
entrypoint: /bin/bash -c "cqlsh --file /home/oai_db.cql 192.168.68.2 && echo 'OK'"
|
||||||
|
|
||||||
|
oai_hss:
|
||||||
|
image: oai-hss:develop-2021-06-14
|
||||||
|
container_name: rfsim4g-oai-hss
|
||||||
|
privileged: true
|
||||||
|
depends_on: [cassandra]
|
||||||
|
networks:
|
||||||
|
private_net:
|
||||||
|
ipv4_address: 192.168.68.3
|
||||||
|
public_net:
|
||||||
|
ipv4_address: 192.168.61.2
|
||||||
|
environment:
|
||||||
|
REALM: openairinterface.org
|
||||||
|
HSS_FQDN: hss.openairinterface.org
|
||||||
|
PREFIX: /openair-hss/etc
|
||||||
|
cassandra_Server_IP: 192.168.68.2
|
||||||
|
OP_KEY: 1006020f0a478bf6b699f15c062e42b3
|
||||||
|
LTE_K: fec86ba6eb707ed08905757b1bb44b8f
|
||||||
|
APN1: oai.ipv4
|
||||||
|
APN2: internet
|
||||||
|
FIRST_IMSI: 208960100000001
|
||||||
|
NB_USERS: 10
|
||||||
|
healthcheck:
|
||||||
|
test: /bin/bash -c "pgrep oai_hss"
|
||||||
|
interval: 10s
|
||||||
|
timeout: 5s
|
||||||
|
retries: 5
|
||||||
|
|
||||||
|
oai_mme:
|
||||||
|
image: oai-mme:production
|
||||||
|
container_name: rfsim4g-oai-mme
|
||||||
|
privileged: true
|
||||||
|
depends_on: [oai_hss]
|
||||||
|
networks:
|
||||||
|
public_net:
|
||||||
|
ipv4_address: 192.168.61.3
|
||||||
|
environment:
|
||||||
|
REALM: openairinterface.org
|
||||||
|
PREFIX: /openair-mme/etc
|
||||||
|
INSTANCE: 1
|
||||||
|
PID_DIRECTORY: /var/run
|
||||||
|
HSS_IP_ADDR: 192.168.61.2
|
||||||
|
HSS_HOSTNAME: hss
|
||||||
|
HSS_FQDN: hss.openairinterface.org
|
||||||
|
HSS_REALM: openairinterface.org
|
||||||
|
MCC: '208'
|
||||||
|
MNC: '96'
|
||||||
|
MME_GID: 32768
|
||||||
|
MME_CODE: 3
|
||||||
|
TAC_0: 1
|
||||||
|
TAC_1: 2
|
||||||
|
TAC_2: 3
|
||||||
|
MME_FQDN: mme.openairinterface.org
|
||||||
|
MME_S6A_IP_ADDR: 192.168.61.3
|
||||||
|
MME_INTERFACE_NAME_FOR_S1_MME: eth0
|
||||||
|
MME_IPV4_ADDRESS_FOR_S1_MME: 192.168.61.3
|
||||||
|
MME_INTERFACE_NAME_FOR_S11: eth0
|
||||||
|
MME_IPV4_ADDRESS_FOR_S11: 192.168.61.3
|
||||||
|
MME_INTERFACE_NAME_FOR_S10: lo
|
||||||
|
MME_IPV4_ADDRESS_FOR_S10: 127.0.0.10
|
||||||
|
OUTPUT: CONSOLE
|
||||||
|
SGW_IPV4_ADDRESS_FOR_S11_0: 192.168.61.4
|
||||||
|
PEER_MME_IPV4_ADDRESS_FOR_S10_0: 0.0.0.0
|
||||||
|
PEER_MME_IPV4_ADDRESS_FOR_S10_1: 0.0.0.0
|
||||||
|
MCC_SGW_0: '208'
|
||||||
|
MNC3_SGW_0: '096'
|
||||||
|
TAC_LB_SGW_0: '01'
|
||||||
|
TAC_HB_SGW_0: '00'
|
||||||
|
MCC_MME_0: '208'
|
||||||
|
MNC3_MME_0: '096'
|
||||||
|
TAC_LB_MME_0: '02'
|
||||||
|
TAC_HB_MME_0: '00'
|
||||||
|
MCC_MME_1: '208'
|
||||||
|
MNC3_MME_1: '096'
|
||||||
|
TAC_LB_MME_1: '03'
|
||||||
|
TAC_HB_MME_1: '00'
|
||||||
|
TAC_LB_SGW_TEST_0: '03'
|
||||||
|
TAC_HB_SGW_TEST_0: '00'
|
||||||
|
SGW_IPV4_ADDRESS_FOR_S11_TEST_0: 0.0.0.0
|
||||||
|
healthcheck:
|
||||||
|
test: /bin/bash -c "pgrep oai_mme"
|
||||||
|
interval: 10s
|
||||||
|
timeout: 5s
|
||||||
|
retries: 5
|
||||||
|
|
||||||
|
oai_spgwc:
|
||||||
|
image: oai-spgwc:develop-2021-06-14
|
||||||
|
privileged: true
|
||||||
|
depends_on: [oai_mme]
|
||||||
|
container_name: rfsim4g-oai-spgwc
|
||||||
|
networks:
|
||||||
|
public_net:
|
||||||
|
ipv4_address: 192.168.61.4
|
||||||
|
environment:
|
||||||
|
TZ: Europe/Paris
|
||||||
|
SGW_INTERFACE_NAME_FOR_S11: eth0
|
||||||
|
PGW_INTERFACE_NAME_FOR_SX: eth0
|
||||||
|
DEFAULT_DNS_IPV4_ADDRESS: 192.168.18.129
|
||||||
|
DEFAULT_DNS_SEC_IPV4_ADDRESS: 8.8.4.4
|
||||||
|
PUSH_PROTOCOL_OPTION: 'true'
|
||||||
|
APN_NI_1: oai.ipv4
|
||||||
|
APN_NI_2: oai.ipv4_2
|
||||||
|
DEFAULT_APN_NI_1: oai.ipv4
|
||||||
|
UE_IP_ADDRESS_POOL_1: '12.0.0.2 - 12.0.0.254'
|
||||||
|
UE_IP_ADDRESS_POOL_2: '12.1.1.2 - 12.1.1.254'
|
||||||
|
MCC: '208'
|
||||||
|
MNC: '96'
|
||||||
|
MNC03: '096'
|
||||||
|
TAC: 1
|
||||||
|
GW_ID: 1
|
||||||
|
REALM: openairinterface.org
|
||||||
|
healthcheck:
|
||||||
|
test: /bin/bash -c "pgrep oai_spgwc"
|
||||||
|
interval: 10s
|
||||||
|
timeout: 5s
|
||||||
|
retries: 5
|
||||||
|
|
||||||
|
oai_spgwu:
|
||||||
|
image: oai-spgwu-tiny:develop-2021-06-14
|
||||||
|
privileged: true
|
||||||
|
container_name: rfsim4g-oai-spgwu-tiny
|
||||||
|
depends_on: [oai_spgwc]
|
||||||
|
networks:
|
||||||
|
public_net:
|
||||||
|
ipv4_address: 192.168.61.5
|
||||||
|
environment:
|
||||||
|
TZ: Europe/Paris
|
||||||
|
PID_DIRECTORY: /var/run
|
||||||
|
INSTANCE: 1
|
||||||
|
SGW_INTERFACE_NAME_FOR_S1U_S12_S4_UP: eth0
|
||||||
|
PGW_INTERFACE_NAME_FOR_SGI: eth0
|
||||||
|
SGW_INTERFACE_NAME_FOR_SX: eth0
|
||||||
|
SPGWC0_IP_ADDRESS: 192.168.61.4
|
||||||
|
NETWORK_UE_IP: '12.0.0.0/24'
|
||||||
|
NETWORK_UE_NAT_OPTION: 'yes'
|
||||||
|
MCC: '208'
|
||||||
|
MNC: '96'
|
||||||
|
MNC03: '096'
|
||||||
|
TAC: 1
|
||||||
|
GW_ID: 1
|
||||||
|
REALM: openairinterface.org
|
||||||
|
healthcheck:
|
||||||
|
test: /bin/bash -c "pgrep oai_spgwu"
|
||||||
|
interval: 10s
|
||||||
|
timeout: 5s
|
||||||
|
retries: 5
|
||||||
|
|
||||||
|
flexran_rtc:
|
||||||
|
image: flexran-rtc:production
|
||||||
|
privileged: true
|
||||||
|
container_name: rfsim4g-flexran-rtc
|
||||||
|
networks:
|
||||||
|
public_net:
|
||||||
|
ipv4_address: 192.168.61.10
|
||||||
|
healthcheck:
|
||||||
|
test: /bin/bash -c "pgrep rt_controller"
|
||||||
|
interval: 10s
|
||||||
|
timeout: 5s
|
||||||
|
retries: 5
|
||||||
|
|
||||||
|
trf_gen:
|
||||||
|
image: trf-gen:production
|
||||||
|
privileged: true
|
||||||
|
container_name: rfsim4g-trf-gen
|
||||||
|
networks:
|
||||||
|
public_net:
|
||||||
|
ipv4_address: 192.168.61.11
|
||||||
|
entrypoint: /bin/bash -c "ip route add 12.0.0.0/24 via 192.168.61.5 dev eth0; sleep infinity"
|
||||||
|
healthcheck:
|
||||||
|
test: /bin/bash -c "ping -c 2 192.168.61.5"
|
||||||
|
interval: 10s
|
||||||
|
timeout: 5s
|
||||||
|
retries: 5
|
||||||
|
|
||||||
|
enb:
|
||||||
|
image: oai-enb:develop
|
||||||
|
privileged: true
|
||||||
|
container_name: rfsim4g-oai-enb
|
||||||
|
networks:
|
||||||
|
public_net:
|
||||||
|
ipv4_address: 192.168.61.20
|
||||||
|
environment:
|
||||||
|
TZ: Europe/Paris
|
||||||
|
USE_FDD_MONO: 'yes'
|
||||||
|
RFSIMULATOR: enb
|
||||||
|
ENB_NAME: eNB-rf-sim
|
||||||
|
MCC: '208'
|
||||||
|
MNC: '96'
|
||||||
|
MNC_LENGTH: 2
|
||||||
|
TAC: 1
|
||||||
|
UTRA_BAND_ID: 7
|
||||||
|
DL_FREQUENCY_IN_MHZ: 2680
|
||||||
|
UL_FREQUENCY_OFFSET_IN_MHZ: 120
|
||||||
|
NID_CELL: 10
|
||||||
|
NB_PRB: 25
|
||||||
|
MME_S1C_IP_ADDRESS: 192.168.61.3
|
||||||
|
ENB_S1C_IF_NAME: eth0
|
||||||
|
ENB_S1C_IP_ADDRESS: 192.168.61.20
|
||||||
|
ENB_S1U_IF_NAME: eth0
|
||||||
|
ENB_S1U_IP_ADDRESS: 192.168.61.20
|
||||||
|
ENB_X2_IP_ADDRESS: 192.168.61.20
|
||||||
|
FLEXRAN_ENABLED: 'no'
|
||||||
|
FLEXRAN_INTERFACE_NAME: eth0
|
||||||
|
FLEXRAN_IPV4_ADDRESS: 192.168.61.10
|
||||||
|
USE_ADDITIONAL_OPTIONS: --rfsim
|
||||||
|
|
||||||
|
oai_ue0:
|
||||||
|
image: oai-lte-ue:develop
|
||||||
|
privileged: true
|
||||||
|
container_name: rfsim4g-oai-lte-ue0
|
||||||
|
networks:
|
||||||
|
public_net:
|
||||||
|
ipv4_address: 192.168.61.30
|
||||||
|
expose:
|
||||||
|
- "10000"
|
||||||
|
environment:
|
||||||
|
TZ: Europe/Paris
|
||||||
|
HOSTNAME: oai_ue0
|
||||||
|
RFSIMULATOR: 192.168.61.20
|
||||||
|
MCC: '208'
|
||||||
|
MNC: '96'
|
||||||
|
SHORT_IMSI: '0100000001'
|
||||||
|
LTE_KEY: 'fec86ba6eb707ed08905757b1bb44b8f'
|
||||||
|
OPC: 'c42449363bbad02b66d16bc975d77cc1'
|
||||||
|
MSISDN: '001011234561010'
|
||||||
|
HPLMN: 20896
|
||||||
|
USE_ADDITIONAL_OPTIONS: --rfsim -C 2680000000 -r 25 --ue-rxgain 140 --ue-txgain 120 --nokrnmod 1
|
||||||
|
|
||||||
|
networks:
|
||||||
|
private_net:
|
||||||
|
name: rfsim4g-oai-private-net
|
||||||
|
ipam:
|
||||||
|
config:
|
||||||
|
- subnet: 192.168.68.0/26
|
||||||
|
public_net:
|
||||||
|
name: rfsim4g-oai-public-net
|
||||||
|
ipam:
|
||||||
|
config:
|
||||||
|
- subnet: 192.168.61.0/26
|
||||||
|
|
||||||
@@ -0,0 +1,93 @@
|
|||||||
|
CREATE KEYSPACE IF NOT EXISTS vhss WITH replication = {'class': 'NetworkTopologyStrategy', 'DC1': '1'};
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS vhss.users_imsi (
|
||||||
|
imsi text PRIMARY KEY,
|
||||||
|
access_restriction int,
|
||||||
|
idmmeidentity int,
|
||||||
|
imei text,
|
||||||
|
imei_sv text,
|
||||||
|
key text,
|
||||||
|
lipa_permissions text,
|
||||||
|
mme_cap int,
|
||||||
|
mmehost text,
|
||||||
|
mmeidentity_idmmeidentity int,
|
||||||
|
mmerealm text,
|
||||||
|
ms_ps_status text,
|
||||||
|
msisdn bigint,
|
||||||
|
niddvalidity text,
|
||||||
|
nir_dest_host text,
|
||||||
|
nir_dest_realm text,
|
||||||
|
opc text,
|
||||||
|
pgw_id int,
|
||||||
|
rand text,
|
||||||
|
rfsp_index varint,
|
||||||
|
sqn bigint,
|
||||||
|
subscription_data text,
|
||||||
|
ue_reachability varint,
|
||||||
|
urrp_mme varint,
|
||||||
|
user_identifier text,
|
||||||
|
visited_plmnid text);
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS vhss.msisdn_imsi (
|
||||||
|
msisdn bigint PRIMARY KEY,
|
||||||
|
imsi text
|
||||||
|
);
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS vhss.global_ids (
|
||||||
|
table_name text PRIMARY KEY,
|
||||||
|
id counter);
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS vhss.mmeidentity_host (
|
||||||
|
mmehost text PRIMARY KEY,
|
||||||
|
idmmeidentity int,
|
||||||
|
mmerealm text,
|
||||||
|
ue_reachability varint,
|
||||||
|
mmeisdn text);
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS vhss.mmeidentity (
|
||||||
|
idmmeidentity int PRIMARY KEY,
|
||||||
|
mmehost text,
|
||||||
|
mmerealm text,
|
||||||
|
ue_reachability varint,
|
||||||
|
mmeisdn text);
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS vhss.events (
|
||||||
|
scef_id text,
|
||||||
|
scef_ref_id bigint,
|
||||||
|
extid text,
|
||||||
|
monitoring_event_configuration text,
|
||||||
|
monitoring_type int,
|
||||||
|
msisdn bigint,
|
||||||
|
user_identifier text,
|
||||||
|
primary key (scef_id, scef_ref_id)
|
||||||
|
);
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS vhss.events_msisdn (
|
||||||
|
msisdn bigint,
|
||||||
|
scef_id text,
|
||||||
|
scef_ref_id bigint,
|
||||||
|
primary key (msisdn, scef_id, scef_ref_id)
|
||||||
|
);
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS vhss.events_extid (
|
||||||
|
extid text,
|
||||||
|
scef_id text,
|
||||||
|
scef_ref_id bigint,
|
||||||
|
primary key (extid, scef_id, scef_ref_id)
|
||||||
|
);
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS vhss.extid (
|
||||||
|
extid text primary key
|
||||||
|
);
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS vhss.extid_imsi (
|
||||||
|
extid text,
|
||||||
|
imsi text,
|
||||||
|
primary key (extid, imsi)
|
||||||
|
);
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS vhss.extid_imsi_xref (
|
||||||
|
imsi text,
|
||||||
|
extid text,
|
||||||
|
primary key (imsi, extid)
|
||||||
|
);
|
||||||
@@ -60,6 +60,7 @@ RUN apt-get update && \
|
|||||||
net-tools \
|
net-tools \
|
||||||
iputils-ping \
|
iputils-ping \
|
||||||
iproute2 \
|
iproute2 \
|
||||||
|
iperf \
|
||||||
libyaml-0-2 && \
|
libyaml-0-2 && \
|
||||||
# Install UHD driver from ettus ppa
|
# Install UHD driver from ettus ppa
|
||||||
# At time of writing, it is 3.14
|
# At time of writing, it is 3.14
|
||||||
|
|||||||
@@ -61,6 +61,7 @@ RUN apt-get update && \
|
|||||||
net-tools \
|
net-tools \
|
||||||
iputils-ping \
|
iputils-ping \
|
||||||
iproute2 \
|
iproute2 \
|
||||||
|
iperf \
|
||||||
libyaml-0-2 && \
|
libyaml-0-2 && \
|
||||||
# Install UHD driver from ettus ppa
|
# Install UHD driver from ettus ppa
|
||||||
# At time of writing, it is 3.14
|
# At time of writing, it is 3.14
|
||||||
|
|||||||
@@ -86,10 +86,7 @@ static parser_command_line_t nasParserCommandLine = {
|
|||||||
"-trace", "<mask>", "Logging trace level\t\t",
|
"-trace", "<mask>", "Logging trace level\t\t",
|
||||||
NAS_PARSER_DEFAULT_TRACE_LEVEL
|
NAS_PARSER_DEFAULT_TRACE_LEVEL
|
||||||
},
|
},
|
||||||
{
|
{"-uhost", "<uhost>", "User app layer's hostname\t", "NULL"},
|
||||||
"-uhost", "<uhost>", "User app layer's hostname\t",
|
|
||||||
NAS_PARSER_DEFAULT_USER_HOSTNAME
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"-nhost", "<nhost>", "Network layer's hostname\t",
|
"-nhost", "<nhost>", "Network layer's hostname\t",
|
||||||
NAS_PARSER_DEFAULT_NETWORK_HOSTNAME
|
NAS_PARSER_DEFAULT_NETWORK_HOSTNAME
|
||||||
|
|||||||
@@ -55,7 +55,7 @@ Description NAS command line parser
|
|||||||
#define NAS_PARSER_DEFAULT_UE_ID "1"
|
#define NAS_PARSER_DEFAULT_UE_ID "1"
|
||||||
|
|
||||||
/* User application layer default hostname */
|
/* User application layer default hostname */
|
||||||
#define NAS_PARSER_DEFAULT_USER_HOSTNAME "localhost"
|
#define NAS_PARSER_DEFAULT_USER_HOSTNAME NULL
|
||||||
|
|
||||||
/* User application layer default port number */
|
/* User application layer default port number */
|
||||||
#define NAS_PARSER_DEFAULT_USER_PORT_NUMBER "10000"
|
#define NAS_PARSER_DEFAULT_USER_PORT_NUMBER "10000"
|
||||||
|
|||||||
Reference in New Issue
Block a user