This IDL defines the following message type(s)


Routing table identifier as an integer value uniquely identifying a table.

Field Type Description
id uint32 Table identifier.


Network address defined for each supported address family.

Field Type Description
inet IpAddress IPv4 destination prefix.
inet6 IpAddress IPv6 destination prefix.
mpls MplsAddress MPLS label.


Route destination prefix defined for each supported address family.

Field Type Description
inet IpAddress IPv4 destination prefix.
inet6 IpAddress IPv6 destination prefix.
inetvpn L3vpnAddress IPv4 VPN (L3VPN) destination prefix.
inet6vpn L3vpnAddress IPv6 VPN (L3VPN) destination prefix.
labeled_inet IpAddress IPv4 Labeled-Unicast destination prefix.
labeled_inet6 IpAddress IPv6 Labeled-Unicast destination prefix.
inet_srte_policy SRTEAddress IPv4 SR-TE policy prefix.
inet6_srte_policy SRTEAddress IPv6 SR-TE policy prefix.


This is an optional parameter. Note IPv6 Binding SID not supported so in SidEntry only MPLS label SID is defined.

Field Type Description
binding_sr_id SidEntry Binding SID


SR-TE address mesaage type with key fileds destination,color and distinguisher.

Field Type Description
destination IpAddress Identifies endpoint of the policy.
sr_color SRTEColor Value used to match destination prefix to the policy.
sr_distinguisher SRTEDistinguisher SR-TE Distinguisher


Routing table (RIB) name uniquely identifying a route table, formatted as a string per JUNOS convention.

Field Type Description
name string Table name.


Address specific route data for IPv4 and IPv6 SRTE address families.

Field Type Description
binding_sid SRTEBindingSID Specifies the BSID of the path. Optional parameter, there is no default value.
preference uint32 Preference value of the route data.
segment_lists SRTESegmentList List of Explicit paths towards endpoint.


A list of individual communties.

Field Type Description
communities Community An unordered list of zero, one, or more individual communities. A Community list may not exceed 256 communities.


Value that uniquely identifies the policy in the context of tuple. SR policy originator can use this to make policy unique in terms of BGP NLRI by setting different values for multiple occurrences of same SR policy.

Field Type Description
distinguisher uint32 SR policy originator.


Value used to match destination prefix to the policy. All prefixes of a particular color value is steered into policy that has the same color value.

Field Type Description
color uint32 SR policy color used to match destination prefix to policy..


SR-TE Segment. Only SegmentType1 is currently supported. Other types are for internal use only.

Field Type Description
segment_type1 SegmentType1 Segment type1, only supported segment type at present.


A single MPLS Label entry as defined by RFC 3032.

Field Type Description
label uint32 A valid 20-bit unsigned label.
traffic_class uint32 A valid 3-bit unsigned traffic class/QoS value less than decimal value 8. Optional (defaults to 0). READ-ONLY.
ttl uint32 A valid 8-bit unsigned TTL value less than decimal value 256. Optional (defaults to 0). READ-ONLY.
bottom_of_stack bool Indicates that this Label stack entry the bottom of the label stack. Bottom-of-Stack will always be set by the library and must never set by the client. READ-ONLY.


4-byte IPv4 address and 2-byte assigned number.

Field Type Description
ip_address IpAddress 4 byte IP address
assigned_number uint32 2 byte assigned number subfield


2-byte AS and 4-byte assigned number.

Field Type Description
as_number uint32 2 byte AS number
assigned_number uint32 4 byte assigned number subfield


4-byte AS and 2-byte assigned number.

Field Type Description
as_number uint32 4 byte AS number.
assigned_number uint32 2 byte assigned number subfield.


List of Explicit paths towards endpoint. One or more segment lists to program. Segment List entries. Minimum one segment need to be set.

Field Type Description
weight uint32 Weight associated with segment list.
segments SRTESegment Segments, one or more segments can be programmed.


A label stack constructed according to the rules of RFC 3032.

Field Type Description
entries LabelStackEntry label stack entries.


Holds the MPLS label used to represent label address in route lookups.

Field Type Description
label uint32 A valid 20-bit unsigned label value.


Segment Type 1: SID only, in the form of MPLS Label.

Field Type Description
sid_label_entry LabelEntry MPLS label for the SID.


Routing table (RIB) may either be specified as a string or RPD table ID.

Field Type Description
id RouteTableId Table id to which the route belongs.
name RouteTableName Table name to which the route belongs.


AS path through which the route was learned. An AS Path is a string composed of an series of AS numbers separated by whitespace special delimiters. The following special delimiting characters are used for signifying confederations, confederation-sets, and AS-sets: [ ] - Brackets enclose the local AS number associated with the AS set if more than one AS number is configured on the routing device, or if AS path prepending is configured. ( ) - Parentheses enclose a confederation. ( [ ] ) - Parentheses and brackets enclose a confederation set. Programmed AS Paths implicitly have path origin IGP.

Field Type Description
aspath string A string listing AS numbers.


A single MPLS Label stack entry with the operation for the label entry.

Field Type Description
opcode LabelOperation operation code.
label_entry LabelEntry label entry.


A single community is a string identifying a regular, extended, or well-known community name or values with no whitespace. The communities will be recognized: Well-known communities: no-export no-advertise no-export-confed llgr-stale no-llgr RFC 1997 communities: domain-id:ipaddress:0 domain-id-vendor: : Route targets extended communities: target:ipv4-address:16 bit# target:16bit#:32bit# target:as2b:16bit#:32bit# target:as4b:32bit#:16bit# Origin extended communities: origin:ipv4-address:16 bit# origin:16bit#:32bit# Bandwidth management extended communities: bandwidth:16bit#:bw {traffic-rate}:16 bit#:bw Redirect extended communities: redirect:ipv4-address:16 bit# redirect:16bit#:32bit# Tunnel encapsulation extended communities: encapsulation:0L:tunnel-type

Field Type Description
community string A string that uniquely identifies a single regular,extended, or well-known community.


To distinguish customer VPN routes. within the BGP NLRIs. Valid RD can be type 0, type 1, or type 2.

Field Type Description
rd0 RdType0 Type 0 RD.
rd1 RdType1 Type 1 RD.
rd2 RdType2 Type 2 RD.


L3VPN address is composed of a route distinguisher (RD) and IP address.

Field Type Description
rd RouteDistinguisher Route distinguisher.
vpn_addr IpAddress IPv4 or IPv6 VPN customer address.


Segment Identifier (SID). Either 4 octet MPLS SID or a 16 octet IPv6 SID. Currently IPv6 SID is not supported.

Field Type Description
sid_label_entry LabelEntry MPLS label for the SID.


message type with Route data defined for each supported address family.

Field Type Description
srte_policy_data SRTERouteData Address specific data.



The table format allows the client to request the format that the server should use to represent tables in replies sent by the server to the client.

Value Description
TABLE_STRING The server will represent tables by name as strings.
TABLE_ID The server will represent tables by RPD table ID.


Routing table destination address family types.

Value Description
RT_AF_UNSPEC Unspecified.
RT_AF_INET IPv4 destination prefix.
RT_AF_INET6 IPv6 destination prefix.
RT_AF_INETVPN IPv4 VPN (L3VPN) destination prefix.
RT_AF_INET6VPN IPv6 VPN (L3VPN) destination prefix.
RT_AF_LABELED_INET IPv4 Labeled-Unicast destination prefix.
RT_AF_LABELED_INET6 IPv6 Labeled-Unicast destination prefix.
RT_AF_INET_SRTE IPv4 SRTE destination prefix.
RT_AF_INET6_SRTE IPv6 SRTE destination prefix.


define protocols that added the route. RTPROTO_OTHER denotes other internal protocols currently not exposed to API.

Value Description
PROTO_ANY Matches any protocol.
PROTO_DIRECT route is directly connected.
PROTO_LOCAL route to local side of P2P interface.
PROTO_KERNEL route was installed in kernel previously.
PROTO_REDIRECT route was received via a redirect.
PROTO_OSPF OSPF2 AS Internal routes.
PROTO_OSPF3 OSPF3 AS Internal routes.
PROTO_OSPF_ANY OSPF AS Internal routes.
PROTO_RIP Routing Information protocol.
PROTO_RIPNG Routing Information protocol for v6.
PROTO_BGP Border gateway protocol.
PROTO_STATIC route is static.
PROTO_AGGREGATE Aggregate route.
PROTO_DVMRP Distance Vector Multicast Routing Protocol.
PROTO_PIM Protocol Independent Multicast.
PROTO_MSDP Multicast Source Discovery Protocol.
PROTO_MPLS MPLS switching.
PROTO_CCC Circuit Cross-Connect.
PROTO_VPN VPN protocol, L3.
PROTO_MVPN MVPN protocol, L3.
PROTO_MCAST multicast info.
PROTO_L2VPN VPN protocol, L2.
PROTO_L2CKT l2circuit protocol.
PROTO_OTHER Protocols not exposed and internal to Routing backend.


MPLS label operation type.

Value Description
NOOP No operation.
POP Label removal.
PUSH Label Addition.
SWAP Label swap .