To apply modifications, a new Custom Segment Profile must be created and bound to the required segment.
Create the new Custom Segment Profile (e.g., IP Discovery Profile) in the NSX Manager UI or via API.
Creating a new Segment Profile in the NSX UI
- Authenticate to the NSX Manager user interface using credentials with Network Administrator or Enterprise Administrator privileges.
- Navigate to Networking > Segments > Segment Profiles.
- Select the appropriate configuration tab corresponding to the required profile class (e.g., QoS, MAC Discovery, IP Discovery, SpoofGuard, Segment Security, Multicast).
- Click Add Profile (or the specific Add button).
- Specify a distinct Name and an optional Description for the profile to identify its operational scope.
- Configure the profile-specific operational parameters (e.g., ingress/egress rate limits for QoS, MAC limit thresholds for MAC Discovery, or ARP/ND bindings for SpoofGuard).
- Click Save to commit the configuration to the NSX management plane database (CorfuDB).
To apply the new Custom Segment Profile in NSX UI
- Authenticate to the NSX Manager user interface using credentials with Network Administrator or Enterprise Administrator privileges.
- Navigate to Networking > Segments.
- Locate the target segment requiring the profile update.
- Click the vertical ellipsis (three dots) next to the segment name and select Edit.
- Scroll to and expand the Segment Profiles section in the configuration pane.
- Locate the specific profile category to be updated (e.g., QoS, MAC Discovery, IP Discovery, SpoofGuard, Segment Security).
- Select the newly created segment profile from the corresponding drop-down menu.
- Click Save to commit the configuration to the management plane database.
- Click Close Editing to exit the segment configuration interface.
For bulk changes, API calls may be more suitable
Obtain the target segment identifier (<segment-name-or-UUID>) and the new profile identifier (<new-ip-discovery-profile-id>).
To retrieve the list of the segments, the following API call can be run
curl -k -u <username>:'<password>' -H 'Content-Type: application/json' -X GET https://<nsx-manager-ip>/policy/api/v1/infra/segments
Execute the following API call against the NSX Manager to update the IP Discovery segment profile binding:
curl -k -u <username>:'<password>' -H 'Content-Type: application/json' -X PATCH 'https://<nsx-manager-ip>/policy/api/v1/infra/segments/<segment-name-or-UUID>/segment-discovery-profile-binding-maps/default' -d '{"ip_discovery_profile_path":"/infra/ip-discovery-profiles/<new-ip-discovery-profile-id>"}'
The following API payloads provide examples for modifying MAC Discovery, Security, SpoofGuard, and QoS profile bindings on a given segment.
1. MAC Discovery Profile Binding
MAC Discovery uses the same binding map as IP Discovery. To modify the MAC Discovery profile independently, patch the segment-discovery-profile-binding-maps endpoint.
curl -k -u <username>:'<password>' -H 'Content-Type: application/json' -X PATCH 'https://<nsx-manager-ip>/policy/api/v1/infra/segments/<segment-name-or-UUID>/segment-discovery-profile-binding-maps/default' -d '{
"mac_discovery_profile_path": "/infra/mac-discovery-profiles/<new-mac-discovery-profile-id>"
}'
2. Segment Security & SpoofGuard Profile Bindings
Both Segment Security and SpoofGuard profiles are updated via the segment-security-profile-binding-maps endpoint Broadcom Developer Portal. They can be patched simultaneously or individually.
curl -k -u <username>:'<password>' -H 'Content-Type: application/json' -X PATCH 'https://<nsx-manager-ip>/policy/api/v1/infra/segments/<segment-name-or-UUID>/segment-security-profile-binding-maps/default' -d '{
"segment_security_profile_path": "/infra/segment-security-profiles/<new-security-profile-id>",
"spoofguard_profile_path": "/infra/spoofguard-profiles/<new-spoofguard-profile-id>"
}'
3. QoS Profile Binding
Quality of Service (QoS) profiles are updated via the segment-qos-profile-binding-maps endpoint Broadcom Developer Portal.
curl -k -u <username>:'<password>' -H 'Content-Type: application/json' -X PATCH 'https://<nsx-manager-ip>/policy/api/v1/infra/segments/<segment-name-or-UUID>/segment-qos-profile-binding-maps/default' -d '{
"qos_profile_path": "/infra/qos-profiles/<new-qos-profile-id>"
}'