Configuring HMM
The Host Mobility Manager (HMM) tracks end-host movement by discovering the end host and propagating the end-host reachability information to the other switches (leaf switches) in the fabric.
This section contains payload examples to demonstrate how to use the NX-API REST API to configure HMM on the Cisco Nexus 3000 and 9000 Series switches.
Enabling BGP EVPN
Enabling BGP EVPN
POST http://<IP_Address>/api/node/mo/sys/fm/evpn.json
{
"fmEvpn": {
"attributes": {
"adminSt": "enabled"
}
}
}
This example enables BGP EVPN control plane on the switch.
CLI Command
The CLI command below is the equivalent to the payload example displayed in the pane on the right.
[no] nv overlay evpn
Note: The property information for this example was added in Release 9.3(3).
Verifying a DME Configuration
The following table contains the distinguished name (DN) for each managed object (MO) in the DME payload. Issue a GET request using the DN to verify the configuration was posted or to get information about the configured properties of a particular object.
MO | DN |
---|---|
fmEvpn | sys/fm/evpn |
fmEvpn Properties
The following table contains information about the fmEvpn properties in the DME payload. For more information about the properties and MOs, see the NX-API DME Model Reference linked in the Related Documentation section below.
Property Name | Data Type | Description | Values |
---|---|---|---|
adminSt | fm:AdminState (scalar:Enum8) | Admin status | SELECTION: 1 - enabled 2 - disabled DEFAULT: disabled |
Related Documentation
For other CLI options, see the Cisco Nexus 9000 Series NX-OS Command Reference:
See the NX-API DME Model Reference for detailed information about classes and attributes described in the payload:
https://developer.cisco.com/site/nx-os/docs/nexus-model-reference/
For information about using the payloads, see the Cisco Nexus 9000 Series NX-OS Programmability Guide:
Enabling Fabric Forwarding
Enabling Fabric Forwarding
POST http://<IP_Address>/api/node/mo/sys/fm/hmm.json
{
"fmHmm": {
"attributes": {
"adminSt": "enabled"
}
}
}
This example enables the fabric forwarding feature.
CLI Command
The CLI command below is the equivalent to the payload example displayed in the pane on the right.
[no] feature fabric forwarding
Note: The property information for this example was added in Release 9.3(3).
Verifying a DME Configuration
The following table contains the distinguished name (DN) for each managed object (MO) in the DME payload. Issue a GET request using the DN to verify the configuration was posted or to get information about the configured properties of a particular object.
MO | DN |
---|---|
fmHmm | sys/fm/hmm |
fmHmm Properties
The following table contains information about the fmHmm properties in the DME payload. For more information about the properties and MOs, see the NX-API DME Model Reference linked in the Related Documentation section below.
Property Name | Data Type | Description | Values |
---|---|---|---|
adminSt | fm:AdminState (scalar:Enum8) | Admin status | SELECTION: 1 - enabled 2 - disabled DEFAULT: disabled |
Related Documentation
For other CLI options, see the Cisco Nexus 9000 Series NX-OS Command Reference:
See the NX-API DME Model Reference for detailed information about classes and attributes described in the payload:
https://developer.cisco.com/site/nx-os/docs/nexus-model-reference/
For information about using the payloads, see the Cisco Nexus 9000 Series NX-OS Programmability Guide:
Configuring an AnyCast Gateway
Configuring an AnyCast Gateway
POST http://<IP_Address>/api/node/mo/sys/hmm/fwdinst.json
{
"hmmFwdInst": {
"attributes": {
"amac": "11:22:33:44:55:66",
"limitVlanMac": "1024"
}
}
}
This example configures an Anycast Gateway.
CLI Commands
The CLI commands and options listed below are the equivalent to the payload example displayed in the pane on the right.
[no] fabric forwarding anycast-gateway-mac <mac>
[no] fabric forwarding limit-vlan-mac <max-limit>
Note: The property information for this example was added in Release 9.3(3).
Verifying a DME Configuration
The following table contains the distinguished name (DN) for each managed object (MO) in the DME payload. Issue a GET request using the DN to verify the configuration was posted or to get information about the configured properties of a particular object.
MO | DN |
---|---|
hmmFwdInst | sys/hmm/fwdinst |
hmmFwdInst Properties
The following table contains information about the hmmFwdInst properties in the DME payload. For more information about the properties and MOs, see the NX-API DME Model Reference linked in the Related Documentation section below.
Property Name | Data Type | Description | Values |
---|---|---|---|
amac | address:MAC | Anycast Gateway MAC address. | Value must match MM:MM:MM:SS:SS:SS format |
limitVlanMac | scalar:Uint16 | This is to limit the number of hosts learnt by HMM in the same subnet with same MAC information. | RANGE: [5 , 2048] DEFAULT: 2048 |
Related Documentation
For other CLI options, see the Cisco Nexus 9000 Series NX-OS Command Reference:
See the NX-API DME Model Reference for detailed information about classes and attributes described in the payload:
https://developer.cisco.com/site/nx-os/docs/nexus-model-reference/
For information about using the payloads, see the Cisco Nexus 9000 Series NX-OS Programmability Guide:
Enabling Duplicate Detection for IP and MAC Addresses
Enabling Duplicate Detection for IP and MAC Addresses
POST http://<IP_Address>/api/node/mo/sys/hmm/fwdinst/evpn.json
{
"hmmFwdEvpn": {
"attributes": {
"ddHmmoves": "25",
"ddHnsecs": "180"
}
}
}
CLI Commands
The CLI commands and options listed below are the equivalent to the payload example displayed in the pane on the right.
[no] fabric forwarding dup-host-ip-addr-detection <mmoves> <nsecs>
[no] fabric forwarding dup-host-recovery-timer <timeout> recover-count <count>
Note: The property information for this example was added in Release 9.3(3).
Verifying a DME Configuration
The following table contains the distinguished name (DN) for each managed object (MO) in the DME payload. Issue a GET request using the DN to verify the configuration was posted or to get information about the configured properties of a particular object.
MO | DN |
---|---|
hmmFwdEvpn | sys/hmm/fwdinst/evpn |
hmmFwdEvpn Properties
The following table contains information about the hmmFwdEvpn properties in the DME payload. For more information about the properties and MOs, see the NX-API DME Model Reference linked in the Related Documentation section below.
Property Name | Data Type | Description | Values |
---|---|---|---|
ddHmmoves | scalar:Uint16 | User Setting to mark a host as duplicate if it does ddHmmoves number of moves. | RANGE: [1 , 1000] DEFAULT: 5 |
ddHnsecs | scalar:Uint16 | User Setting to mark a host as duplicate if it does ddHmmoves moves in ddHnsecs seconds. | RANGE: [2 , 36000] DEFAULT: 180 |
Related Documentation
For other CLI options, see the Cisco Nexus 9000 Series NX-OS Command Reference:
See the NX-API DME Model Reference for detailed information about classes and attributes described in the payload:
https://developer.cisco.com/site/nx-os/docs/nexus-model-reference/
For information about using the payloads, see the Cisco Nexus 9000 Series NX-OS Programmability Guide:
Creating an SVI as an Anycast Gateway
Creating an SVI as an Anycast Gateway
POST http://<IP_Address>/api/node/mo/sys.json
{
"topSystem": {
"children": [
{
"interfaceEntity": {
"children": [
{
"sviIf": {
"attributes": {
"id": "vlan10"
}}}]}},
{
"hmmEntity": {
"children": [
{
"hmmFwdInst": {
"children": [
{
"hmmFwdIf": {
"attributes": {
"id": "vlan10",
"mode": "anycastGW"
}}}]}}]}},
{
"fmEntity": {
"children": [
{
"fmInterfaceVlan": {
"attributes": {
"adminSt": "enabled"
}}}]}}]}}
This example enables the VLAN network interface feature, creates an SVI, and associates the SVI with the Anycast Gateway.
CLI Commands
The CLI commands and options listed below are the equivalent to the payload example displayed in the pane on the right.
[no] feature interface-vlan
[no] interface vlan 10
[no] fabric forwarding mode anycast-gateway
Note: The property information for this example was added in Release 9.3(3).
Verifying a DME Configuration
The following table contains the distinguished name (DN) for each managed object (MO) in the DME payload. Issue a GET request using the DN to verify the configuration was posted or to get information about the configured properties of a particular object.
MO | DN |
---|---|
topSystem | sys |
interfaceEntity | sys/intf |
sviIf | sys/intf/svi-{[id]} |
hmmEntity | sys/hmm |
hmmFwdInst | sys/hmm/fwdinst |
hmmFwdIf | sys/hmm/fwdinst/if-{[id]} |
fmEntity | sys/fm |
fmInterfaceVlan | sys/fm/ifvlan |
sviIf Properties
The following table contains information about the sviIf properties in the DME payload. For more information about the properties and MOs, see the NX-API DME Model Reference linked in the Related Documentation section below.
Property Name | Data Type | Description | Values |
---|---|---|---|
id | nw:IfId (base:IfIndex) | An identifier . | Must match first field in the output of `show intf brief`. Example: Eth1/1 or Vlan100 |
hmmFwdIf Properties
The following table contains information about the hmmFwdIf properties in the DME payload. For more information about the properties and MOs, see the NX-API DME Model Reference linked in the Related Documentation section below.
Property Name | Data Type | Description | Values |
---|---|---|---|
id | nw:IfId (base:IfIndex) | An identifier . | Must match first field in the output of `show intf brief`. Example: Eth1/1 or Vlan100 |
mode | hmm:FwdMode (scalar:Enum8) | HMM Fabric Forwarding mode information for the interface. | SELECTION: 0 - standard 1 - anycastGW 2 - proxyGW DEFAULT: standard |
fmInterfaceVlan Properties
The following table contains information about the fmInterfaceVlan properties in the DME payload. For more information about the properties and MOs, see the NX-API DME Model Reference linked in the Related Documentation section below.
Property Name | Data Type | Description | Values |
---|---|---|---|
adminSt | fm:AdminState (scalar:Enum8) | Admin status | SELECTION: 1 - enabled 2 - disabled DEFAULT: disabled |
Related Documentation
For other CLI options, see the Cisco Nexus 9000 Series NX-OS Command Reference:
See the NX-API DME Model Reference for detailed information about classes and attributes described in the payload:
https://developer.cisco.com/site/nx-os/docs/nexus-model-reference/
For information about using the payloads, see the Cisco Nexus 9000 Series NX-OS Programmability Guide:
Configuring Fabric Forwarding Protocol
Configuring Fabric Forwarding Protocol
POST http://<mgmt0_IP>/api/mo/sys/hmm.json
{
"hmmEntity": {
"children": [
{
"hmmFwdInst": {
"attributes": {
"adminDist": "159"
}}}]}}
{
imdata:[]
}
<System>
<hmm-items>
<fwdinst-items>
<adminDist>159</adminDist>
</fwdinst-items>
</hmm-items>
</System>
Note: This example was added in Release 9.3(3).
CLI Commands
The CLI commands are equivalent to the payload examples displayed in the pane on the right. Click the DME tab in the top-left corner of the right pane to view the JSON payload. Click the YANG tab to view the XML payload.
fabric forwarding admin-distance 159
Verifying a DME Configuration
The following table contains the distinguished name (DN) for each managed object (MO) in the DME payload. Issue a GET request using the DN to verify the configuration was posted or to get information about the configured properties of a particular object.
MO | DN |
---|---|
hmmEntity | sys/hmm |
hmmFwdInst | sys/hmm/fwdinst |
hmmFwdInst Properties
The following table contains information about the hmmFwdInst properties in the DME payload. For more information about the properties and MOs, see the NX-API DME Model Reference linked in the Related Documentation section below.
Property Name | Data Type | Description | Values |
---|---|---|---|
adminDist | scalar:Uint16 | Set the administrative distance for HMM | RANGE: [1 , 255] DEFAULT: 190 |
Related Documentation
For other CLI options, see the Cisco Nexus 9000 Series NX-OS Command Reference:
See the NX-API DME Model Reference for detailed information about classes and attributes described in the payload:
https://developer.cisco.com/site/nx-os/docs/nexus-model-reference/
For information about using the payloads, see the Cisco Nexus 9000 Series NX-OS Programmability Guide:
Deleting Fabric Forwarding Protocol
Deleting Fabric Forwarding Protocol
POST http://<mgmt0_IP>/api/mo/sys/hmm.json
{
"hmmEntity": {
"children": [
{
"hmmFwdInst": {
"attributes": {
"adminDist": "190"
}}}]}}
{
imdata:[]
}
<System>
<hmm-items>
<fwdinst-items>
<adminDist>190</adminDist>
</fwdinst-items>
</hmm-items>
</System>
Note: This example was added in Release 9.3(3).
CLI Commands
The CLI commands are equivalent to the payload examples displayed in the pane on the right. Click the DME tab in the top-left corner of the right pane to view the JSON payload. Click the YANG tab to view the XML payload.
no fabric forwarding admin-distance 159
Verifying a DME Configuration
The following table contains the distinguished name (DN) for each managed object (MO) in the DME payload. Issue a GET request using the DN to verify the configuration was posted or to get information about the configured properties of a particular object.
MO | DN |
---|---|
hmmEntity | sys/hmm |
hmmFwdInst | sys/hmm/fwdinst |
hmmFwdInst Properties
The following table contains information about the hmmFwdInst properties in the DME payload. For more information about the properties and MOs, see the NX-API DME Model Reference linked in the Related Documentation section below.
Property Name | Data Type | Description | Values |
---|---|---|---|
adminDist | scalar:Uint16 | Set the administrative distance for HMM | RANGE: [1 , 255] DEFAULT: 190 |
Related Documentation
For other CLI options, see the Cisco Nexus 9000 Series NX-OS Command Reference:
See the NX-API DME Model Reference for detailed information about classes and attributes described in the payload:
https://developer.cisco.com/site/nx-os/docs/nexus-model-reference/
For information about using the payloads, see the Cisco Nexus 9000 Series NX-OS Programmability Guide: