Skip to content

Instantly share code, notes, and snippets.

@wmnsk
Last active January 22, 2020 09:27
Show Gist options
  • Save wmnsk/dd27b63cefe4fc1ac8dba32b9adc8f1d to your computer and use it in GitHub Desktop.
Save wmnsk/dd27b63cefe4fc1ac8dba32b9adc8f1d to your computer and use it in GitHub Desktop.
GW Tester: Demo configuration with Docker
sudo docker network create lte-euu --driver overlay --attachable --subnet 10.0.0.0/24 --ip-range 10.0.0.128/24
sudo docker network create lte-s11 --driver overlay --internal --attachable --subnet 172.22.0.0/24 --ip-range 172.22.0.128/24
sudo docker network create lte-s1u --driver overlay --internal --attachable --subnet 172.21.0.0/24 --ip-range 172.21.0.128/24
sudo docker network create lte-s1c --driver overlay --internal --attachable --subnet 172.21.1.0/24 --ip-range 172.21.1.128/24
sudo docker network create lte-s5u --driver overlay --internal --attachable --subnet 172.25.0.0/24 --ip-range 172.25.0.128/24
sudo docker network create lte-s5c --driver overlay --internal --attachable --subnet 172.25.1.0/24 --ip-range 172.25.1.128/24
sudo docker network create lte-sgi --driver overlay --internal --attachable --subnet 10.0.1.0/24 --ip-range 10.0.1.128/24
# images wmnsk/foo are created based on ubuntu:18.04, manually put binaries and config files.
sudo docker run --name enb --privileged -it wmnsk/enb:0.1
sudo docker run --name mme --privileged -it wmnsk/mme:0.1
sudo docker run --name sgw --privileged -it wmnsk/sgw:0.1
sudo docker run --name pgw --privileged -it wmnsk/pgw:0.1
sudo docker run --name sgi-server --privileged -it wmnsk/sgi-server:0.1
sudo docker run --name ue-ext --privileged -it wmnsk/ue-ext:0.1
sudo docker network connect lte-euu --ip 10.0.0.254 enb
sudo docker network connect lte-s1u --ip 172.21.0.11 enb
sudo docker network connect lte-s1c --ip 172.21.1.11 enb
sudo docker network connect lte-s11 --ip 172.22.0.12 mme
sudo docker network connect lte-s1c --ip 172.21.1.12 mme
sudo docker network connect lte-s11 --ip 172.22.0.13 sgw
sudo docker network connect lte-s1u --ip 172.21.0.13 sgw
sudo docker network connect lte-s5u --ip 172.25.0.13 sgw
sudo docker network connect lte-s5c --ip 172.25.1.13 sgw
sudo docker network connect lte-s5u --ip 172.25.0.14 pgw
sudo docker network connect lte-s5c --ip 172.25.1.14 pgw
sudo docker network connect lte-sgi --ip 10.0.1.254 pgw
mcc: "001"
mnc: "01"
rat_type: 6 # E-UTRAN
tai: 0x0001
eci: 0x00000001
local_addresses:
s1c_ip: "172.21.1.11"
s1u_addr: "172.21.0.11:2152"
mme_addr: "172.21.1.12:36412"
prom_addr: "172.17.0.11:58080"
subscribers:
- imsi: "001010000000001"
msisdn: "814000000001"
imeisv: "1234500000001"
src_ip: "10.0.0.201"
i_tei: 0
type: "external"
euu_if_name: "eth1"
http_url: ""
reattach_on_reload: false
- imsi: "001010000000002"
msisdn: "814000000002"
imeisv: "1234500000002"
src_ip: "10.0.0.202"
i_tei: 0
type: "http_get"
euu_if_name: "eth1"
http_url: "http://10.0.1.201/"
reattach_on_reload: false
- imsi: "001010000000003"
msisdn: "814000000003"
imeisv: "1234500000003"
src_ip: "10.0.0.203"
i_tei: 0
type: "http_get"
euu_if_name: "eth1"
http_url: "http://10.0.1.201/"
reattach_on_reload: false
- imsi: "001010000000004"
msisdn: "814000000004"
imeisv: "1234500000004"
src_ip: "10.0.0.204"
i_tei: 0
type: "http_get"
euu_if_name: "eth1"
http_url: "http://10.0.1.201/"
reattach_on_reload: false
- imsi: "001010000000005"
msisdn: "814000000005"
imeisv: "1234500000005"
src_ip: "10.0.0.205"
i_tei: 0
type: "http_get"
euu_if_name: "eth1"
http_url: "http://10.0.1.201/"
reattach_on_reload: false
mcc: "001"
mnc: "01"
apn: "gw-tester.go-gtp.example"
local_addresses:
s1c_addr: "172.21.1.12:36412"
s11_addr: "172.22.0.12:2123"
sgw_s11_ip: "172.22.0.13"
pgw_s5c_ip: "172.25.1.14"
prom_addr: "172.17.0.12:58080"
local_addresses:
s5c_addr: "172.25.1.14:2123"
s5u_addr: "172.25.0.14:2152"
sgi_if_name: "eth3"
route_subnet: "10.0.1.0/24"
prom_addr: "172.17.0.14:58080"
local_addresses:
s11_addr: "172.22.0.13:2123"
s1u_addr: "172.21.0.13:2152"
s5c_addr: "172.25.1.13:2123"
s5u_addr: "172.25.0.13:2152"
prom_addr: "172.17.0.13:58080"
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment