Junos OS interface IDL - Protocol Documentation

Table of Contents

dcd_service.proto

Top

AttributeRequestInfo

Message structure for attribute query command

FieldTypeLabelDescription
port_name string optional

Port name

ifl_unit Value32 optional

IFL index number

family FamilyType optional

Family

interface_address IpAddress optional

Interface IP address

arp_address IpAddress optional

ARP address

string_attr_list string_attr repeated

List of attributes

integer_attr_list integer_attr repeated

List of integer attributes

client_ctx int32 optional

Client CTX

request_id int64 optional

Request ID

AttributeResponseInfo

Message structure for attribute query response

FieldTypeLabelDescription
status ret_status optional

Status

error_message string optional

Error message

string_attr_list string_attr repeated

List of attributes

integer_attr_list integer_attr repeated

List of integer attributes

client_ctx int32 optional

Client CTX

request_id int64 optional

Request ID

ConfigResp

Response message for configuration commands

FieldTypeLabelDescription
status ret_status optional

Status

error_message string optional

Error message

request_id int64 optional

Request ID

client_ctx int32 optional

Client CTX

InterfaceAddressConfig

FieldTypeLabelDescription
port_name string optional

Port name

ifl_unit Value32 optional

IFL index number

family FamilyType optional

Address family

interface_address IpAddress optional

Interface IP address

string_attr_list string_attr repeated

List of address attributes

integer_attr_list integer_attr repeated

List of integer attributes

operation int32 optional

Operation

client_ctx int32 optional

Client CTX

request_id int64 optional

Request ID

InterfaceConfig

For IFD objects configurations

For example: set interfaces ge-1/1/6 vlan-tagging For example: set interfaces ge-1/1/6 encapsulation extended-vlan-bridge

FieldTypeLabelDescription
port_name string optional

Port name

tagging InterfaceTaggingType optional

Interface tagging type

encap InterfaceEncapsulationType optional

Interface encapsulation type

aggregate_members string repeated

List of members

string_attr_list string_attr repeated

List of interface attributes

integer_attr_list integer_attr repeated

List of integer attributes

operation int32 optional

Operation

client_ctx int32 optional

Client CTX

request_id int64 optional

Request ID

InterfaceFamilyConfig

For IFF objects configurations

Examples:

set interfaces ge-1/1/6 unit 0 vlan-id 100

set bridge-domains vlan-100 interface ge-1/1/6.0

set routing-instances vlan-100 interface ge-1/1/6.0

set interfaces ge-1/1/6 disable

FieldTypeLabelDescription
port_name string optional

Port name

ifl_unit Value32 optional

IFL index

family FamilyType optional

Family

string_attr_list string_attr repeated

Attribute list

integer_attr_list integer_attr repeated

Integer attribute list

operation int32 optional

Operation

client_ctx int32 optional

Client CTX

request_id int64 optional

Request ID

InterfaceLogicalConfig

For IFL objects configurations

Examples:

set interfaces ge-1/1/6 unit 0 vlan-id 100

set bridge-domains vlan-100 interface ge-1/1/6.0

set routing-instances vlan-100 interface ge-1/1/6.0

set interfaces ge-1/1/6 disable

FieldTypeLabelDescription
port_name string optional

Port name

ifl_unit Value32 optional

IFL index value

lr_name string optional

Logical Router name

bd_name string optional

Bridging Domain name

ri_name string optional

Routing Instance name

status IfStatus optional

Interface status

string_attr_list string_attr repeated

List of attributes

integer_attr_list integer_attr repeated

List of integer attributes

operation int32 optional

Operation

client_ctx int32 optional

Client CTX

request_id int64 optional

Request ID

IpAddress

IP address definition

FieldTypeLabelDescription
addr_string string optional

Address in string format

addr_bytes bytes optional

Address in byte format

MacAddress

MAC address definition

FieldTypeLabelDescription
addr_string string optional

Address in string format

addr_bytes bytes optional

Address in byte format

ObjectOwnershipQuery

Message structure for object ownership query command

FieldTypeLabelDescription
port_name string optional

Port name

ifl_unit Value32 optional

IFL index number

family FamilyType optional

Family

interface_address IpAddress optional

Interface IP address

arp_address IpAddress optional

ARP address

client_ctx int32 optional

Client CTX

request_id int64 optional

Request ID

ObjectOwnershipResp

Message structure for ownership query response

FieldTypeLabelDescription
status ret_status optional

Status

error_message string optional

Error message

client_ctx int32 optional

Client CTX

request_id int64 optional

Request ID

PublicIflResp

Message structure for Public IFL query response

FieldTypeLabelDescription
status ret_status optional

Status

error_message string optional

Error message

client_ctx int32 optional

Client CTX

request_id int64 optional

Request ID

RTConfig

FieldTypeLabelDescription
port_name string optional

Port name

ifl_unit Value32 optional

IFL index number

family FamilyType optional

Family

interface_address IpAddress optional

Interface IP address

arp_address IpAddress optional

ARP address

string_attr_list string_attr repeated

List of attributes

integer_attr_list integer_attr repeated

List of integer attributes

operation int32 optional

Operation

client_ctx int32 optional

Client CTX

request_id int64 optional

Request ID

TimeoutInfo

API for setting timeout in sec for the client

FieldTypeLabelDescription
timeout int32 optional

Timeout

TimeoutResp

Timeout Response

FieldTypeLabelDescription
status ret_status optional

Status

error_message string optional

Error message

Value32

FieldTypeLabelDescription
unit int32 optional

Unit

integer_attr

Integer attribute definition

FieldTypeLabelDescription
attr_name string optional

Attribute name

attr_value string optional

Attribute value

string_attr

String attribute definition

FieldTypeLabelDescription
attr_name string optional

Attribute name

attr_value string optional

Attribute value

AddressFormat

For defining IP address and MAC address formats

NameNumberDescription
ADDRESS_STRING 0

String format

ADDRESS_BYTES 1

Byte format

FamilyType

For defining the protocol family type

NameNumberDescription
INTF_AF_UNKNOWN 0

Unknown

INTF_AF_INET 2

INET Family

INTF_AF_INET6 28

INET6 Family

IfStatus

For defining interface status

NameNumberDescription
INTF_DOWN 0

Interface Down

INTF_UP 1

Interface Up

InterfaceEncapsulationType

For defining interface encapsulations

NameNumberDescription
VLAN_BRIDGE 0

vlan-bridge

VLAN_EXTENDED_BRIDGE 1

extended-vlan-bridge

INTERFACE_ENCAP_MAX 2

None encapsulation

InterfaceTaggingType

For defining interface tagging

NameNumberDescription
VLAN_TAGGING 0

vlan-tagging

INTERFACE_TAGGING_MAX 1

None

operation

NameNumberDescription
UNKNOWN 0

Unknown

ADD_INTERFACE 1

Add Interface

DELETE_INTERFACE 2

Delete Interface

ADD_AE_MEMBER 3

Add aggregate ethernet member

DELETE_AE_MEMBER 4

Delete aggregate ethernet member

ADD_INTF_ATTRIBUTES 5

Add interface attributes

DELETE_INTF_ATTRIBUTES 6

Delete interface attributes

DELETE_ALL_INTF_ATTRIBUTES 7

Delete all interface attributes

QUERY_ATTRIBUTES 8

Query attributes

QUERY_OWNERSHIP 9

Query ownership

QUERY_PUBLIC_IFL 10

Query public IFL

SET_TIMEOUT 11

Set timeout

ret_status

NameNumberDescription
SUCCESS 0

Success

FAILURE 1

Failure

OWNER 2

Owner

NOT_OWNER 3

Not Owner

OBJECT_FOUND 4

Object Found

OBJECT_NOT_FOUND 5

Object Not Found

OBJECT_CLI_OWNER 6

Object created by CLI commands

OBJECT_JAPI_OWNER 7

Object created by Japi commands

ATTRIBUTE_FOUND 8

Attribute found

ATTRIBUTE_NOT_FOUND 9

Attribute not found

NO_PORT_NAME 10

Port name not specified

NO_IFL_UNIT 11

IFL unit not specified

NO_IFF_FAMILY 12

IFF family not specified

NO_IP_ADDR 13

IP address not specified

NO_ARP_ADDR 14

ARP address not specified

NO_ARP_MAC 15

ARP MAC address not specified

InterfacesService

Method NameRequest TypeResponse TypeDescription
InterfaceCreate InterfaceConfig ConfigResp

Ifd configuration

InterfaceDelete InterfaceConfig ConfigResp

InterfaceLogicalCreate InterfaceLogicalConfig ConfigResp

Ifl configuration

InterfaceLogicalDelete InterfaceLogicalConfig ConfigResp

InterfaceFamilyCreate InterfaceFamilyConfig ConfigResp

IFF configuration

InterfaceFamilyDelete InterfaceFamilyConfig ConfigResp

InterfaceAddressCreate InterfaceAddressConfig ConfigResp

IP address setting for interfaces

InterfaceAddressDelete InterfaceAddressConfig ConfigResp

InterfaceRTAddressCreate RTConfig ConfigResp

RT address setting for interfaces

InterfaceRTAddressDelete RTConfig ConfigResp

AttrQueryService

List of interface attribute related query commands

Method NameRequest TypeResponse TypeDescription
InterfacesQueryAttribute AttributeRequestInfo AttributeResponseInfo

Attribute query

ObjectQueryService

List of object ownership related query commands

Method NameRequest TypeResponse TypeDescription
isObjectOwner ObjectOwnershipQuery ObjectOwnershipResp

Object query

TimeoutService

Method NameRequest TypeResponse TypeDescription
setClientTimeout TimeoutInfo TimeoutResp

Timeout settings

PublicIflService

List of Public IFL query commands

Method NameRequest TypeResponse TypeDescription
isPublicIfl InterfaceLogicalConfig PublicIflResp

Is the IFL public? (Created by CLI)

Scalar Value Types

.proto TypeNotesC++ TypeJava TypePython Type
double double double float
float float float float
int32 Uses variable-length encoding. Inefficient for encoding negative numbers – if your field is likely to have negative values, use sint32 instead. int32 int int
int64 Uses variable-length encoding. Inefficient for encoding negative numbers – if your field is likely to have negative values, use sint64 instead. int64 long int/long
uint32 Uses variable-length encoding. uint32 int int/long
uint64 Uses variable-length encoding. uint64 long int/long
sint32 Uses variable-length encoding. Signed int value. These more efficiently encode negative numbers than regular int32s. int32 int int
sint64 Uses variable-length encoding. Signed int value. These more efficiently encode negative numbers than regular int64s. int64 long int/long
fixed32 Always four bytes. More efficient than uint32 if values are often greater than 2^28. uint32 int int
fixed64 Always eight bytes. More efficient than uint64 if values are often greater than 2^56. uint64 long int/long
sfixed32 Always four bytes. int32 int int
sfixed64 Always eight bytes. int64 long int/long
bool bool boolean boolean
string A string must always contain UTF-8 encoded or 7-bit ASCII text. string String str/unicode
bytes May contain any arbitrary sequence of bytes. string ByteString str