junos-nfx-rpc-route

Junos RPC YANG module for route command(s)

  • Version: 2019-01-01

    junos-nfx-rpc-route@2019-01-01


    
      module junos-nfx-rpc-route {
    
        yang-version 1;
    
        namespace
          "http://yang.juniper.net/junos-nfx/rpc/route";
    
        prefix route;
    
        import junos-common-types {
          prefix jt;
          revision-date "2019-01-01";
        }
    
        organization "Juniper Networks, Inc.";
    
        contact "yang-support@juniper.net";
    
        description
          "Junos RPC YANG module for route command(s)";
    
        revision "2019-01-01" {
          description "Junos: 21.3R1.9";
        }
    
    
        rpc get-route-information {
          description
            "Show routing table information";
          input {
            leaf label {
              type union {
                type uint32;
                type string {
                  pattern "<.*>|$.*";
                }
              }
              description
                "Label of entry in MPLS routing table";
            }
    
            leaf ccc {
              type string;
              description
                "Name of entry in MPLS table with a circuit cross-connect interface";
            }
    
            container evpn-esi-value {
              leaf esi {
                type string;
                description
                  "Filter evpn routes for a particular ESI, except evpn MAC routes";
              }
            }  // container evpn-esi-value
    
            container evpn-mac-address {
              leaf mac_address {
                type jt:mac-addr;
                description
                  "Filter evpn mac routes for a particular MAC";
              }
            }  // container evpn-mac-address
    
            container evpn-ethernet-tag-id {
              leaf ethernet-tag {
                type union {
                  type uint32;
                  type string {
                    pattern "<.*>|$.*";
                  }
                }
                description
                  "Filter evpn routes for a particular Ethernet Tag ID";
              }
            }  // container evpn-ethernet-tag-id
    
            leaf rd-prefix {
              type string;
              description
                "Route distinguisher with ip prefix (rd:prefix)";
            }
    
            leaf label-switched-path {
              type string {
                length "1 .. 64";
              }
              description
                "Name of LSP tunnel associated with entries";
            }
    
            leaf static-label-switched-path {
              type string {
                length "1 .. 64";
              }
              description
                "Name of static LSP tunnel associated with entries";
            }
    
            leaf te-link-local-node-ip {
              type string;
              description
                "Local node's IPv4 address in the traffic-engineering link";
            }
    
            leaf te-link-local-node-iso {
              type string;
              description
                "Local node's ISO circuit ID in the traffic-engineering link";
            }
    
            leaf te-link-remote-node-ip {
              type string;
              description
                "Remote node's IPv4 address in the traffic-engineering link";
            }
    
            leaf te-link-remote-node-iso {
              type string;
              description
                "Remote node's ISO circuit ID in the traffic-engineering link";
            }
    
            leaf te-link-local-ip {
              type jt:ipaddr;
              description
                "Local IPv4 address of the traffic-engineering link";
            }
    
            leaf te-link-remote-ip {
              type jt:ipaddr;
              description
                "Remote IPv4 address of the traffic-engineering link";
            }
    
            leaf te-node-ip {
              type string;
              description
                "IPv4 address of the traffic-engineering node";
            }
    
            leaf te-node-iso {
              type string;
              description
                "ISO circuit ID of the traffic-engineering node";
            }
    
            leaf te-ipv4-prefix-node-ip {
              type string;
              description
                "Originator node's IPv4 address in the traffic-engineering prefix";
            }
    
            leaf te-ipv4-prefix-node-iso {
              type string;
              description
                "Originator node's ISO circuit ID in the traffic-engineering prefix";
            }
    
            leaf te-ipv4-prefix-ip {
              type jt:ipaddr;
              description
                "IPv4 address of the traffic-engineering prefix";
            }
    
            leaf te-ipv6-prefix-node-iso {
              type string;
              description
                "Originator node's ISO circuit ID in the traffic-engineering IPv6 prefix";
            }
    
            leaf te-ipv6-prefix-ipv6-addr {
              type jt:ipv6addr;
              description
                "IPv6 address of the traffic-engineering IPv6 prefix";
            }
    
            leaf te-srv6-sid-node-iso {
              type string;
              description
                "Originator node's ISO circuit ID in the traffic-engineering SRv6 END SID";
            }
    
            leaf te-srv6-sid-ipv6-addr {
              type jt:ipv6addr;
              description
                "IPv6 address of the traffic-engineering SRv6 END SID";
            }
    
            choice daemon-select {
              leaf rib-sharding {
                type string;
                description "Name of rib shard";
              }
            }  // choice daemon-select
    
            leaf tenant {
              type string;
              description
                "Name of tenant, or 'all'";
            }
    
            leaf destination {
              type jt:ipprefix-optional;
              description
                "IP address and optional prefix length of destination";
            }
    
            leaf all {
              type empty;
              description
                "Show all entries, including hidden entries";
            }
    
            leaf level {
              type enumeration {
                enum "terse" {
                  value 0;
                  description
                    "Display terse output";
                }
                enum "brief" {
                  value 1;
                  description
                    "Display brief output";
                }
                enum "detail" {
                  value 2;
                  description
                    "Display detailed output";
                }
                enum "extensive" {
                  value 3;
                  description
                    "Display extensive output";
                }
              }
            }
    
            leaf match {
              type enumeration {
                enum "best" {
                  value 0;
                  description
                    "Show longest matching route";
                }
                enum "exact" {
                  value 1;
                  description
                    "Show routes that match exactly";
                }
                enum "range" {
                  value 2;
                  description
                    "Show all entries in prefix range";
                }
              }
            }
    
            leaf table {
              type string;
              description
                "Name of routing table";
            }
    
            leaf inactive-prefix {
              type empty;
              description
                "Show inactive route destinations";
            }
    
            leaf inactive-path {
              type empty;
              description "Show inactive paths";
            }
    
            leaf active-path {
              type empty;
              description "Show active paths";
            }
    
            leaf private {
              type empty;
              description
                "Show private table routes";
            }
    
            leaf damping {
              type enumeration {
                enum "suppressed" {
                  value 0;
                  description
                    "Entries suppressed due to route damping";
                }
                enum "history" {
                  value 1;
                  description
                    "Entries that are withdrawn but have history";
                }
                enum "decayed" {
                  value 2;
                  description
                    "Entries that are decayed but not suppressed";
                }
              }
              description
                "Show entries subjected to particular kind of route damping";
            }
    
            container output {
              leaf interface {
                type union {
                  type jt:interface-unit;
                  type string {
                    pattern "<.*>|$.*";
                  }
                }
                description "Name of interface";
              }
    
              leaf address {
                type string;
                description
                  "Address of interface";
              }
            }  // container output
    
            leaf next-hop {
              type jt:ipaddr;
              description
                "IP address of next hop that is destination for entries";
            }
    
            leaf source-gateway {
              type jt:ipaddr;
              description
                "IP address of source router for entries";
            }
    
            leaf protocol {
              type enumeration {
                enum "aggregate" {
                  value 0;
                  description
                    "Locally generated aggregate route";
                }
                enum "bgp" {
                  value 1;
                  description
                    "Border Gateway Protocol";
                }
                enum "direct" {
                  value 2;
                  description
                    "Directly connected routes";
                }
                enum "dvmrp" {
                  value 3;
                  description
                    "Distance Vector Multicast Routing Protocol";
                }
                enum "evpn" {
                  value 4;
                  description "EVPN";
                }
                enum "isis" {
                  value 5;
                  description
                    "Intermediate System-to-Intermediate System";
                }
                enum "esis" {
                  value 6;
                  description
                    "End System-to-Intermediate System";
                }
                enum "ldp" {
                  value 7;
                  description
                    "Label Distribution Protocol";
                }
                enum "local" {
                  value 8;
                  description
                    "Local system addresses";
                }
                enum "ospf" {
                  value 9;
                  description
                    "Open Shortest Path First";
                }
                enum "ospf2" {
                  value 10;
                  description
                    "Open Shortest Path First Version 2";
                }
                enum "ospf3" {
                  value 11;
                  description
                    "Open Shortest Path First Version 3";
                }
                enum "pim" {
                  value 12;
                  description
                    "Protocol Independent Multicast";
                }
                enum "mvpn" {
                  value 13;
                  description
                    "BGP-MVPN Protocol";
                }
                enum "rift" {
                  value 14;
                  description
                    "Routing in Fat Trees Protocol";
                }
                enum "rip" {
                  value 15;
                  description
                    "Routing Information Protocol";
                }
                enum "ripng" {
                  value 16;
                  description
                    "Routing Information Protocol for IPv6";
                }
                enum "rsvp" {
                  value 17;
                  description
                    "Resource Reservation Protocol";
                }
                enum "static" {
                  value 18;
                  description
                    "Statically defined prefixes";
                }
                enum "arp" {
                  value 19;
                  description
                    "Prefixes learned via ARP";
                }
                enum "frr" {
                  value 20;
                  description
                    "Prefixes created by Host (Direct route) Fast reroute";
                }
                enum "l2-learned-host-routing" {
                  value 21;
                  description
                    "Layer-2-learned host routing";
                }
                enum "mpls" {
                  value 22;
                  description
                    "Multiprotocol Label Switching";
                }
                enum "ccc" {
                  value 23;
                  description
                    "Circuit cross-connect";
                }
                enum "express-segments" {
                  value 24;
                  description "Express segments";
                }
                enum "msdp" {
                  value 25;
                  description
                    "Multicast Source Discovery Protocol";
                }
                enum "vpn" {
                  value 26;
                  description
                    "Layer 3 virtual private network";
                }
                enum "l2vpn" {
                  value 27;
                  description
                    "Layer 2 virtual private network";
                }
                enum "l2circuit" {
                  value 28;
                  description "Layer 2 circuit";
                }
                enum "rtarget" {
                  value 29;
                  description
                    "Local route target VPN membership";
                }
                enum "spring-te" {
                  value 30;
                  description
                    "SPRING Traffic-Engineered";
                }
                enum "tunnel" {
                  value 31;
                  description "Dynamic tunnel";
                }
                enum "flow" {
                  value 32;
                  description
                    "Locally defined flow route";
                }
                enum "access" {
                  value 33;
                  description "Access route";
                }
                enum "access-internal" {
                  value 34;
                  description
                    "Access-internal route";
                }
                enum "anchor" {
                  value 35;
                  description "Anchor route";
                }
                enum "bgp-static" {
                  value 36;
                  description "BGP static route";
                }
                enum "multipath" {
                  value 37;
                  description
                    "Locally generated Multipath route";
                }
                enum "vpls" {
                  value 38;
                  description
                    "Virtual Private LAN Service";
                }
                enum "bgp-ls-epe" {
                  value 39;
                  description
                    "BGP egress peering using BGP-LS";
                }
              }
              description
                "Name of protocol that is source for entries";
            }
    
            leaf advertising-protocol-name {
              type enumeration {
                enum "bgp" {
                  value 0;
                  description
                    "Border Gateway Protocol";
                }
                enum "dvmrp" {
                  value 1;
                  description
                    "Distance Vector Multicast Routing Protocol";
                }
                enum "pim" {
                  value 2;
                  description
                    "Protocol Independent Multicast";
                }
                enum "rip" {
                  value 3;
                  description
                    "Routing Information Protocol";
                }
                enum "ripng" {
                  value 4;
                  description
                    "Routing Information Protocol for IPv6";
                }
                enum "msdp" {
                  value 5;
                  description
                    "Multicast Source Discovery Protocol";
                }
              }
              description
                "Name of dynamic routing protocol";
            }
    
            leaf neighbor {
              type jt:ipaddr-scoped;
              description
                "IP address of neighbor (local for RIP and RIPng)";
            }
    
            leaf receive-protocol-name {
              type enumeration {
                enum "bgp" {
                  value 0;
                  description
                    "Border Gateway Protocol";
                }
                enum "rip" {
                  value 1;
                  description
                    "Routing Information Protocol";
                }
                enum "ripng" {
                  value 2;
                  description
                    "Routing Information Protocol for IPv6";
                }
                enum "dvmrp" {
                  value 3;
                  description
                    "Distance Vector Multicast Routing Protocol";
                }
                enum "pim" {
                  value 4;
                  description
                    "Protocol Independent Multicast";
                }
                enum "msdp" {
                  value 5;
                  description
                    "Multicast Source Discovery Protocol";
                }
              }
              description
                "Name of dynamic routing protocol";
            }
    
            leaf peer {
              type jt:ipaddr-scoped;
              description
                "IP address of neighbor";
            }
    
            leaf match-prefix {
              type string;
              description
                "Regular expression to match formatted prefix";
            }
    
            leaf aspath-regex {
              type string;
              description
                "BGP AS path regular expression for entries to match";
            }
    
            leaf-list community {
              type string;
              ordered-by user;
              description
                "Identifier for community (can include wildcards)";
            }
    
            leaf no-community {
              type empty;
              description
                "Show entries with no associated community";
            }
    
            leaf community-name {
              type string;
              description
                "Name of configured community policy to match";
            }
    
            leaf hidden {
              type empty;
              description "Show hidden entries";
            }
    
            leaf validation-state {
              type enumeration {
                enum "unverified" {
                  value 0;
                  description
                    "Unverified route validation state";
                }
                enum "unknown" {
                  value 1;
                  description
                    "Unknown route validation state";
                }
                enum "valid" {
                  value 2;
                  description
                    "Valid route validation state";
                }
                enum "invalid" {
                  value 3;
                  description
                    "Invalid route validation state";
                }
              }
              description
                "Show entries with a given validation state";
            }
    
            leaf ne-id {
              type jt:ipaddr;
              description
                "INE Identifier ipaddress";
            }
    
            container fabric-route-type {
              leaf ne-port {
                type string;
                description "NE-PORT id";
              }
    
              leaf mstp-root {
                type union {
                  type uint32;
                  type string {
                    pattern "<.*>|$.*";
                  }
                }
                description "MSTP-ROOT id";
              }
    
              leaf indirect-nexthop {
                type union {
                  type uint32;
                  type string {
                    pattern "<.*>|$.*";
                  }
                }
                description
                  "Indirect nexthop index";
              }
    
              leaf l2l3-map {
                type union {
                  type uint32;
                  type string {
                    pattern "<.*>|$.*";
                  }
                }
                description "Layer 2 domain ID";
              }
    
              leaf mcast-layer2-domain-port {
                type empty;
                description
                  "Multicast layer2 domain port routes";
              }
    
              leaf mcast-group {
                type jt:ipaddr;
                description "Multicast group ID";
              }
    
              leaf mcast-member-map-key {
                type union {
                  type uint32;
                  type string {
                    pattern "<.*>|$.*";
                  }
                }
                description
                  "Multicast membership map key";
              }
    
              leaf mcast-routes {
                type empty;
                description
                  "All multicast routes";
              }
    
              leaf layer3-mcast-routes {
                type empty;
                description
                  "All layer3 multicast routes";
              }
    
              leaf layer3-mcast-joins {
                type empty;
                description
                  "All layer3 multicast joins";
              }
    
              leaf mcast-l2mcast-port {
                type empty;
                description
                  "Multicast layer2 mcast port routes";
              }
    
              leaf mcast-ssmcast-port {
                type empty;
                description
                  "Multicast SSM mcast port routes";
              }
    
              leaf mcast-source {
                type jt:ipaddr;
                description
                  "Multicast Source ID";
              }
    
              leaf mcast-corekey-route {
                type empty;
                description
                  "Multicast corekey routes";
              }
            }  // container fabric-route-type
    
            leaf l2domain-id {
              type union {
                type uint32;
                type string {
                  pattern "<.*>|$.*";
                }
              }
              description "L2Domain Id";
            }
    
            leaf bridge-route-mac-address {
              type jt:mac-addr;
              description "MAC address";
            }
    
            leaf bridge-route-group-id {
              type jt:ipaddr;
              description "Multicast Group ID";
            }
    
            leaf mcast-source-id {
              type jt:ipaddr;
              description "Multicast Source ID";
            }
    
            leaf expanded-nh {
              type empty;
              description
                "Show nexthops in expanded format";
            }
    
            leaf nh-detail {
              type empty;
              description
                "Show nexthops in new version";
            }
    
            leaf fib-expanded-nh {
              type empty;
              description
                "Show fib nexthops in expanded format";
            }
    
            leaf output-queue {
              type enumeration {
                enum "priority-1" {
                  value 0;
                  description
                    "BGP output queue priority 1";
                }
                enum "priority-2" {
                  value 1;
                  description
                    "BGP output queue priority 2";
                }
                enum "priority-3" {
                  value 2;
                  description
                    "BGP output queue priority 3";
                }
                enum "priority-4" {
                  value 3;
                  description
                    "BGP output queue priority 4";
                }
                enum "priority-5" {
                  value 4;
                  description
                    "BGP output queue priority 5";
                }
                enum "priority-6" {
                  value 5;
                  description
                    "BGP output queue priority 6";
                }
                enum "priority-7" {
                  value 6;
                  description
                    "BGP output queue priority 7";
                }
                enum "priority-8" {
                  value 7;
                  description
                    "BGP output queue priority 8";
                }
                enum "priority-9" {
                  value 8;
                  description
                    "BGP output queue priority 9";
                }
                enum "priority-10" {
                  value 9;
                  description
                    "BGP output queue priority 10";
                }
                enum "priority-11" {
                  value 10;
                  description
                    "BGP output queue priority 11";
                }
                enum "priority-12" {
                  value 11;
                  description
                    "BGP output queue priority 12";
                }
                enum "priority-13" {
                  value 12;
                  description
                    "BGP output queue priority 13";
                }
                enum "priority-14" {
                  value 13;
                  description
                    "BGP output queue priority 14";
                }
                enum "priority-15" {
                  value 14;
                  description
                    "BGP output queue priority 15";
                }
                enum "priority-16" {
                  value 15;
                  description
                    "BGP output queue priority 16";
                }
                enum "expedited" {
                  value 16;
                  description
                    "BGP output queue expedited";
                }
              }
              description
                "BGP output-queue for advertising protocol";
            }
    
            leaf display-client-data {
              type empty;
              description "Show client details";
            }
    
            leaf programmed {
              type empty;
              description
                "Show API-programmed routes";
            }
    
            leaf logical-system {
              type string;
              description
                "Name of logical system, or 'all'";
            }
          }
    
          output {
            choice output_c {
              leaf output {
                type string;
              }
              anyxml route-information;
              anyxml multi-routing-engine-results;
            }  // choice output_c
          }
        }  // rpc get-route-information
    
        rpc get-forwarding-table-information {
          description
            "Show entries in all forwarding tables";
          input {
            uses command-forwarding;
    
            leaf level {
              type enumeration {
                enum "detail" {
                  value 0;
                  description
                    "Display all routes";
                }
                enum "extensive" {
                  value 1;
                  description
                    "Display extensive information about routes";
                }
              }
            }
    
            leaf multicast {
              type empty;
              description
                "Display multicast routes";
            }
    
            leaf family {
              type enumeration {
                enum "inet" {
                  value 0;
                  description
                    "IP version 4 (IPv4)";
                }
                enum "inet6" {
                  value 1;
                  description
                    "IP version 6 (IPv6)";
                }
                enum "unix" {
                  value 2;
                  description "UNIX";
                }
                enum "iso" {
                  value 3;
                  description
                    "International Standards Organization protocol";
                }
                enum "tnp" {
                  value 4;
                  description
                    "Trivial Network Protocol";
                }
                enum "mpls" {
                  value 5;
                  description
                    "Multiprotocol Label Switching";
                }
                enum "vpls" {
                  value 6;
                  description
                    "Virtual private LAN service";
                }
                enum "bridge" {
                  value 7;
                  description
                    "Bridge (Layer 2 switching)";
                }
                enum "evpn" {
                  value 8;
                  description
                    "Ethernet Virtual Private LAN services";
                }
                enum "vlan-classification" {
                  value 9;
                  description
                    "VLAN classification table";
                }
                enum "ethernet-switching" {
                  value 10;
                  description
                    "Switch forwarding table";
                }
                enum "fibre-channel" {
                  value 11;
                  description
                    "Fibre channel forwarding table";
                }
                enum "fmembers" {
                  value 12;
                  description
                    "Fibre channel membership table";
                }
                enum "fabric-multicast" {
                  value 13;
                  description
                    "Fabric multicast routing table";
                }
                enum "fabric-replication" {
                  value 14;
                  description
                    "Fabric replication routing table";
                }
                enum "mcsnoop-inet" {
                  value 15;
                  description
                    "Multicast Snooping INET";
                }
                enum "mcsnoop-inet6" {
                  value 16;
                  description
                    "Multicast Snooping INET6";
                }
                enum "satellite-vpls" {
                  value 17;
                  description "Satellite VPLS";
                }
                enum "satellite-inet" {
                  value 18;
                  description
                    "Multicast Satellite INET";
                }
                enum "satellite-inet6" {
                  value 19;
                  description
                    "Multicast Satellite INET6";
                }
                enum "evpn-mcsnoop" {
                  value 20;
                  description
                    "Multicast Snooping EVPN";
                }
                enum "evpn-mcsnoop-v6" {
                  value 21;
                  description
                    "Multicast Snooping EVPN INET6";
                }
                enum "bier" {
                  value 22;
                  description "BIER multicast";
                }
              }
              description "Name of family";
            }
    
            leaf vpn {
              type string;
              description "Name of VPN instance";
            }
    
            leaf table {
              type string;
              description
                "Name of routing table";
            }
    
            leaf interface-name {
              type string;
              description "Interface name";
            }
    
            leaf vlan {
              type string;
              description "VLAN name";
            }
    
            leaf bridge-domain {
              type string;
              description
                "Name of bridging domain";
            }
    
            leaf summary {
              type empty;
              description
                "Display count of routes instead of details";
            }
    
            leaf matching {
              type string;
              description
                "IP prefix and length for entries to match";
            }
    
            leaf destination {
              type string;
              description "Destination prefix";
            }
    
            leaf learning-vlan-id {
              type string;
              description "Learning VLAN";
            }
    
            leaf label {
              type union {
                type uint32;
                type string {
                  pattern "<.*>|$.*";
                }
              }
              description
                "Label for entries to match";
            }
    
            leaf ccc {
              type union {
                type jt:interface-name;
                type string {
                  pattern "<.*>|$.*";
                }
              }
              description
                "Circuit cross-connect interface name for entries to match";
            }
    
            leaf bfr-id {
              type union {
                type string {
                  pattern "<.*>|$.*";
                }
                type uint32 {
                  range "1 .. 65535";
                }
              }
              description
                "BFR ID: BIER prefix to match";
            }
    
            leaf all {
              type empty;
              description
                "Display all routing forwarding-tables";
            }
          }
    
          output {
            choice output_c {
              leaf output {
                type string;
              }
              anyxml forwarding-table-information;
              anyxml multi-routing-engine-results;
            }  // choice output_c
          }
        }  // rpc get-forwarding-table-information
    
        rpc get-fib-localization-information {
          description
            "Show route localization information";
          input {
            uses command-forwarding;
    
            leaf detail {
              type empty;
              description "Show detailed output";
            }
          }
    
          output {
            choice output_c {
              leaf output {
                type string;
              }
              anyxml fib-localization-information;
              anyxml multi-routing-engine-results;
            }  // choice output_c
          }
        }  // rpc get-fib-localization-information
    
        rpc get-vpn-localization-information {
          description
            "Show vpn route localization information";
          input {
            leaf vpn-name {
              type string;
              description
                "Name of the vpn instance";
            }
    
            leaf family {
              type enumeration {
                enum "inet" {
                  value 0;
                  description
                    "IP version 4 (IPv4)";
                }
                enum "inet6" {
                  value 1;
                  description
                    "IP version 6 (IPv6)";
                }
              }
              description "Name of family";
            }
    
            leaf level {
              type enumeration {
                enum "terse" {
                  value 0;
                  description
                    "Display terse output";
                }
                enum "brief" {
                  value 1;
                  description
                    "Display brief output";
                }
                enum "detail" {
                  value 2;
                  description
                    "Display detailed output";
                }
              }
            }
          }
    
          output {
            choice output_c {
              leaf output {
                type string;
              }
              anyxml vpn-localization-information;
              anyxml multi-routing-engine-results;
            }  // choice output_c
          }
        }  // rpc get-vpn-localization-information
    
        rpc get-route-tracking-information {
          description
            "Show RPM route tracking information";
          input {
            leaf owner {
              type string {
                length "1 .. 32";
              }
              description "Name of owner";
            }
    
            leaf test {
              type string {
                length "1 .. 32";
              }
              description "Name of test";
            }
    
            leaf destination {
              type jt:ipprefix-optional;
              description
                "IP address and optional prefix length of destination";
            }
          }
    
          output {
            choice output_c {
              leaf output {
                type string;
              }
              anyxml route-tracking-information;
              anyxml multi-routing-engine-results;
            }  // choice output_c
          }
        }  // rpc get-route-tracking-information
    
        rpc get-instance-information {
          description
            "Show routing instances information";
          input {
            choice daemon-select {
              leaf rib-sharding {
                type string;
                description "Name of rib shard";
              }
            }  // choice daemon-select
    
            leaf verbosity_level {
              type enumeration {
                enum "summary" {
                  value 0;
                  description
                    "Display summary output";
                }
                enum "brief" {
                  value 1;
                  description
                    "Display brief output (default)";
                }
                enum "detail" {
                  value 2;
                  description
                    "Display detailed output";
                }
                enum "extensive" {
                  value 3;
                  description
                    "Display extensive output";
                }
              }
              default "brief";
            }
    
            leaf instance-name {
              type string;
              description
                "Particular instance name";
            }
    
            leaf logical-system {
              type string;
              description
                "Name of logical system, or 'all'";
            }
          }
    
          output {
            choice output_c {
              leaf output {
                type string;
              }
              anyxml instance-information;
              anyxml multi-routing-engine-results;
            }  // choice output_c
          }
        }  // rpc get-instance-information
    
        rpc get-operational-routing-instance-information {
          description
            "Show operational routing instances";
          output {
            choice output_c {
              leaf output {
                type string;
              }
              anyxml operational-routing-instance-information;
              anyxml multi-routing-engine-results;
            }  // choice output_c
          }
        }  // rpc get-operational-routing-instance-information
    
        rpc get-localize-routing-instance-information {
          description
            "Show instances localization mapping";
          output {
            choice output_c {
              leaf output {
                type string;
              }
              anyxml localize-routing-instance-information;
              anyxml multi-routing-engine-results;
            }  // choice output_c
          }
        }  // rpc get-localize-routing-instance-information
    
        rpc get-rtflow-dep-information {
          description
            "Show flow route validation tables";
          input {
            choice daemon-select {
              leaf rib-sharding {
                type string;
                description "Name of rib shard";
              }
            }  // choice daemon-select
    
            leaf verbosity_level {
              type enumeration {
                enum "brief" {
                  value 0;
                  description
                    "Display brief output (default)";
                }
                enum "detail" {
                  value 1;
                  description
                    "Display detailed output";
                }
              }
              default "brief";
            }
    
            leaf table {
              type string;
              description
                "Name of unicast routing table";
            }
    
            leaf destination {
              type jt:ipprefix-optional;
              description
                "IP address and optional prefix length of destination";
            }
    
            leaf logical-system {
              type string;
              description
                "Name of logical system, or 'all'";
            }
          }
    
          output {
            choice output_c {
              leaf output {
                type string;
              }
              anyxml rtflow-dep-information;
              anyxml multi-routing-engine-results;
            }  // choice output_c
          }
        }  // rpc get-rtflow-dep-information
    
        rpc get-route-resolution-information {
          description
            "Show next-hop resolution database";
          input {
            choice daemon-select {
              leaf rib-sharding {
                type string;
                description "Name of rib shard";
              }
            }  // choice daemon-select
    
            leaf verbosity_level {
              type enumeration {
                enum "brief" {
                  value 0;
                  description
                    "Display brief output (default)";
                }
                enum "detail" {
                  value 1;
                  description
                    "Display detailed output";
                }
                enum "extensive" {
                  value 2;
                  description
                    "Display extensive output";
                }
              }
              default "brief";
            }
    
            leaf prefix {
              type string;
              description
                "IP prefix/length of destination";
            }
    
            leaf table {
              type string;
              description
                "Name of resolving table";
            }
    
            leaf index {
              type union {
                type uint32;
                type string {
                  pattern "<.*>|$.*";
                }
              }
              description
                "Index of resolution tree";
            }
    
            leaf logical-system {
              type string;
              description
                "Name of logical system, or 'all'";
            }
          }
    
          output {
            choice output_c {
              leaf output {
                type string;
              }
              anyxml route-resolution-information;
              anyxml multi-routing-engine-results;
            }  // choice output_c
          }
        }  // rpc get-route-resolution-information
    
        rpc get-route-resolution-summary {
          description "Show summary of tree";
          input {
            choice daemon-select {
              leaf rib-sharding {
                type string;
                description "Name of rib shard";
              }
              leaf logical-system {
                type string;
                description
                  "Name of logical system, or 'all'";
              }
            }  // choice daemon-select
          }
    
          output {
            choice output_c {
              leaf output {
                type string;
              }
              anyxml route-resolution-information;
              anyxml multi-routing-engine-results;
            }  // choice output_c
          }
        }  // rpc get-route-resolution-summary
    
        rpc get-route-resolution-unresolved-information {
          description
            "Show routes that could not be resolved";
          input {
            leaf verbosity_level {
              type enumeration {
                enum "brief" {
                  value 0;
                  description
                    "Display brief output (default)";
                }
                enum "detail" {
                  value 1;
                  description
                    "Display detailed output";
                }
              }
              default "brief";
            }
    
            choice daemon-select {
              leaf rib-sharding {
                type string;
                description "Name of rib shard";
              }
              leaf logical-system {
                type string;
                description
                  "Name of logical system, or 'all'";
              }
            }  // choice daemon-select
          }
    
          output {
            choice output_c {
              leaf output {
                type string;
              }
              anyxml route-resolution-unresolved-information;
              anyxml multi-routing-engine-results;
            }  // choice output_c
          }
        }  // rpc get-route-resolution-unresolved-information
    
        rpc get-route-resolution-scheme {
          description
            "Show custom resolution schemes for route next-hop resolution";
          input {
            choice daemon-select {
              leaf logical-system {
                type string;
                description
                  "Name of logical system, or 'all'";
              }
            }  // choice daemon-select
    
            leaf all {
              type empty;
              mandatory true;
              description
                "Show all Resolution schemes";
            }
          }
    
          output {
            choice output_c {
              leaf output {
                type string;
              }
              anyxml route-resolution-scheme-information;
              anyxml multi-routing-engine-results;
            }  // choice output_c
          }
        }  // rpc get-route-resolution-scheme
    
        rpc get-route-summary-information {
          description
            "Show routing table statistics";
          input {
            choice daemon-select {
              leaf rib-sharding {
                type string;
                description "Name of rib shard";
              }
            }  // choice daemon-select
    
            leaf tenant {
              type string;
              description
                "Name of tenant, or 'all'";
            }
    
            leaf table {
              type string;
              description
                "Name of routing table";
            }
    
            leaf logical-system {
              type string;
              description
                "Name of logical system, or 'all'";
            }
          }
    
          output {
            choice output_c {
              leaf output {
                type string;
              }
              anyxml route-summary-information;
              anyxml multi-routing-engine-results;
            }  // choice output_c
          }
        }  // rpc get-route-summary-information
    
        rpc get-route-martians {
          description "Show martian networks";
          input {
            choice daemon-select {
              leaf rib-sharding {
                type string;
                description "Name of rib shard";
              }
            }  // choice daemon-select
    
            leaf table {
              type string;
              description
                "Name of routing table";
            }
    
            leaf logical-system {
              type string;
              description
                "Name of logical system, or 'all'";
            }
          }
    
          output {
            choice output_c {
              leaf output {
                type string;
              }
              anyxml route-information;
              anyxml multi-routing-engine-results;
            }  // choice output_c
          }
        }  // rpc get-route-martians
    
        rpc get-route-cumulative {
          description
            "Show the cumulative routes in VRF table";
          input {
            choice daemon-select {
              leaf rib-sharding {
                type string;
                description "Name of rib shard";
              }
            }  // choice daemon-select
    
            leaf vpn-family {
              type enumeration {
                enum "inet.0" {
                  value 0;
                  description
                    "Display the inet.0 vrf instance";
                }
                enum "inet6.0" {
                  value 1;
                  description
                    "Display the inet6.0 vrf instance";
                }
              }
              mandatory true;
            }
    
            leaf logical-system {
              type string;
              description
                "Name of logical system, or 'all'";
            }
          }
    
          output {
            choice output_c {
              leaf output {
                type string;
              }
              anyxml route-information;
              anyxml multi-routing-engine-results;
            }  // choice output_c
          }
        }  // rpc get-route-cumulative
    
        rpc get-route-rib-groups {
          description
            "Show group of routing tables";
          input {
            choice daemon-select {
              leaf rib-sharding {
                type string;
                description "Name of rib shard";
              }
              leaf logical-system {
                type string;
                description
                  "Name of logical system, or 'all'";
              }
            }  // choice daemon-select
          }
    
          output {
            choice output_c {
              leaf output {
                type string;
              }
              anyxml route-information;
              anyxml multi-routing-engine-results;
            }  // choice output_c
          }
        }  // rpc get-route-rib-groups
    
        rpc get-route-snooping-information {
          description
            "Show routes for multicast snooping";
          input {
            leaf destination {
              type jt:ipprefix-optional;
              description
                "IP address and optional prefix length of destination";
            }
    
            leaf all {
              type empty;
              description
                "Show all entries, including hidden entries";
            }
    
            leaf level {
              type enumeration {
                enum "terse" {
                  value 0;
                  description
                    "Display terse output";
                }
                enum "brief" {
                  value 1;
                  description
                    "Display brief output";
                }
                enum "detail" {
                  value 2;
                  description
                    "Display detailed output";
                }
                enum "extensive" {
                  value 3;
                  description
                    "Display extensive output";
                }
              }
            }
    
            leaf match {
              type enumeration {
                enum "best" {
                  value 0;
                  description
                    "Show longest matching route";
                }
                enum "exact" {
                  value 1;
                  description
                    "Show routes that match exactly";
                }
                enum "range" {
                  value 2;
                  description
                    "Show all entries in prefix range";
                }
              }
            }
    
            leaf table {
              type string;
              description
                "Name of routing table";
            }
    
            leaf logical-system {
              type string;
              description
                "Name of logical system, or 'all'";
            }
          }
    
          output {
            choice output_c {
              leaf output {
                type string;
              }
              anyxml route-information;
              anyxml multi-routing-engine-results;
            }  // choice output_c
          }
        }  // rpc get-route-snooping-information
    
        rpc get-route-snooping-summary {
          description
            "Show routing table statistics";
          input {
            leaf logical-system {
              type string;
              description
                "Name of logical system, or 'all'";
            }
          }
    
          output {
            choice output_c {
              leaf output {
                type string;
              }
              anyxml route-summary-information;
              anyxml multi-routing-engine-results;
            }  // choice output_c
          }
        }  // rpc get-route-snooping-summary
    
        rpc get-rtexport-table-information {
          description
            "Show instance export information";
          input {
            choice daemon-select {
              leaf rib-sharding {
                type string;
                description "Name of rib shard";
              }
            }  // choice daemon-select
    
            leaf verbosity_level {
              type enumeration {
                enum "brief" {
                  value 0;
                  description
                    "Display brief output (default)";
                }
                enum "detail" {
                  value 1;
                  description
                    "Display detailed output";
                }
              }
              default "brief";
            }
    
            leaf table-name {
              type string;
              description "Name of table";
            }
    
            leaf logical-system {
              type string;
              description
                "Name of logical system, or 'all'";
            }
          }
    
          output {
            choice output_c {
              leaf output {
                type string;
              }
              anyxml rtexport-table-information;
              anyxml multi-routing-engine-results;
            }  // choice output_c
          }
        }  // rpc get-rtexport-table-information
    
        rpc get-rtexport-target-information {
          description
            "Show VPN routing and forwarding route target export information";
          input {
            leaf verbosity_level {
              type enumeration {
                enum "brief" {
                  value 0;
                  description
                    "Display brief output (default)";
                }
                enum "detail" {
                  value 1;
                  description
                    "Display detailed output";
                }
              }
              default "brief";
            }
    
            choice daemon-select {
              leaf rib-sharding {
                type string;
                description "Name of rib shard";
              }
            }  // choice daemon-select
    
            leaf-list community {
              type string;
              ordered-by user;
              description
                "Community to match (can include wildcards)";
            }
    
            leaf logical-system {
              type string;
              description
                "Name of logical system, or 'all'";
            }
          }
    
          output {
            choice output_c {
              leaf output {
                type string;
              }
              anyxml rtexport-target-information;
              anyxml multi-routing-engine-results;
            }  // choice output_c
          }
        }  // rpc get-rtexport-target-information
    
        rpc get-rtexport-instance-information {
          description
            "Show instance configuration and runtime information";
          input {
            leaf verbosity_level {
              type enumeration {
                enum "brief" {
                  value 0;
                  description
                    "Display brief output (default)";
                }
                enum "detail" {
                  value 1;
                  description
                    "Display detailed output";
                }
              }
              default "brief";
            }
    
            choice daemon-select {
              leaf rib-sharding {
                type string;
                description "Name of rib shard";
              }
            }  // choice daemon-select
    
            leaf instance-name {
              type string;
              description "Name of instance";
            }
    
            leaf logical-system {
              type string;
              description
                "Name of logical system, or 'all'";
            }
          }
    
          output {
            choice output_c {
              leaf output {
                type string;
              }
              anyxml rtexport-instance-information;
              anyxml multi-routing-engine-results;
            }  // choice output_c
          }
        }  // rpc get-rtexport-instance-information
    
        grouping command-forwarding {
          choice chassis-selector {
            leaf all-chassis {
              type empty;
              description "All chassis";
            }
            leaf all-lcc {
              type empty;
              description "All LCC chassis";
            }
            leaf scc {
              type empty;
              description "SCC";
            }
            leaf sfc {
              type union {
                type string {
                  pattern "<.*>|$.*";
                }
                type uint32;
              }
              description "SFC";
            }
            leaf lcc {
              type union {
                type string {
                  pattern "<.*>|$.*";
                }
                type uint32;
              }
              description "Specific LCC";
            }
            leaf node {
              type string;
              description "Specific node";
            }
            leaf bsys {
              type empty;
              description "Base system";
            }
            leaf gnf {
              type union {
                type string {
                  pattern "<.*>|$.*";
                }
                type uint32 {
                  range "1 .. 10";
                }
              }
              description
                "Specific guest network function";
            }
            leaf all-gnfs {
              type empty;
              description
                "All guest network functions";
            }
            leaf all-system {
              type empty;
              description
                "All system (BSYS and GNFs)";
            }
            leaf server {
              type union {
                type string {
                  pattern "<.*>|$.*";
                }
                type uint32 {
                  range "0 .. 1";
                }
              }
              description "Specific server slot";
            }
            leaf all-servers {
              type empty;
              description "All servers";
            }
            leaf vnf {
              type string;
              description
                "Specific virtual-network-function";
            }
            leaf all-vnfs {
              type empty;
              description
                "All virtual-network-functions";
            }
          }  // choice chassis-selector
    
          choice re-selector {
            leaf re0 {
              type empty;
              description "RE0";
            }
            leaf re1 {
              type empty;
              description "RE1";
            }
            leaf routing-engine {
              type enumeration {
                enum "local" {
                  value 0;
                  description
                    "Local routing engine";
                }
                enum "other" {
                  value 1;
                  description
                    "Other routing engine";
                }
                enum "master" {
                  value 2;
                  description
                    "Master routing engine";
                }
                enum "backup" {
                  value 3;
                  description
                    "Backup routing engine";
                }
                enum "both" {
                  value 4;
                  description
                    "Both routing engines";
                }
              }
              description
                "Specific routing engine";
            }
          }  // choice re-selector
    
          choice lr-selector {
            leaf logical-system {
              type string;
              description
                "Name of logical system, or 'all'";
            }
          }  // choice lr-selector
    
          choice tenant-selector {
            leaf tenant {
              type string;
              description
                "Name of tenant, or 'all'";
            }
          }  // choice tenant-selector
    
          choice vc-selector {
            leaf local {
              type empty;
              description
                "Local virtual chassis member";
            }
            leaf all-members {
              type empty;
              description
                "All virtual chassis members";
            }
            leaf member {
              type union {
                type string {
                  pattern "<.*>|$.*";
                }
                type uint32;
              }
              description
                "Specific virtual chassis member";
            }
          }  // choice vc-selector
        }  // grouping command-forwarding
      }  // module junos-nfx-rpc-route
    

© 2023 YumaWorks, Inc. All rights reserved.