"Detailed information on TCP and BGP neighbor connections\n"
"Neighbor to display information about\n"
"Neighbor to display information about\n"
- "Neighbor on bgp configured interface\n"
+ "Neighbor on BGP configured interface\n"
"Display detailed prefix count information\n"
"JavaScript Object Notation\n")
{
"Detailed information on TCP and BGP neighbor connections\n"
"Neighbor to display information about\n"
"Neighbor to display information about\n"
- "Neighbor on bgp configured interface\n"
+ "Neighbor on BGP configured interface\n"
"Display detailed prefix count information\n"
"JavaScript Object Notation\n")
{
"Detailed information on TCP and BGP neighbor connections\n"
"Neighbor to display information about\n"
"Neighbor to display information about\n"
- "Neighbor on bgp configured interface\n"
+ "Neighbor on BGP configured interface\n"
"Display detailed prefix count information\n"
"JavaScript Object Notation\n")
{
"Detailed information on TCP and BGP neighbor connections\n"
"Neighbor to display information about\n"
"Neighbor to display information about\n"
- "Neighbor on bgp configured interface\n"
+ "Neighbor on BGP configured interface\n"
"Display detailed prefix count information\n"
"JavaScript Object Notation\n")
{
"Detailed information on TCP and BGP neighbor connections\n"
"Neighbor to display information about\n"
"Neighbor to display information about\n"
- "Neighbor on bgp configured interface\n"
+ "Neighbor on BGP configured interface\n"
"Display detailed prefix count information\n"
"JavaScript Object Notation\n")
{
IP_STR
BGP_STR
"Address Family\n"
- "Address Family modifier\n"
- "Address Family modifier\n"
+ "Display information about all VPNv4 NLRIs\n"
"Detailed information on TCP and BGP neighbor connections\n"
"Neighbor to display information about\n"
"Neighbor to display information about\n"
- "Neighbor on bgp configured interface\n"
+ "Neighbor on BGP configured interface\n"
"Display detailed prefix count information\n"
"JavaScript Object Notation\n")
{
return bgp_peer_counts (vty, peer, AFI_IP, SAFI_MPLS_VPN, uj);
}
+DEFUN (show_ip_bgp_vpnv4_all_route_prefix,
+ show_ip_bgp_vpnv4_all_route_prefix_cmd,
+ "show ip bgp vpnv4 all <A.B.C.D|A.B.C.D/M> [json]",
+ SHOW_STR
+ IP_STR
+ BGP_STR
+ "Address Family\n"
+ "Display information about all VPNv4 NLRIs\n"
+ "Network in the BGP routing table to display\n"
+ "JavaScript Object Notation\n")
+{
+ int idx = 0;
+ char *network = argv_find (argv, argc, "A.B.C.D", &idx) ? argv[idx]->arg : NULL;
+ return bgp_show_route (vty, NULL, network, AFI_IP, SAFI_MPLS_VPN, NULL, 0, BGP_PATH_ALL, use_json(argc, argv));
+}
+
static void
show_adj_route (struct vty *vty, struct peer *peer, afi_t afi, safi_t safi,
int in, const char *rmap_name, u_char use_json, json_object *json)
"Detailed information on TCP and BGP neighbor connections\n"
"Neighbor to display information about\n"
"Neighbor to display information about\n"
- "Neighbor on bgp configured interface\n"
+ "Neighbor on BGP configured interface\n"
"Display the received routes from neighbor\n"
"Display the routes advertised to a BGP neighbor\n"
"Route-map to modify the attributes\n"
"Detailed information on TCP and BGP neighbor connections\n"
"Neighbor to display information about\n"
"Neighbor to display information about\n"
- "Neighbor on bgp configured interface\n"
+ "Neighbor on BGP configured interface\n"
"Display information received from a BGP neighbor\n"
"Display the prefixlist filter\n"
"JavaScript Object Notation\n")
"Detailed information on TCP and BGP neighbor connections\n"
"Neighbor to display information about\n"
"Neighbor to display information about\n"
- "Neighbor on bgp configured interface\n"
+ "Neighbor on BGP configured interface\n"
"Display flap statistics of the routes learned from neighbor\n"
"Display the dampened routes received from neighbor\n"
"Display routes learned from neighbor\n"
install_element (VIEW_NODE, &show_ip_bgp_ipv4_dampening_parameters_cmd);
/* Restricted node: VIEW_NODE - (set of dangerous commands) */
-
install_element (VIEW_NODE, &show_ip_bgp_instance_all_cmd);
install_element (VIEW_NODE, &show_ip_bgp_ipv4_cmd);
install_element (VIEW_NODE, &show_ip_bgp_route_cmd);
-
install_element (VIEW_NODE, &show_ip_bgp_instance_neighbor_advertised_route_cmd);
install_element (VIEW_NODE, &show_ip_bgp_neighbor_routes_cmd);
install_element (VIEW_NODE, &show_ip_bgp_neighbor_received_prefix_filter_cmd);
install_element (VIEW_NODE, &show_ip_bgp_dampening_params_cmd);
install_element (VIEW_NODE, &show_ip_bgp_ipv4_dampening_parameters_cmd);
+ install_element (VIEW_NODE, &show_ip_bgp_vpnv4_all_route_prefix_cmd);
/* BGP dampening clear commands */
install_element (ENABLE_NODE, &clear_ip_bgp_dampening_cmd);
/* one clear bgp command to rule them all */
DEFUN (clear_ip_bgp_all,
clear_ip_bgp_all_cmd,
- "clear [ip] bgp [<view|vrf> WORD] <*|A.B.C.D|X:X::X:X|WORD|(1-4294967295)|external|peer-group WORD> [<ipv4 [<unicast|multicast>]|ipv6 [<unicast|multicast>]|encap [unicast]|vpnv4 [unicast]>] [<soft [<in|out>]|in [prefix-filter]|out>]",
+ "clear [ip] bgp [<view|vrf> WORD] [<ipv4 [<unicast|multicast>]|ipv6 [<unicast|multicast>]|encap [unicast]|vpnv4 [unicast]>] <*|A.B.C.D|X:X::X:X|WORD|(1-4294967295)|external|peer-group WORD> [<soft [<in|out>]|in [prefix-filter]|out>]",
CLEAR_STR
IP_STR
BGP_STR
DEFUN (clear_bgp_ipv6_safi_prefix,
clear_bgp_ipv6_safi_prefix_cmd,
- "clear bgp ipv6 <unicast|multicast> prefix X:X::X:X/M",
+ "clear [ip] bgp ipv6 <unicast|multicast> prefix X:X::X:X/M",
CLEAR_STR
BGP_STR
"Address Family\n"
DEFUN (clear_bgp_instance_ipv6_safi_prefix,
clear_bgp_instance_ipv6_safi_prefix_cmd,
- "clear bgp <view|vrf> WORD ipv6 <unicast|multicast> prefix X:X::X:X/M",
+ "clear [ip] bgp <view|vrf> WORD ipv6 <unicast|multicast> prefix X:X::X:X/M",
CLEAR_STR
BGP_STR
BGP_INSTANCE_HELP_STR
/* `show ip bgp summary' commands. */
DEFUN (show_ip_bgp_summary,
show_ip_bgp_summary_cmd,
- "show [ip] bgp [<view|vrf> WORD] [<ipv4 [<unicast|multicast>]|ipv6 [<unicast|multicast>]|encap [unicast]|vpnv4 [unicast]>] summary [json]",
+ "show [ip] bgp [<view|vrf> WORD] [<ipv4 [<unicast|multicast>]|ipv6 [<unicast|multicast>]|encap [unicast]|vpnv4 <all|rd ASN:nn_or_IP-address:nn>>] summary [json]",
SHOW_STR
IP_STR
BGP_STR
"Address Family\n"
"Address Family modifier\n"
"Address Family\n"
- "Address Family modifier\n"
+ "Display information about all VPNv4 NLRIs\n"
+ "Display information for a route distinguisher\n"
+ "VPN Route Distinguisher\n"
"Summary of BGP neighbor status\n"
"JavaScript Object Notation\n")
{
if (argv_find (argv, argc, "unicast", &idx) || argv_find (argv, argc, "multicast", &idx))
safi = strmatch (argv[idx]->text, "unicast") ? SAFI_UNICAST : SAFI_MULTICAST;
}
- else if (argv_find (argv, argc, "encap", &idx) || argv_find (argv, argc, "vpnv4", &idx))
+ else if (argv_find (argv, argc, "encap", &idx))
{
afi = AFI_IP;
- safi = strmatch (argv[idx]->text, "encap") ? SAFI_ENCAP : SAFI_MPLS_VPN;
- // advance idx if necessary
- argv_find (argv, argc, "unicast", &idx);
+ safi = SAFI_ENCAP;
}
+ else if (argv_find (argv, argc, "vpnv4", &idx))
+ {
+ // we show the same thing regardless of rd and all
+ afi = AFI_IP;
+ safi = SAFI_MPLS_VPN;
+ }
+
int uj = use_json (argc, argv);
return bgp_show_summary_vty (vty, vrf, afi, safi, uj);
/* "show ip bgp neighbors" commands. */
DEFUN (show_ip_bgp_neighbors,
show_ip_bgp_neighbors_cmd,
- "show [ip] bgp [<view|vrf> WORD] [<ipv4|ipv6>] neighbors [<A.B.C.D|X:X::X:X|WORD>] [json]",
+ "show [ip] bgp [<view|vrf> WORD] [<ipv4|ipv6|vpnv4 <all|rd ASN:nn_or_IP-address:nn>>] neighbors [<A.B.C.D|X:X::X:X|WORD>] [json]",
SHOW_STR
IP_STR
BGP_STR
BGP_INSTANCE_ALL_HELP_STR
"Address Family\n"
"Address Family\n"
+ "Address Family\n"
+ "Display information about all VPNv4 NLRIs\n"
+ "Display information for a route distinguisher\n"
+ "VPN Route Distinguisher\n"
"Detailed information on TCP and BGP neighbor connections\n"
"Neighbor to display information about\n"
"Neighbor to display information about\n"
- "Neighbor on bgp configured interface\n"
+ "Neighbor on BGP configured interface\n"
"JavaScript Object Notation\n")
{
char *vrf = NULL;
if (argv_find (argv, argc, "WORD", &idx))
vrf = argv[idx]->arg;
- if (argv_find (argv, argc, "A.B.C.D", &idx) || argv_find (argv, argc, "X:X::X:X", &idx) ||
+ if (argv_find (argv, argc, "A.B.C.D", &idx) ||
+ argv_find (argv, argc, "X:X::X:X", &idx) ||
argv_find (argv, argc, "WORD", &idx))
{
sh_type = show_peer;
install_element (VIEW_NODE, &show_bgp_updgrps_adj_s_cmd);
install_element (VIEW_NODE, &show_bgp_instance_updgrps_adj_s_cmd);
install_element (VIEW_NODE, &show_bgp_updgrps_afi_adj_s_cmd);
- install_element (VIEW_NODE, &show_ip_bgp_summary_cmd);
install_element (VIEW_NODE, &show_ip_bgp_updgrps_cmd);
install_element (VIEW_NODE, &show_bgp_instance_all_ipv6_updgrps_cmd);
install_element (VIEW_NODE, &show_ip_bgp_updgrps_adj_cmd);