Setup Core Network
You will be using the Alef Mobile Network API to carry out the tasks in this section. This is a basic config, Refer to the API reference documentation to learn more about the API and explore the full schema.
Configure your Classic Mobile Core
Required information
- name: Name for the Mobile Core, needs to be unique in your account (Do not use spaces in the name).
- generation: 4G or 5G (4G is default).
- mode: "Classic" (More info onother modes here: Enterprise Connector).
- mobile-network-name: The network display name on the device. Default is "AlefMobile".
- mme: MME IP address and name for the Mobile Core. See below for more details.
- plmn: The PLMN details for your Mobile Core. See below for more details.
- apn: The APN details for your Mobile Core. See below for more details.
- dns-list: The DNS list for the User Equipment. Defaults to public DNS servers, replace with your own Enterprise DNS servers if needed.
- enb-ip-subnet: The IP subnet that is used for all eNBs (Radios) that will work with the Mobile Core.
Please contact Alef Support if you have any questions related to these items.
You will use the following POST
request body with the /connectivity/v2/networks/mobile-core
endpoint to create and configure your Mobile Core.
You can use the following GET
request body with the /connectivity/v2/networks/mobile-core/:id
endpoint to retrieve your Mobile Core provision status and information.
Expand here to see the mobile core POST
request body.
{
"name": "My-First-EPC",
"generation": "4G",
"mode": "Classic",
"plmn": [
{
"mcc": "315",
"mnc": "010",
"tac": "[1-3]"
}
],
"mobile-network-name": "AlefMobile",
"mme": {
"ip-addr": "20.20.20.1",
"name": "my-first-mme"
},
"apn": [
{
"dnn": "internet",
"ueip": "192.168.1.0/24",
"gateway": "192.168.1.1"
}
],
"dns-list": [
{
"dns": "8.8.8.8"
},
{
"dns": "1.1.1.1"
}
],
"enb-ip-subnet": "168.53.1.0/24"
}
The following section is a breakdown of the request:
Mobile Core POST
request guide
MME
The mme
is the component that the radio network communicates with for session signaling. Alef offers the option to select your
own IP address for the MME. The IP address needs to be routable from the network with the radio's.
You can pick an IP in the eNB subnet for this, as long as it is routed to the Alef platform.
Note that local loop IPs are not permitted.
"mme": {
"ip-addr": "20.20.20.1",
"name": "my-first-mme",
},
PLMN
The plmn
is the globally unique ID of your private mobile network and consists of 2 values: mcc
and nmc
.
For CBRS networks the standard values are 315 and 010; for 'private' networks other values like 999/111 and 001/001 are also allowed.
However check with your device provider if those are supported by the devices.
PLMN values that are in use by public mobile networks can not be provisioned.
More info on PLMN
When specifying the PLMN, three values are requested: the mcc
and mnc
, as well as the TAC (Tracking Area Code) values.
The TAC values or range specified here can be used to assign to a Mobile Gateway.
All mobile gateways in your network need to have an unique TAC code that is within the range specified here.
These TAC codes are also used in your RAN to configure the Radios and allow them to connect to the correct Mobile Gateway.
"plmn": [
{
"mcc": "315",
"mnc": "010",
"tac": "[1-3]"
}
],
APN
The apn
is used to assign the right IP address to the User Equipment. The default APN is internet
and uses the 192.128.1.0/24
IP range.
The Mobile Core can be configured with a different apn name dnn
and IP range. The gateway is optional and will default to the first IP address of the range.
"apn": [
{
"dnn": "internet",
"ueip": "192.168.1.0/24",
"gateway": "192.168.1.1"
}
],
Examples
All APIs require the user to be authenticated with their username/password.
The JWT token needs to be added to the header as Bearer
of each call.
Expand here to see examples for Mobile Core POST
and GET
requests and responses.
- Curl POST
- Curl GET
Request
curl -X 'POST' 'https://api.alefedge.com/connectivity/v2/networks/mobile-core' \
-H 'Authorization: Bearer <JWT TOKEN>' \
-H 'accept: application/json' \
-H 'Content-Type: application/json' \
-d ' {
"name": "My-First-EPC",
"generation": "4G",
"mode": "Classic",
"plmn": [
{
"mcc": "315",
"mnc": "010",
"tac": "[1-3]"
}
],
"mobile-network-name": "AlefMobile",
"mme": {
"ip-addr": "20.20.20.1",
"name": "my-first-mme"
},
"apn": [
{
"dnn": "internet",
"ueip": "192.168.1.0/24",
"gateway": "192.168.1.1"
}
],
"dns-list": [
{
"dns": "8.8.8.8"
},
{
"dns": "1.1.1.1"
}
],
"enb-ip-subnet": "168.53.1.0/24"
}'
Response
{
"generation": "4G",
"mode": "Classic",
"mobile-network-name": "AlefMobile",
"dns-list": [
{
"dns": "8.8.8.8"
},
{
"dns": "1.1.1.1"
}
],
"_id": "66c75ae54333dcc27fbce394",
"account_id": "66992fb6310e8d77a42ed77a",
"name": "My-First-EPC",
"plmn": [
{
"mcc": "315",
"mnc": "010",
"tac": "[1-3]"
}
],
"mme": {
"ip-addr": "20.20.20.1",
"name": "my-first-mme"
},
"apn": [
{
"dnn": "internet",
"ueip": "192.168.1.0/24",
"gateway": "192.168.1.1"
}
],
"enb-ip-subnet": "168.53.1.0/24",
"__v": 0,
}
Request
curl -X 'GET' 'https://api.alefedge.com/connectivity/v2/networks/mobile-core/66c75ae54333dcc27fbce394'
-H 'Authorization: Bearer <JWT TOKEN>' \
-H 'accept: application/json'
Response
{
"generation": "4G",
"mode": "Classic",
"mobile-network-name": "AlefMobile",
"dns-list": [
{
"dns": "8.8.8.8"
},
{
"dns": "1.1.1.1"
}
],
"_id": "66c75ae54333dcc27fbce394",
"account_id": "66992fb6310e8d77a42ed77a",
"name": "My-First-EPC",
"plmn": [
{
"mcc": "315",
"mnc": "010",
"tac": "[1-3]"
}
],
"mme": {
"ip-addr": "20.20.20.1",
"name": "my-first-mme"
},
"apn": [
{
"dnn": "internet",
"ueip": "192.168.1.0/24",
"gateway": "192.168.1.1"
}
],
"enb-ip-subnet": "168.53.1.0/24",
"__v": 0,
"provison_state": {
"provision_status": "provisioned"
}
}
Take a note of the returned object ID _id
for your Mobile Core, as you will need it in the following steps. It will be an alphanumeric string, something like 66993642310e8d77a42ed780
.