Skip to content

Commit b6c41e9

Browse files
authored
Merge pull request #223178 from b-branco/static-ip-json-upload
Assign static IPs during SIM provisioning with JSON upload
2 parents e36e9d7 + cab6c9f commit b6c41e9

File tree

4 files changed

+103
-16
lines changed

4 files changed

+103
-16
lines changed

articles/private-5g-core/modify-packet-core.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -48,8 +48,8 @@ The following list contains the data that will be lost over a packet core reinst
4848

4949
1. If you want to keep using the same credentials when signing in to [distributed tracing](distributed-tracing.md), save a copy of the current password to a secure location.
5050
1. If you want to keep using the same credentials when signing in to the [packet core dashboards](packet-core-dashboards.md), save a copy of the current password to a secure location.
51-
1. Any customizations made to the packet core dashboards won't be carried over the upgrade. Refer to [Exporting a dashboard](https://grafana.com/docs/grafana/v6.1/reference/export_import/#exporting-a-dashboard) in the Grafana documentation to save a backed-up copy of your dashboards.
52-
1. Most UEs will automatically re-register and recreate any sessions after the upgrade completes. If you have any special devices that require manual operations to recover from a packet core outage, gather a list of these UEs and their recovery steps.
51+
1. Any customizations made to the packet core dashboards won't be carried over the reinstall. Refer to [Exporting a dashboard](https://grafana.com/docs/grafana/v6.1/reference/export_import/#exporting-a-dashboard) in the Grafana documentation to save a backed-up copy of your dashboards.
52+
1. Most UEs will automatically re-register and recreate any sessions after the reinstall completes. If you have any special devices that require manual operations to recover from a packet core outage, gather a list of these UEs and their recovery steps.
5353

5454
## Select the packet core instance to modify
5555

articles/private-5g-core/provision-sims-arm-template.md

Lines changed: 49 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -35,15 +35,32 @@ To begin, collect the values in the following table for each SIM you want to pro
3535
| Value |Parameter name |
3636
|--|--|
3737
| SIM name. The SIM name must only contain alphanumeric characters, dashes, and underscores. | `simName` |
38-
| The Integrated Circuit Card Identification Number (ICCID). The ICCID identifies a specific physical SIM or eSIM, and includes information on the SIM's country and issuer. The ICCID is a unique numerical value between 19 and 20 digits in length, beginning with 89. | `integratedCircuitCardIdentifier` |
38+
| The Integrated Circuit Card Identification Number (ICCID). The ICCID identifies a specific physical SIM or eSIM, and includes information on the SIM's country and issuer. The ICCID is optional and is a unique numerical value between 19 and 20 digits in length, beginning with 89. | `integratedCircuitCardIdentifier` |
3939
| The international mobile subscriber identity (IMSI). The IMSI is a unique number (usually 15 digits) identifying a device or user in a mobile network. | `internationalMobileSubscriberIdentity` |
4040
| The Authentication Key (Ki). The Ki is a unique 128-bit value assigned to the SIM by an operator, and is used with the derived operator code (OPc) to authenticate a user. It must be a 32-character string, containing hexadecimal characters only. | `authenticationKey` |
4141
| The derived operator code (OPc). The OPc is taken from the SIM's Ki and the network's operator code (OP). The packet core instance uses it to authenticate a user using a standards-based algorithm. The OPc must be a 32-character string, containing hexadecimal characters only. | `operatorKeyCode` |
4242
| The type of device using this SIM. This value is an optional free-form string. You can use it as required to easily identify device types using the enterprise's private mobile network. | `deviceType` |
43+
| The SIM policy to assign to the SIM. This is optional, but your SIMs won't be able to use the private mobile network without an assigned SIM policy. You'll need to assign a SIM policy if you want to set static IP addresses to the SIM during provisioning. | `simPolicyId` |
44+
45+
### Collect the required information for assigning static IP addresses
46+
47+
You only need to complete this step if you've configured static IP address allocation for your packet core instance(s) and you want to assign static IP addresses to the SIMs during SIM provisioning.
48+
49+
Collect the values in the following table for each SIM you want to provision. If your private mobile network has multiple data networks and you want to assign a different static IP address for each data network to this SIM, collect the values for each IP address.
50+
51+
Each IP address must come from the pool you assigned for static IP address allocation when creating the relevant data network, as described in [Collect data network values](collect-required-information-for-a-site.md#collect-data-network-values). For more information, see [Allocate User Equipment (UE) IP address pools](complete-private-mobile-network-prerequisites.md#allocate-user-equipment-ue-ip-address-pools).
52+
53+
| Value | Parameter name |
54+
|--|--|--|
55+
| The data network that the SIM will use. | `staticIpConfiguration.attachedDataNetworkId` |
56+
| The network slice that the SIM will use. | `staticIpConfiguration.sliceId` |
57+
| The static IP address to assign to the SIM. | `staticIpConfiguration.staticIpAddress` |
4358

4459
## Prepare an array for your SIMs
4560

46-
Use the information you collected in [Collect the required information for your SIMs](#collect-the-required-information-for-your-sims) to create an array containing properties for each of the SIMs you want to provision. The following is an example of an array containing properties for two SIMs. If you don't want to assign a SIM policy to a SIM, you can delete the `simPolicyId` parameter for that SIM.
61+
Use the information you collected in [Collect the required information for your SIMs](#collect-the-required-information-for-your-sims) to create a JSON array containing properties for each of the SIMs you want to provision. The following is an example of an array containing properties for two SIMs (`SIM1` and `SIM2`).
62+
63+
If you don't want to configure static IP addresses for a SIM, delete the `staticIpConfiguration` parameter for that SIM. If your private mobile network has multiple data networks and you want to assign a different static IP address for each data network to the same SIM, you can include additional `attachedDataNetworkId`, `sliceId` and `staticIpAddress` parameters for each IP address under `staticIpConfiguration`.
4764

4865
```json
4966
[
@@ -53,15 +70,41 @@ Use the information you collected in [Collect the required information for your
5370
"internationalMobileSubscriberIdentity": "001019990010001",
5471
"authenticationKey": "00112233445566778899AABBCCDDEEFF",
5572
"operatorKeyCode": "63bfa50ee6523365ff14c1f45f88737d",
56-
"deviceType": "Cellphone"
73+
"deviceType": "Cellphone",
74+
"simPolicyId": "/subscriptions/subid/resourceGroups/contoso-rg/providers/Microsoft.MobileNetwork/mobileNetworks/contoso-network/simPolicies/SimPolicy1",
75+
"staticIpConfiguration" :[
76+
{
77+
"attachedDataNetworkId": "/subscriptions/subid/resourceGroups/contoso-rg/providers/Microsoft.MobileNetwork/packetCoreControlPlanes/site-1/packetCoreDataPlanes/site-1/attachedDataNetworks/adn1",
78+
"sliceId": "/subscriptions/subid/resourceGroups/contoso-rg/providers/Microsoft.MobileNetwork/mobileNetworks/contoso-network/slices/slice-1",
79+
"staticIpAddress": "10.132.124.54"
80+
},
81+
{
82+
"attachedDataNetworkId": "/subscriptions/subid/resourceGroups/contoso-rg/providers/Microsoft.MobileNetwork/packetCoreControlPlanes/site-1/packetCoreDataPlanes/site-1/attachedDataNetworks/adn2",
83+
"sliceId": "/subscriptions/subid/resourceGroups/contoso-rg/providers/Microsoft.MobileNetwork/mobileNetworks/contoso-network/slices/slice-1",
84+
"staticIpAddress": "10.132.124.55"
85+
}
86+
]
5787
},
5888
{
5989
"simName": "SIM2",
6090
"integratedCircuitCardIdentifier": "8922345678901234567",
6191
"internationalMobileSubscriberIdentity": "001019990010002",
6292
"authenticationKey": "11112233445566778899AABBCCDDEEFF",
6393
"operatorKeyCode": "63bfa50ee6523365ff14c1f45f88738d",
64-
"deviceType": "Sensor"
94+
"deviceType": "Sensor",
95+
"simPolicyId": "/subscriptions/subid/resourceGroups/contoso-rg/providers/Microsoft.MobileNetwork/mobileNetworks/contoso-network/simPolicies/SimPolicy2",
96+
"staticIpConfiguration" :[
97+
{
98+
"attachedDataNetworkId": "/subscriptions/subid/resourceGroups/contoso-rg/providers/Microsoft.MobileNetwork/packetCoreControlPlanes/site-1/packetCoreDataPlanes/site-1/attachedDataNetworks/adn1",
99+
"sliceId": "/subscriptions/subid/resourceGroups/contoso-rg/providers/Microsoft.MobileNetwork/mobileNetworks/contoso-network/slices/slice-1",
100+
"staticIpAddress": "10.132.124.54"
101+
},
102+
{
103+
"attachedDataNetworkId": "/subscriptions/subid/resourceGroups/contoso-rg/providers/Microsoft.MobileNetwork/packetCoreControlPlanes/site-1/packetCoreDataPlanes/site-1/attachedDataNetworks/adn2",
104+
"sliceId": "/subscriptions/subid/resourceGroups/contoso-rg/providers/Microsoft.MobileNetwork/mobileNetworks/contoso-network/slices/slice-1",
105+
"staticIpAddress": "10.132.124.55"
106+
}
107+
]
65108
}
66109
]
67110
```
@@ -92,7 +135,7 @@ The following Azure resources are defined in the template.
92135
- **Existing Mobile Network Name:** enter the name of the Mobile Network resource representing your private mobile network.
93136
- **Existing Sim Policy Name:** enter the name of the SIM policy you want to assign to the SIMs.
94137
- **Sim Group Name:** enter the name for the new SIM group.
95-
- **Sim Resources:** paste in the array you prepared in [Prepare an array for your SIMs](#prepare-an-array-for-your-sims).
138+
- **Sim Resources:** paste in the JSON array you prepared in [Prepare an array for your SIMs](#prepare-an-array-for-your-sims).
96139

97140
:::image type="content" source="media/provision-sims-arm-template/sims-arm-template-configuration-fields.png" alt-text="Screenshot of the Azure portal showing the configuration fields for the SIMs ARM template.":::
98141

@@ -119,4 +162,4 @@ The following Azure resources are defined in the template.
119162

120163
## Next steps
121164

122-
If you've configured static IP address allocation for your packet core instance(s), you may want to [assign static IP addresses to the SIMs you've provisioned](manage-existing-sims.md#assign-static-ip-addresses).
165+
If you've configured static IP address allocation for your packet core instance(s) and you haven't already assigned static IP addresses to the SIMs you've provisioned, you can do so by following the steps in [Assign static IP addresses](manage-existing-sims.md#assign-static-ip-addresses).

articles/private-5g-core/provision-sims-azure-portal.md

Lines changed: 50 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -45,18 +45,38 @@ To begin, collect the values in the following table for each SIM you want to pro
4545
| Value | Field name in Azure portal | JSON file parameter name |
4646
|--|--|--|
4747
| SIM name. The SIM name must only contain alphanumeric characters, dashes, and underscores. | **SIM name** | `simName` |
48-
| The Integrated Circuit Card Identification Number (ICCID). The ICCID identifies a specific physical SIM or eSIM, and includes information on the SIM's country and issuer. The ICCID is a unique numerical value between 19 and 20 digits in length, beginning with 89. | **ICCID** | `integratedCircuitCardIdentifier` |
48+
| The Integrated Circuit Card Identification Number (ICCID). The ICCID identifies a specific physical SIM or eSIM, and includes information on the SIM's country and issuer. The ICCID is optional and is a unique numerical value between 19 and 20 digits in length, beginning with 89. | **ICCID** | `integratedCircuitCardIdentifier` |
4949
| The international mobile subscriber identity (IMSI). The IMSI is a unique number (usually 15 digits) identifying a device or user in a mobile network. | **IMSI** | `internationalMobileSubscriberIdentity` |
5050
| The Authentication Key (Ki). The Ki is a unique 128-bit value assigned to the SIM by an operator, and is used with the derived operator code (OPc) to authenticate a user. It must be a 32-character string, containing hexadecimal characters only. | **Ki** | `authenticationKey` |
5151
| The derived operator code (OPc). The OPc is taken from the SIM's Ki and the network's operator code (OP). The packet core instance uses it to authenticate a user using a standards-based algorithm. The OPc must be a 32-character string, containing hexadecimal characters only. | **Opc** | `operatorKeyCode` |
5252
| The type of device using this SIM. This value is an optional free-form string. You can use it as required to easily identify device types using the enterprise's private mobile network. | **Device type** | `deviceType` |
53-
| The SIM policy to assign to the SIM. This is optional, but your SIMs won't be able to use the private mobile network without an assigned SIM policy. | **SIM policy** | `simPolicyId` |
53+
| The SIM policy to assign to the SIM. This is optional, but your SIMs won't be able to use the private mobile network without an assigned SIM policy. You'll need to assign a SIM policy if you want to set static IP addresses to the SIM during provisioning. | **SIM policy** | `simPolicyId` |
54+
55+
### Collect the required information for assigning static IP addresses
56+
57+
You only need to complete this step if all of the following apply:
58+
59+
- You're using a JSON file to provision your SIMs.
60+
- You've configured static IP address allocation for your packet core instance(s).
61+
- You want to assign static IP addresses to the SIMs during SIM provisioning.
62+
63+
Collect the values in the following table for each SIM you want to provision. If your private mobile network has multiple data networks and you want to assign a different static IP address for each data network to this SIM, collect the values for each IP address.
64+
65+
Each IP address must come from the pool you assigned for static IP address allocation when creating the relevant data network, as described in [Collect data network values](collect-required-information-for-a-site.md#collect-data-network-values). For more information, see [Allocate User Equipment (UE) IP address pools](complete-private-mobile-network-prerequisites.md#allocate-user-equipment-ue-ip-address-pools).
66+
67+
| Value | Field name in Azure portal | JSON file parameter name |
68+
|--|--|--|
69+
| The data network that the SIM will use. | Not applicable. | `staticIpConfiguration.attachedDataNetworkId` |
70+
| The network slice that the SIM will use. | Not applicable. | `staticIpConfiguration.sliceId` |
71+
| The static IP address to assign to the SIM. | Not applicable. | `staticIpConfiguration.staticIpAddress` |
5472

5573
## Create the JSON file
5674

5775
Only carry out this step if you decided in [Prerequisites](#prerequisites) to use a JSON file to provision your SIMs. Otherwise, you can skip to [Begin provisioning the SIMs in the Azure portal](#begin-provisioning-the-sims-in-the-azure-portal).
5876

59-
Prepare the JSON file using the information you collected for your SIMs in [Collect the required information for your SIMs](#collect-the-required-information-for-your-sims). This example file shows the required format. It contains the parameters required to provision two SIMs (`SIM1` and `SIM2`). If you don't want to assign a SIM policy to a SIM, you can delete the `simPolicyId` parameter for that SIM.
77+
Prepare the JSON file using the information you collected for your SIMs in [Collect the required information for your SIMs](#collect-the-required-information-for-your-sims). The example file below shows the required format. It contains the parameters required to provision two SIMs (`SIM1` and `SIM2`).
78+
79+
If you don't want to configure static IP addresses for a SIM, delete the `staticIpConfiguration` parameter for that SIM. If your private mobile network has multiple data networks and you want to assign a different static IP address for each data network to the same SIM, you can include additional `attachedDataNetworkId`, `sliceId` and `staticIpAddress` parameters for each IP address under `staticIpConfiguration`.
6080

6181
```json
6282
[
@@ -67,7 +87,19 @@ Prepare the JSON file using the information you collected for your SIMs in [Coll
6787
"authenticationKey": "00112233445566778899AABBCCDDEEFF",
6888
"operatorKeyCode": "63bfa50ee6523365ff14c1f45f88737d",
6989
"deviceType": "Cellphone",
70-
"simPolicyId": "/subscriptions/subid/resourceGroups/contoso-rg/providers/Microsoft.MobileNetwork/mobileNetworks/contoso-network/simPolicies/SimPolicy1"
90+
"simPolicyId": "/subscriptions/subid/resourceGroups/contoso-rg/providers/Microsoft.MobileNetwork/mobileNetworks/contoso-network/simPolicies/SimPolicy1",
91+
"staticIpConfiguration" :[
92+
{
93+
"attachedDataNetworkId": "/subscriptions/subid/resourceGroups/contoso-rg/providers/Microsoft.MobileNetwork/packetCoreControlPlanes/site-1/packetCoreDataPlanes/site-1/attachedDataNetworks/adn1",
94+
"sliceId": "/subscriptions/subid/resourceGroups/contoso-rg/providers/Microsoft.MobileNetwork/mobileNetworks/contoso-network/slices/slice-1",
95+
"staticIpAddress": "10.132.124.54"
96+
},
97+
{
98+
"attachedDataNetworkId": "/subscriptions/subid/resourceGroups/contoso-rg/providers/Microsoft.MobileNetwork/packetCoreControlPlanes/site-1/packetCoreDataPlanes/site-1/attachedDataNetworks/adn2",
99+
"sliceId": "/subscriptions/subid/resourceGroups/contoso-rg/providers/Microsoft.MobileNetwork/mobileNetworks/contoso-network/slices/slice-1",
100+
"staticIpAddress": "10.132.124.55"
101+
}
102+
]
71103
},
72104
{
73105
"simName": "SIM2",
@@ -76,7 +108,19 @@ Prepare the JSON file using the information you collected for your SIMs in [Coll
76108
"authenticationKey": "11112233445566778899AABBCCDDEEFF",
77109
"operatorKeyCode": "63bfa50ee6523365ff14c1f45f88738d",
78110
"deviceType": "Sensor",
79-
"simPolicyId": "/subscriptions/subid/resourceGroups/contoso-rg/providers/Microsoft.MobileNetwork/mobileNetworks/contoso-network/simPolicies/SimPolicy2"
111+
"simPolicyId": "/subscriptions/subid/resourceGroups/contoso-rg/providers/Microsoft.MobileNetwork/mobileNetworks/contoso-network/simPolicies/SimPolicy2",
112+
"staticIpConfiguration" :[
113+
{
114+
"attachedDataNetworkId": "/subscriptions/subid/resourceGroups/contoso-rg/providers/Microsoft.MobileNetwork/packetCoreControlPlanes/site-1/packetCoreDataPlanes/site-1/attachedDataNetworks/adn1",
115+
"sliceId": "/subscriptions/subid/resourceGroups/contoso-rg/providers/Microsoft.MobileNetwork/mobileNetworks/contoso-network/slices/slice-1",
116+
"staticIpAddress": "10.132.124.54"
117+
},
118+
{
119+
"attachedDataNetworkId": "/subscriptions/subid/resourceGroups/contoso-rg/providers/Microsoft.MobileNetwork/packetCoreControlPlanes/site-1/packetCoreDataPlanes/site-1/attachedDataNetworks/adn2",
120+
"sliceId": "/subscriptions/subid/resourceGroups/contoso-rg/providers/Microsoft.MobileNetwork/mobileNetworks/contoso-network/slices/slice-1",
121+
"staticIpAddress": "10.132.124.55"
122+
}
123+
]
80124
}
81125
]
82126
```
@@ -136,4 +180,4 @@ In this step, you'll provision SIMs using a JSON file.
136180

137181
## Next steps
138182

139-
If you've configured static IP address allocation for your packet core instance(s), you may want to [assign static IP addresses to the SIMs you've provisioned](manage-existing-sims.md#assign-static-ip-addresses).
183+
If you've configured static IP address allocation for your packet core instance(s) and you haven't already assigned static IP addresses to the SIMs you've provisioned, you can do so by following the steps in [Assign static IP addresses](manage-existing-sims.md#assign-static-ip-addresses).

0 commit comments

Comments
 (0)