Skip to main content

Configure Interface Batch

POST 

/vyos/ethernet/batch

Configure ethernet interface using batch operations.

This is the main endpoint for configuring ethernet interfaces. All operations are version-aware and sent to VyOS in a single batch for efficiency.

Supported Operations:

OperationValue RequiredDescription
set_descriptionYesSet interface description
delete_descriptionNoRemove interface description
set_addressYesAdd IP address (CIDR notation)
delete_addressYesRemove IP address
set_mtuYesSet MTU value
delete_mtuNoRemove MTU (reset to default)
set_duplexYesSet duplex mode (auto/half/full)
delete_duplexNoRemove duplex (reset to default)
set_speedYesSet speed (auto/10/100/1000/etc)
delete_speedNoRemove speed (reset to default)
set_vrfYesAssign interface to VRF
delete_vrfYesRemove interface from VRF
disableNoAdministratively disable interface
enableNoEnable interface (remove disable flag)
delete_interfaceNoDelete entire interface configuration
set_macYesSet MAC address
delete_macNoReset MAC address to default
set_offload_groNoEnable Generic Receive Offload
delete_offload_groNoDelete Generic Receive Offload
set_offload_gsoNoEnable Generic Segmentation Offload
delete_offload_gsoNoDelete Generic Segmentation Offload
set_offload_lroNoEnable Large Receive Offload
delete_offload_lroNoDelete Large Receive Offload
set_offload_rpsNoEnable Receive Packet Steering
delete_offload_rpsNoDelete Receive Packet Steering
set_offload_sgNoEnable Scatter-Gather
delete_offload_sgNoDelete Scatter-Gather
set_offload_tsoNoEnable TCP Segmentation Offload
delete_offload_tsoNoDelete TCP Segmentation Offload
set_ring_buffer_rxYesSet RX ring buffer size
set_ring_buffer_txYesSet TX ring buffer size
delete_ring_bufferNoDelete ring buffer settings
set_ip_adjust_mssYesSet IPv4 TCP MSS
set_ip_adjust_mss_clamp_to_pmtuNoEnable IPv4 MSS clamping to PMTU
set_ipv6_adjust_mssYesSet IPv6 TCP MSS
set_ipv6_adjust_mss_clamp_to_pmtuNoEnable IPv6 MSS clamping to PMTU
set_ip_arp_cache_timeoutYesSet ARP cache timeout
set_ip_disable_arp_filterNoDisable ARP filter
set_ip_enable_arp_acceptNoEnable ARP accept
set_ip_enable_arp_announceNoEnable ARP announce
set_ip_enable_arp_ignoreNoEnable ARP ignore
set_ip_enable_proxy_arpNoEnable proxy ARP
set_ip_proxy_arp_pvlanNoEnable private VLAN proxy ARP
set_ip_source_validationYesSet source validation (strict/loose/disable)
delete_ip_source_validationNoDelete source validation
set_ip_enable_directed_broadcastNoEnable directed broadcast (1.5+ only)
set_ipv6_address_autoconfNoEnable IPv6 SLAAC autoconfiguration
set_ipv6_address_eui64YesSet IPv6 EUI-64 address
set_ipv6_disable_forwardingNoDisable IPv6 forwarding
set_ipv6_dup_addr_detect_transmitsYesSet IPv6 DAD transmits
set_disable_flow_controlNoDisable flow control
delete_disable_flow_controlNoEnable flow control
set_disable_link_detectNoDisable link detection
delete_disable_link_detectNoEnable link detection
set_dhcp_options_client_idYesSet DHCP client ID
set_dhcp_options_host_nameYesSet DHCP hostname
set_dhcp_options_vendor_class_idYesSet DHCP vendor class ID
set_dhcp_options_no_default_routeNoReject DHCP default route
set_dhcp_options_default_route_distanceYesSet DHCP default route distance
set_dhcpv6_options_duidYesSet DHCPv6 DUID
set_dhcpv6_options_rapid_commitNoEnable DHCPv6 rapid commit
set_dhcpv6_options_pdYes (pd_id,prefix)Set DHCPv6 prefix delegation
set_vifYesConfigure 802.1q VLAN
delete_vifYes (vlan_id)Remove 802.1q VLAN
set_vif_sYesConfigure QinQ service VLAN
set_vif_cYes (s_vlan,c_vlan)Configure QinQ customer VLAN
set_mirror_ingressYesConfigure ingress port mirroring
set_mirror_egressYesConfigure egress port mirroring
delete_mirrorNoDelete port mirroring
set_eapol_ca_cert_fileYesSet EAPoL CA certificate
set_eapol_cert_fileYesSet EAPoL client certificate
set_eapol_key_fileYesSet EAPoL private key
set_evpn_uplinkNoEnable EVPN uplink tracking
delete_evpnNoDelete EVPN configuration

VLAN Sub-interface Operations (VIF - 802.1q):

OperationValue RequiredDescription
set_vif_addressYes (vlan_id,address)Set VIF address
delete_vif_addressYes (vlan_id,address)Delete VIF address
set_vif_descriptionYes (vlan_id,description)Set VIF description
delete_vif_descriptionYes (vlan_id)Delete VIF description
set_vif_mtuYes (vlan_id,mtu)Set VIF MTU
delete_vif_mtuYes (vlan_id)Delete VIF MTU
set_vif_disableYes (vlan_id)Disable VIF
delete_vif_disableYes (vlan_id)Enable VIF
set_vif_vrfYes (vlan_id,vrf)Set VIF VRF
delete_vif_vrfYes (vlan_id,vrf)Delete VIF VRF
set_vif_macYes (vlan_id,mac)Set VIF MAC
delete_vif_macYes (vlan_id)Delete VIF MAC
set_vif_dhcp_options_client_idYes (vlan_id,client_id)Set VIF DHCP client ID
set_vif_dhcp_options_host_nameYes (vlan_id,hostname)Set VIF DHCP hostname
set_vif_ipv6_address_autoconfYes (vlan_id)Enable VIF IPv6 autoconf
set_vif_ipv6_address_eui64Yes (vlan_id,prefix)Set VIF IPv6 EUI-64
set_vif_ip_adjust_mssYes (vlan_id,mss)Set VIF IPv4 TCP MSS
set_vif_ip_adjust_mss_clamp_to_pmtuYes (vlan_id)Enable VIF IPv4 MSS clamping to PMTU
set_vif_ipv6_adjust_mssYes (vlan_id,mss)Set VIF IPv6 TCP MSS
set_vif_ipv6_adjust_mss_clamp_to_pmtuYes (vlan_id)Enable VIF IPv6 MSS clamping to PMTU

VLAN Sub-interface Operations (VIF-S - QinQ Service):

OperationValue RequiredDescription
set_vif_s_addressYes (vlan_id,address)Set VIF-S address
delete_vif_s_addressYes (vlan_id,address)Delete VIF-S address
set_vif_s_descriptionYes (vlan_id,description)Set VIF-S description
delete_vif_s_descriptionYes (vlan_id)Delete VIF-S description
set_vif_s_mtuYes (vlan_id,mtu)Set VIF-S MTU
delete_vif_s_mtuYes (vlan_id)Delete VIF-S MTU
set_vif_s_disableYes (vlan_id)Disable VIF-S
delete_vif_s_disableYes (vlan_id)Enable VIF-S
set_vif_s_vrfYes (vlan_id,vrf)Set VIF-S VRF
delete_vif_s_vrfYes (vlan_id,vrf)Delete VIF-S VRF
set_vif_s_macYes (vlan_id,mac)Set VIF-S MAC
delete_vif_s_macYes (vlan_id)Delete VIF-S MAC
set_vif_s_dhcp_options_client_idYes (vlan_id,client_id)Set VIF-S DHCP client ID
set_vif_s_dhcp_options_host_nameYes (vlan_id,hostname)Set VIF-S DHCP hostname
set_vif_s_ipv6_address_autoconfYes (vlan_id)Enable VIF-S IPv6 autoconf
set_vif_s_ipv6_address_eui64Yes (vlan_id,prefix)Set VIF-S IPv6 EUI-64

VLAN Sub-interface Operations (VIF-C - QinQ Customer):

OperationValue RequiredDescription
set_vif_c_addressYes (s_vlan,c_vlan,address)Set VIF-C address
delete_vif_c_addressYes (s_vlan,c_vlan,address)Delete VIF-C address
set_vif_c_descriptionYes (s_vlan,c_vlan,description)Set VIF-C description
delete_vif_c_descriptionYes (s_vlan,c_vlan)Delete VIF-C description
set_vif_c_mtuYes (s_vlan,c_vlan,mtu)Set VIF-C MTU
delete_vif_c_mtuYes (s_vlan,c_vlan)Delete VIF-C MTU
set_vif_c_disableYes (s_vlan,c_vlan)Disable VIF-C
delete_vif_c_disableYes (s_vlan,c_vlan)Enable VIF-C
set_vif_c_vrfYes (s_vlan,c_vlan,vrf)Set VIF-C VRF
delete_vif_c_vrfYes (s_vlan,c_vlan,vrf)Delete VIF-C VRF
set_vif_c_macYes (s_vlan,c_vlan,mac)Set VIF-C MAC
delete_vif_c_macYes (s_vlan,c_vlan)Delete VIF-C MAC
set_vif_c_dhcp_options_client_idYes (s_vlan,c_vlan,client_id)Set VIF-C DHCP client ID
set_vif_c_dhcp_options_host_nameYes (s_vlan,c_vlan,hostname)Set VIF-C DHCP hostname
set_vif_c_ipv6_address_autoconfYes (s_vlan,c_vlan)Enable VIF-C IPv6 autoconf
set_vif_c_ipv6_address_eui64Yes (s_vlan,c_vlan,prefix)Set VIF-C IPv6 EUI-64

Example Request:

{
"interface": "eth0",
"operations": [
{"op": "set_description", "value": "WAN Interface"},
{"op": "set_address", "value": "10.0.0.1/24"},
{"op": "set_address", "value": "2001:db8::1/64"},
{"op": "delete_address", "value": "192.168.1.1/24"},
{"op": "set_mtu", "value": "9000"},
{"op": "set_duplex", "value": "full"},
{"op": "set_speed", "value": "1000"},
{"op": "set_vrf", "value": "MGMT"},
{"op": "enable"}
]
}

Example with Delete Operations:

{
"interface": "eth1",
"operations": [
{"op": "delete_description"},
{"op": "delete_mtu"},
{"op": "delete_duplex"},
{"op": "delete_speed"}
]
}

Request

Responses

Successful Response