Configuring a VPNv4 Unicast Address Family
This section uses examples to demonstrate many of the BGP configuration options and to show how the REST APIs correspond to the CLI commands.
Configuring the Peering Address as the Next Hop
Configuring the Peering Address as the Next Hop
POST http://<mgmt0_IP>/api/mo/sys/bgp/inst.json
{
"bgpInst": {
"attributes": {
"asn": "100"
},
"children": [
{
"bgpDom": {
"attributes": {
"name": "default"
},
"children": [
{
"bgpPeer": {
"attributes": {
"addr": "1.2.3.4",
"inheritContPeerCtrl": ""
},
"children": [
{
"bgpPeerAf": {
"attributes": {
"ctrl": "nh-self",
"inheritContPeerPolicyCtrl": "",
"type": "vpnv4-ucast"
}}}]}}]}}]}}
{
imdata:[]
}
<System>
<bgp-items>
<inst-items>
<asn>100</asn>
<dom-items>
<Dom-list>
<name>default</name>
<peer-items>
<Peer-list>
<addr>1.2.3.4</addr>
<inheritContPeerCtrl></inheritContPeerCtrl>
<af-items>
<PeerAf-list>
<type>vpnv4-ucast</type>
<ctrl>nh-self</ctrl>
<inheritContPeerPolicyCtrl></inheritContPeerPolicyCtrl>
</PeerAf-list>
</af-items>
</Peer-list>
</peer-items>
</Dom-list>
</dom-items>
</inst-items>
</bgp-items>
</System>
Note: This example was added in Release 7.0(3)I7(2).
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.
router bgp 100
neighbor 1.2.3.4
address-family vpnv4 unicast
next-hop-self
For other CLI options, see the Cisco Nexus 9000 Series NX-OS Command Reference: http://www.cisco.com/c/en/us/support/switches/nexus-9000-series-switches/products-command-reference-list.html
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 https://www.cisco.com/c/en/us/support/switches/nexus-9000-series-switches/products-programming-reference-guides-list.html
Configuring the Peering Address as Nexthop (Values inherited from a Peer Template)
Configuring the Peering Address as Nexthop (Values inherited from a Peer Template)
POST http://<mgmt0_IP>/api/mo/sys.json
{
"topSystem": {
"children": [
{
"bgpEntity": {
"children": [
{
"bgpInst": {
"attributes": {
"asn": "123"
},
"children": [
{
"bgpDom": {
"attributes": {
"name": "default"
},
"children": [
{
"bgpPeer": {
"attributes": {
"addr": "1.2.3.4",
"inheritContPeerCtrl": ""
},
"children": [
{
"bgpPeerAf": {
"attributes": {
"ctrl": "",
"inheritContPeerPolicyCtrl": "",
"type": "vpnv4-ucast"
},
"children": [
{
"bgpPolicyInheritRule": {
"attributes": {
"name": "Pol1",
"seq": "123"
}}}]}}]}},{
"bgpPolicyCont": {
"attributes": {
"inheritContPeerPolicyCtrl": "",
"name": "Pol1"
}}}]}}]}}]}}]}}
{
imdata:[]
}
<System>
<bgp-items>
<inst-items>
<asn>123</asn>
<dom-items>
<Dom-list>
<name>default</name>
<policycont-items>
<PolicyCont-list>
<name>Pol1</name>
<inheritContPeerPolicyCtrl></inheritContPeerPolicyCtrl>
</PolicyCont-list>
</policycont-items>
<af-items>
<DomAf-list>
<type>vpnv4-ucast</type>
</DomAf-list>
</af-items>
</Dom-list>
</dom-items>
</inst-items>
</bgp-items>
</System>
Note: This example was added in Release 7.0(3)I7(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.
router bgp 123
template peer-policy Pol1
neighbor 1.2.3.4
address-family vpnv4 unicast
inherit peer-policy Pol1 123
default next-hop-self
Note: Default is only valid when inheriting a template
For other CLI options, see the Cisco Nexus 9000 Series NX-OS Command Reference: http://www.cisco.com/c/en/us/support/switches/nexus-9000-series-switches/products-command-reference-list.html
See the NX-API DME Model Reference for detailed information about classes and attributes described in the payload: https://developer.cisco.com/media/dme/index.html
For information about using the payloads, see the Cisco Nexus 9000 Series NX-OS Programmability Guide https://www.cisco.com/c/en/us/support/switches/nexus-9000-series-switches/products-programming-reference-guides-list.html
Deleting the Configuration for the Peering Address Set as Nexthop
Deleting the Configuration for the Peering Address Set as Nexthop
POST http://<mgmt0_IP>/api/mo/sys/bgp.json
{
"bgpEntity": {
"children": [
{
"bgpInst": {
"attributes": {
"asn": "123"
},
"children": [
{
"bgpDom": {
"attributes": {
"name": "default"
},
"children": [
{
"bgpPeer": {
"attributes": {
"addr": "1.2.3.4",
"inheritContPeerCtrl": ""
},
"children": [
{
"bgpPeerAf": {
"attributes": {
"ctrl": "",
"inheritContPeerPolicyCtrl": "",
"type": "vpnv4-ucast"
}}}]}}]}}]}}]}}
{
imdata:[]
}
<System>
<bgp-items>
<inst-items>
<asn>123</asn>
<dom-items>
<Dom-list>
<name>default</name>
<peer-items>
<Peer-list>
<addr>1.2.3.4</addr>
<inheritContPeerCtrl></inheritContPeerCtrl>
<af-items>
<PeerAf-list>
<type>vpnv4-ucast</type>
<ctrl></ctrl>
<inheritContPeerPolicyCtrl></inheritContPeerPolicyCtrl>
</PeerAf-list>
</af-items>
</Peer-list>
</peer-items>
</Dom-list>
</dom-items>
</inst-items>
</bgp-items>
</System>
Note: This example was added in Release 7.0(3)I7(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.
router bgp 123
neighbor 1.2.3.4
address-family vpnv4 unicast
no next-hop-self
For other CLI options, see the Cisco Nexus 9000 Series NX-OS Command Reference: http://www.cisco.com/c/en/us/support/switches/nexus-9000-series-switches/products-command-reference-list.html
See the NX-API DME Model Reference for detailed information about classes and attributes described in the payload: https://developer.cisco.com/media/dme/index.html
For information about using the payloads, see the Cisco Nexus 9000 Series NX-OS Programmability Guide https://www.cisco.com/c/en/us/support/switches/nexus-9000-series-switches/products-programming-reference-guides-list.html
Deleting the Next Hop of our Peering Address
Deleting the Next Hop of our Peering Address
POST http://<mgmt0_IP>/api/mo/sys/bgp/inst.json
{
"bgpInst": {
"attributes": {
"asn": "100"
},
"children": [
{
"bgpDom": {
"attributes": {
"name": "default"
},
"children": [
{
"bgpPeer": {
"attributes": {
"addr": "1.2.3.4",
"inheritContPeerCtrl": ""
},
"children": [
{
"bgpPeerAf": {
"attributes": {
"ctrl": "",
"inheritContPeerPolicyCtrl": "",
"type": "vpnv4-ucast"
}}}]}}]}}]}}
{
imdata:[]
}
<System>
<bgp-items>
<inst-items>
<asn>100</asn>
<dom-items>
<Dom-list>
<name>default</name>
<peer-items>
<Peer-list>
<addr>1.2.3.4</addr>
<inheritContPeerCtrl></inheritContPeerCtrl>
<af-items>
<PeerAf-list>
<type>vpnv4-ucast</type>
<ctrl></ctrl>
<inheritContPeerPolicyCtrl></inheritContPeerPolicyCtrl>
</PeerAf-list>
</af-items>
</Peer-list>
</peer-items>
</Dom-list>
</dom-items>
</inst-items>
</bgp-items>
</System>
Note: This example was added in Release 7.0(3)I7(2).
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.
router bgp 100
neighbor 1.2.3.4
address-family vpnv4 unicast
no next-hop-self
For other CLI options, see the Cisco Nexus 9000 Series NX-OS Command Reference: http://www.cisco.com/c/en/us/support/switches/nexus-9000-series-switches/products-command-reference-list.html
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 https://www.cisco.com/c/en/us/support/switches/nexus-9000-series-switches/products-programming-reference-guides-list.html
Applying an AS-PATH Filter List to Incoming Routes
Applying an AS-PATH Filter List to Incoming Routes
POST http://<mgmt0_IP>/api/mo/sys/bgp.json
{
"bgpEntity": {
"children": [
{
"bgpInst": {
"attributes": {
"asn": "123"
},
"children": [
{
"bgpDom": {
"attributes": {
"name": "default"
},
"children": [
{
"bgpPeer": {
"attributes": {
"addr": "1.2.3.4",
"inheritContPeerCtrl": ""
},
"children": [
{
"bgpPeerAf": {
"attributes": {
"inheritContPeerPolicyCtrl": "",
"type": "vpnv4-ucast"
},
"children": [
{
"bgpFltrCtrlP": {
"attributes": {
"direction": "in",
"list": "List_A"
}}}]}}]}}]}}]}}]}}
{
imdata:[]
}
<System>
<bgp-items>
<inst-items>
<asn>123</asn>
<dom-items>
<Dom-list>
<name>default</name>
<peer-items>
<Peer-list>
<addr>1.2.3.4</addr>
<inheritContPeerCtrl></inheritContPeerCtrl>
<af-items>
<PeerAf-list>
<type>vpnv4-ucast</type>
<inheritContPeerPolicyCtrl></inheritContPeerPolicyCtrl>
<fltrctrl-items>
<FltrCtrlP-list>
<direction>in</direction>
<list>List_A</list>
</FltrCtrlP-list>
</fltrctrl-items>
</PeerAf-list>
</af-items>
</Peer-list>
</peer-items>
</Dom-list>
</dom-items>
</inst-items>
</bgp-items>
</System>
Note: This example was added in Release 7.0(3)I7(2).
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.
router bgp 123
neighbor 1.2.3.4
address-family vpnv4 unicast
filter-list List_A in
For other CLI options, see the Cisco Nexus 9000 Series NX-OS Command Reference: http://www.cisco.com/c/en/us/support/switches/nexus-9000-series-switches/products-command-reference-list.html
See the NX-API DME Model Reference for detailed information about classes and attributes described in the payload: https://developer.cisco.com/media/dme/index.html
For information about using the payloads, see the Cisco Nexus 9000 Series NX-OS Programmability Guide https://www.cisco.com/c/en/us/support/switches/nexus-9000-series-switches/products-programming-reference-guides-list.html
Applying an AS-PATH Filter List to Outgoing Routes
Applying an AS-PATH Filter List to Outgoing Routes
POST http://<mgmt0_IP>/api/mo/sys/bgp.json
{
"bgpEntity": {
"children": [
{
"bgpInst": {
"attributes": {
"asn": "123"
},
"children": [
{
"bgpDom": {
"attributes": {
"name": "default"
},
"children": [
{
"bgpPeer": {
"attributes": {
"addr": "1.2.3.4",
"inheritContPeerCtrl": ""
},
"children": [
{
"bgpPeerAf": {
"attributes": {
"inheritContPeerPolicyCtrl": "",
"type": "vpnv4-ucast"
},
"children": [
{
"bgpFltrCtrlP": {
"attributes": {
"direction": "out",
"list": "List_A"
}}}]}}]}}]}}]}}]}}
{
imdata:[]
}
<System>
<bgp-items>
<inst-items>
<asn>123</asn>
<dom-items>
<Dom-list>
<name>default</name>
<peer-items>
<Peer-list>
<addr>1.2.3.4</addr>
<inheritContPeerCtrl></inheritContPeerCtrl>
<af-items>
<PeerAf-list>
<type>vpnv4-ucast</type>
<inheritContPeerPolicyCtrl></inheritContPeerPolicyCtrl>
<fltrctrl-items>
<FltrCtrlP-list>
<direction>out</direction>
<list>List_A</list>
</FltrCtrlP-list>
</fltrctrl-items>
</PeerAf-list>
</af-items>
</Peer-list>
</peer-items>
</Dom-list>
</dom-items>
</inst-items>
</bgp-items>
</System>
Note: This example was added in Release 7.0(3)I7(2).
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.
router bgp 123
neighbor 1.2.3.4
address-family vpnv4 unicast
filter-list List_A out
For other CLI options, see the Cisco Nexus 9000 Series NX-OS Command Reference: http://www.cisco.com/c/en/us/support/switches/nexus-9000-series-switches/products-command-reference-list.html
See the NX-API DME Model Reference for detailed information about classes and attributes described in the payload: https://developer.cisco.com/media/dme/index.html
For information about using the payloads, see the Cisco Nexus 9000 Series NX-OS Programmability Guide https://www.cisco.com/c/en/us/support/switches/nexus-9000-series-switches/products-programming-reference-guides-list.html
Applying a Prefix List to Incoming Routes
Applying a Prefix List to Incoming Routes
POST http://<mgmt0_IP>/api/mo/sys.json
{
"topSystem": {
"children": [
{
"rpmEntity": {
"children": [
{
"rtpfxRuleV4": {
"attributes": {
"name": "List_1"
},
"children": [
{
"rtpfxEntry": {
"attributes": {
"action": "permit",
"criteria": "exact",
"fromPfxLen": "0",
"order": "10",
"pfx": "4.3.2.1/3",
"toPfxLen": "0"
}}}]}}]}},{
"bgpEntity": {
"children": [
{
"bgpInst": {
"attributes": {
"asn": "123"
},
"children": [
{
"bgpDom": {
"attributes": {
"name": "default"
},
"children": [
{
"bgpPeer": {
"attributes": {
"addr": "1.2.3.4",
"inheritContPeerCtrl": ""
},
"children": [
{
"bgpPeerAf": {
"attributes": {
"inheritContPeerPolicyCtrl": "",
"type": "vpnv4-ucast"
},
"children": [
{
"bgpPfxCtrlP": {
"attributes": {
"direction": "in",
"list": "List_1"
}}}]}}]}}]}}]}}]}}]}}
{
imdata:[]
}
<System>
<rpm-items>
<pfxlistv4-items>
<RuleV4-list>
<name>List_1</name>
<ent-items>
<Entry-list>
<order>10</order>
<action>permit</action>
<criteria>exact</criteria>
<fromPfxLen>0</fromPfxLen>
<pfx>4.3.2.1/3</pfx>
<toPfxLen>0</toPfxLen>
</Entry-list>
</ent-items>
</RuleV4-list>
</pfxlistv4-items>
</rpm-items>
<bgp-items>
<inst-items>
<asn>123</asn>
<dom-items>
<Dom-list>
<name>default</name>
<peer-items>
<Peer-list>
<addr>1.2.3.4</addr>
<inheritContPeerCtrl></inheritContPeerCtrl>
<af-items>
<PeerAf-list>
<type>vpnv4-ucast</type>
<inheritContPeerPolicyCtrl></inheritContPeerPolicyCtrl>
<pfxctrl-items>
<PfxCtrlP-list>
<direction>in</direction>
<list>List_1</list>
</PfxCtrlP-list>
</pfxctrl-items>
</PeerAf-list>
</af-items>
</Peer-list>
</peer-items>
</Dom-list>
</dom-items>
</inst-items>
</bgp-items>
</System>
Note: This example was added in Release 7.0(3)I7(2).
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.
ip prefix-list List_1 seq 10 permit 4.3.2.1/3
router bgp 123
neighbor 1.2.3.4
address-family vpnv4 unicast
prefix-list List_1 in
For other CLI options, see the Cisco Nexus 9000 Series NX-OS Command Reference: http://www.cisco.com/c/en/us/support/switches/nexus-9000-series-switches/products-command-reference-list.html
See the NX-API DME Model Reference for detailed information about classes and attributes described in the payload: https://developer.cisco.com/media/dme/index.html
For information about using the payloads, see the Cisco Nexus 9000 Series NX-OS Programmability Guide https://www.cisco.com/c/en/us/support/switches/nexus-9000-series-switches/products-programming-reference-guides-list.html
Applying a Prefix List to Outgoing Routes
Applying a Prefix List to Outgoing Routes
POST http://<mgmt0_IP>/api/mo/sys.json
{
"topSystem": {
"children": [
{
"rpmEntity": {
"children": [
{
"rtpfxRuleV4": {
"attributes": {
"name": "List_1"
},
"children": [
{
"rtpfxEntry": {
"attributes": {
"action": "permit",
"criteria": "exact",
"fromPfxLen": "0",
"order": "10",
"pfx": "4.3.2.1/3",
"toPfxLen": "0"
}}}]}}]}},{
"bgpEntity": {
"children": [
{
"bgpInst": {
"attributes": {
"asn": "123"
},
"children": [
{
"bgpDom": {
"attributes": {
"name": "default"
},
"children": [
{
"bgpPeer": {
"attributes": {
"addr": "1.2.3.4",
"inheritContPeerCtrl": ""
},
"children": [
{
"bgpPeerAf": {
"attributes": {
"inheritContPeerPolicyCtrl": "",
"type": "vpnv4-ucast"
},
"children": [
{
"bgpPfxCtrlP": {
"attributes": {
"direction": "out",
"list": "List_1"
}}}]}}]}}]}}]}}]}}]}}
{
imdata:[]
}
<System>
<rpm-items>
<pfxlistv4-items>
<RuleV4-list>
<name>List_1</name>
<ent-items>
<Entry-list>
<order>10</order>
<action>permit</action>
<criteria>exact</criteria>
<fromPfxLen>0</fromPfxLen>
<pfx>4.3.2.1/3</pfx>
<toPfxLen>0</toPfxLen>
</Entry-list>
</ent-items>
</RuleV4-list>
</pfxlistv4-items>
</rpm-items>
<bgp-items>
<inst-items>
<asn>123</asn>
<dom-items>
<Dom-list>
<name>default</name>
<peer-items>
<Peer-list>
<addr>1.2.3.4</addr>
<inheritContPeerCtrl></inheritContPeerCtrl>
<af-items>
<PeerAf-list>
<type>vpnv4-ucast</type>
<inheritContPeerPolicyCtrl></inheritContPeerPolicyCtrl>
<pfxctrl-items>
<PfxCtrlP-list>
<direction>out</direction>
<list>List_1</list>
</PfxCtrlP-list>
</pfxctrl-items>
</PeerAf-list>
</af-items>
</Peer-list>
</peer-items>
</Dom-list>
</dom-items>
</inst-items>
</bgp-items>
</System>
Note: This example was added in Release 7.0(3)I7(2).
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.
ip prefix-list List_1 seq 10 permit 4.3.2.1/3
router bgp 123
neighbor 1.2.3.4
address-family vpnv4 unicast
prefix-list List_1 out
For other CLI options, see the Cisco Nexus 9000 Series NX-OS Command Reference: http://www.cisco.com/c/en/us/support/switches/nexus-9000-series-switches/products-command-reference-list.html
See the NX-API DME Model Reference for detailed information about classes and attributes described in the payload: https://developer.cisco.com/media/dme/index.html
For information about using the payloads, see the Cisco Nexus 9000 Series NX-OS Programmability Guide https://www.cisco.com/c/en/us/support/switches/nexus-9000-series-switches/products-programming-reference-guides-list.html
Configuring Multipath for EBGP and IBGP Paths
Configuring Multipath for EBGP and IBGP Paths
POST http://<mgmt0_IP>/api/mo/sys/bgp.json
{
"bgpEntity": {
"children": [
{
"bgpInst": {
"attributes": {
"asn": "123"
},
"children": [
{
"bgpDom": {
"attributes": {
"name": "default"
},
"children": [
{
"bgpDomAf": {
"attributes": {
"maxEcmp": "12",
"maxExtEcmp": "12",
"type": "vpnv4-ucast"
}}}]}}]}}]}}
{
imdata:[]
}
<System>
<bgp-items>
<inst-items>
<asn>123</asn>
<dom-items>
<Dom-list>
<name>default</name>
<af-items>
<DomAf-list>
<type>vpnv4-ucast</type>
<maxEcmp>12</maxEcmp>
<maxExtEcmp>12</maxExtEcmp>
</DomAf-list>
</af-items>
</Dom-list>
</dom-items>
</inst-items>
</bgp-items>
</System>
Note: This example was added in Release 7.0(3)I7(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.
router bgp 123
address-family vpnv4 unicast
maximum-paths eibgp 12
For other CLI options, see the Cisco Nexus 9000 Series NX-OS Command Reference: http://www.cisco.com/c/en/us/support/switches/nexus-9000-series-switches/products-command-reference-list.html
See the NX-API DME Model Reference for detailed information about classes and attributes described in the payload: https://developer.cisco.com/media/dme/index.html
For information about using the payloads, see the Cisco Nexus 9000 Series NX-OS Programmability Guide https://www.cisco.com/c/en/us/support/switches/nexus-9000-series-switches/products-programming-reference-guides-list.html
Deleting the Configuration of Multipath for EBGP and IBGP Paths
Deleting the Configuration of Multipath for EBGP and IBGP Paths
POST http://<mgmt0_IP>/api/mo/sys/bgp.json
{
"bgpEntity": {
"children": [
{
"bgpInst": {
"attributes": {
"asn": "123"
},
"children": [
{
"bgpDom": {
"attributes": {
"name": "default"
},
"children": [
{
"bgpDomAf": {
"attributes": {
"maxEcmp": "1",
"maxExtEcmp": "1",
"type": "vpnv4-ucast"
}}}]}}]}}]}}
{
imdata:[]
}
<System>
<bgp-items>
<inst-items>
<asn>123</asn>
<dom-items>
<Dom-list>
<name>default</name>
<af-items>
<DomAf-list>
<type>vpnv4-ucast</type>
<maxEcmp>1</maxEcmp>
<maxExtEcmp>1</maxExtEcmp>
</DomAf-list>
</af-items>
</Dom-list>
</dom-items>
</inst-items>
</bgp-items>
</System>
Note: This example was added in Release 7.0(3)I7(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.
router bgp 123
address-family vpnv4 unicast
no maximum-paths eibgp 12
For other CLI options, see the Cisco Nexus 9000 Series NX-OS Command Reference: http://www.cisco.com/c/en/us/support/switches/nexus-9000-series-switches/products-command-reference-list.html
See the NX-API DME Model Reference for detailed information about classes and attributes described in the payload: https://developer.cisco.com/media/dme/index.html
For information about using the payloads, see the Cisco Nexus 9000 Series NX-OS Programmability Guide https://www.cisco.com/c/en/us/support/switches/nexus-9000-series-switches/products-programming-reference-guides-list.html