Interface BVI
This feature manages Bridge Virtual Interface (BVI) interface configuration.
Diagram
Section titled “Diagram”Classes
Section titled “Classes”interfaces (iosxr.devices.configuration)
Section titled “interfaces (iosxr.devices.configuration)”| Name | Type | Constraint | Mandatory | Default Value |
|---|---|---|---|---|
| bvis | List | [bvis] | No |
bvis (iosxr.devices.configuration.interfaces)
Section titled “bvis (iosxr.devices.configuration.interfaces)”| Name | Type | Constraint | Mandatory | Default Value |
|---|---|---|---|---|
| id | String | Regex: ^[1-9][0-9]*$ | Yes | |
| interface_groups | List | String | No | |
| arp_timeout | Integer | min: 30, max: 2144448000 | No | |
| arp_learning_disable | Boolean | true, false | No | |
| arp_learning_local | Boolean | true, false | No | |
| arp_gratuitous_ignore | Boolean | true, false | No | |
| arp_cache_limit | Integer | min: 0, max: 127999 | No | |
| bandwidth | Integer | min: 0, max: 9223372036854775807 | No | |
| dampening | Boolean | true, false | No | |
| dampening_decay_half_life | Integer | min: 1, max: 45 | No | |
| dampening_reuse_threshold | Integer | min: 1, max: 20000 | No | |
| dampening_suppress_threshold | Integer | min: 1, max: 20000 | No | |
| dampening_max_suppress_time | Integer | min: 1, max: 255 | No | |
| description | String | No | ||
| host_routing | Boolean | true, false | No | |
| ipv4 | Class | [ipv4] | No | |
| ipv6 | Class | [ipv6] | No | |
| load_interval | Integer | No | ||
| logging_events_link_status | Boolean | true, false | No | |
| mac_address | String | No | ||
| mtu | Integer | min: 64, max: 65535 | No | |
| multipoint | Boolean | true, false | No | |
| point_to_point | Boolean | true, false | No | |
| proxy_arp | Boolean | true, false | No | |
| ptp | Class | [ptp] | No | |
| service_policy_input | List | [service_policy_input] | No | |
| service_policy_output | List | [service_policy_output] | No | |
| shutdown | Boolean | true, false | No | |
| vrf | String | No |
ipv4 (iosxr.devices.configuration.interfaces.bvis)
Section titled “ipv4 (iosxr.devices.configuration.interfaces.bvis)”| Name | Type | Constraint | Mandatory | Default Value |
|---|---|---|---|---|
| access_group_egress_acl | String | No | ||
| access_group_egress_compress | Integer | No | ||
| access_group_egress_hardware_count | Boolean | true, false | No | |
| access_group_egress_interface_statistics | Boolean | true, false | No | |
| access_group_ingress_acl1 | String | No | ||
| access_group_ingress_compress | Integer | No | ||
| access_group_ingress_hardware_count | Boolean | true, false | No | |
| access_group_ingress_interface_statistics | Boolean | true, false | No | |
| address | IP | No | ||
| netmask | IP | No | ||
| algorithm | Integer | min: 128, max: 255 | No | |
| forwarding_enable | Boolean | true, false | No | |
| helper_addresses | List | [helper_addresses] | No | |
| mask_reply | Boolean | true, false | No | |
| mtu | Integer | min: 68, max: 65535 | No | |
| point_to_point | Boolean | true, false | No | |
| redirects | Boolean | true, false | No | |
| route_tag | Integer | min: 1, max: 4294967295 | No | |
| secondaries | List | [secondaries] | No | |
| tcp_mss_adjust | Boolean | true, false | No | |
| ttl_propagate_disable | Boolean | true, false | No | |
| unnumbered | String | No | ||
| unreachables_disable | Boolean | true, false | No | |
| verify_unicast_source_reachable_via_allow_default | Boolean | true, false | No | |
| verify_unicast_source_reachable_via_allow_self_ping | Boolean | true, false | No | |
| verify_unicast_source_reachable_via_type | Choice | any, rx | No |
ipv6 (iosxr.devices.configuration.interfaces.bvis)
Section titled “ipv6 (iosxr.devices.configuration.interfaces.bvis)”| Name | Type | Constraint | Mandatory | Default Value |
|---|---|---|---|---|
| access_group_egress_acl | String | No | ||
| access_group_egress_compress | Integer | No | ||
| access_group_egress_interface_statistics | Boolean | true, false | No | |
| access_group_ingress_acl1 | String | No | ||
| access_group_ingress_compress | Integer | No | ||
| access_group_ingress_interface_statistics | Boolean | true, false | No | |
| addresses | List | [addresses] | No | |
| autoconfig | Boolean | true, false | No | |
| dhcp | Boolean | true, false | No | |
| enable | Boolean | true, false | No | |
| eui64_addresses | List | [eui64_addresses] | No | |
| link_local_address | IP | No | ||
| link_local_route_tag | Integer | min: 1, max: 4294967295 | No | |
| link_local_zone | String | No | ||
| mtu | Integer | min: 1280, max: 65535 | No | |
| nd_cache_limit | Integer | min: 0, max: 128000 | No | |
| nd_dad_attempts | Integer | min: 0, max: 600 | No | |
| nd_managed_config_flag | Boolean | true, false | No | |
| nd_ns_interval | Integer | min: 1000, max: 4294967295 | No | |
| nd_other_config_flag | Boolean | true, false | No | |
| nd_prefix_default_no_adv | Boolean | true, false | No | |
| nd_prefix_default_no_autoconfig | Boolean | true, false | No | |
| nd_ra_interval_max | Integer | min: 4, max: 1800 | No | |
| nd_ra_interval_min | Integer | min: 3, max: 1800 | No | |
| nd_ra_lifetime | Integer | min: 0, max: 9000 | No | |
| nd_reachable_time | Integer | min: 0, max: 3600000 | No | |
| nd_redirects | Boolean | true, false | No | |
| nd_suppress_ra | Boolean | true, false | No | |
| nd_unicast_ra | Boolean | true, false | No | |
| tcp_mss_adjust | Boolean | true, false | No | |
| ttl_propagate_disable | Boolean | true, false | No | |
| unreachables_disable | Boolean | true, false | No | |
| verify_unicast_source_reachable_via_allow_default | Boolean | true, false | No | |
| verify_unicast_source_reachable_via_allow_self_ping | Boolean | true, false | No | |
| verify_unicast_source_reachable_via_type | Choice | any, rx | No |
ptp (iosxr.devices.configuration.interfaces.bvis)
Section titled “ptp (iosxr.devices.configuration.interfaces.bvis)”| Name | Type | Constraint | Mandatory | Default Value |
|---|---|---|---|---|
| enable | Boolean | true, false | No | |
| announce_frequency | Choice | 1, 128, 16, 2, 32, 4, 64, 8 | No | |
| announce_grant_duration | Integer | min: 60, max: 1000 | No | |
| announce_interval | Choice | 1, 128, 16, 2, 32, 4, 64, 8 | No | |
| announce_timeout | Integer | min: 2, max: 10 | No | |
| clock_operation_one_step | Boolean | true, false | No | |
| clock_operation_two_step | Boolean | true, false | No | |
| cos | Integer | min: 0, max: 7 | No | |
| cos_event | Integer | min: 0, max: 7 | No | |
| cos_general | Integer | min: 0, max: 7 | No | |
| delay_asymmetry_unit_microseconds | Boolean | true, false | No | |
| delay_asymmetry_unit_milliseconds | Boolean | true, false | No | |
| delay_asymmetry_unit_nanoseconds | Boolean | true, false | No | |
| delay_asymmetry_value | Integer | min: -500000000, max: 500000000 | No | |
| delay_request_frequency | Choice | 1, 128, 16, 2, 32, 4, 64, 8 | No | |
| delay_request_interval | Choice | 1, 128, 16, 2, 32, 4, 64, 8 | No | |
| delay_response_grant_duration | Integer | min: 60, max: 1000 | No | |
| delay_response_timeout | Integer | min: 100, max: 100000 | No | |
| dscp | Integer | min: 0, max: 63 | No | |
| dscp_event | Integer | min: 0, max: 63 | No | |
| dscp_general | Integer | min: 0, max: 63 | No | |
| interop_domain | Integer | min: 0, max: 255 | No | |
| interop_egress_conversion_clock_accuracy | Integer | min: 0, max: 254 | No | |
| interop_egress_conversion_clock_class_default | Integer | min: 0, max: 255 | No | |
| interop_egress_conversion_clock_class_mappings | List | [interop_egress_conversion_clock_class_mappings] | No | |
| interop_egress_conversion_offset_scaled_log_variance | Integer | min: 0, max: 65535 | No | |
| interop_egress_conversion_priority1 | Integer | min: 0, max: 255 | No | |
| interop_egress_conversion_priority2 | Integer | min: 0, max: 255 | No | |
| interop_ingress_conversion_clock_accuracy | Integer | min: 0, max: 254 | No | |
| interop_ingress_conversion_clock_class_default | Integer | min: 0, max: 255 | No | |
| interop_ingress_conversion_clock_class_mappings | List | [interop_ingress_conversion_clock_class_mappings] | No | |
| interop_ingress_conversion_offset_scaled_log_variance | Integer | min: 0, max: 65535 | No | |
| interop_ingress_conversion_priority1 | Integer | min: 0, max: 255 | No | |
| interop_ingress_conversion_priority2 | Integer | min: 0, max: 255 | No | |
| interop_profile_default | Boolean | true, false | No | |
| interop_profile_g_8265_1 | Boolean | true, false | No | |
| interop_profile_g_8275_1 | Boolean | true, false | No | |
| interop_profile_g_8275_2 | Boolean | true, false | No | |
| ipv4_ttl | Integer | min: 1, max: 255 | No | |
| ipv6_hop_limit | Integer | min: 1, max: 255 | No | |
| local_priority | Integer | min: 1, max: 255 | No | |
| master_ethernets | List | [master_ethernets] | No | |
| master_ipv4s | List | [master_ipv4s] | No | |
| master_ipv6s | List | [master_ipv6s] | No | |
| multicast | Boolean | true, false | No | |
| multicast_disable | Boolean | true, false | No | |
| multicast_mixed | Boolean | true, false | No | |
| multicast_target_address_mac_forwardable | Boolean | true, false | No | |
| multicast_target_address_mac_non_forwardable | Boolean | true, false | No | |
| port_state_any | Boolean | true, false | No | |
| port_state_master_only | Boolean | true, false | No | |
| port_state_slave_only | Boolean | true, false | No | |
| profile | String | No | ||
| slave_ethernets | List | [slave_ethernets] | No | |
| slave_ipv4s | List | [slave_ipv4s] | No | |
| slave_ipv6s | List | [slave_ipv6s] | No | |
| source_ipv4_address | String | No | ||
| source_ipv4_address_disable | Boolean | true, false | No | |
| source_ipv6_address | String | No | ||
| source_ipv6_address_disable | Boolean | true, false | No | |
| sync_frequency | Choice | 1, 128, 16, 2, 32, 4, 64, 8 | No | |
| sync_grant_duration | Integer | min: 60, max: 1000 | No | |
| sync_interval | Choice | 1, 128, 16, 2, 32, 4, 64, 8 | No | |
| sync_timeout | Integer | min: 100, max: 100000 | No | |
| transport_ethernet | Boolean | true, false | No | |
| transport_ipv4 | Boolean | true, false | No | |
| transport_ipv6 | Boolean | true, false | No | |
| unicast_grant_invalid_request_deny | Boolean | true, false | No | |
| unicast_grant_invalid_request_reduce | Boolean | true, false | No |
service_policy_input (iosxr.devices.configuration.interfaces.bvis)
Section titled “service_policy_input (iosxr.devices.configuration.interfaces.bvis)”| Name | Type | Constraint | Mandatory | Default Value |
|---|---|---|---|---|
| name | String | No |
helper_addresses (iosxr.devices.configuration.interfaces.bvis.ipv4)
Section titled “helper_addresses (iosxr.devices.configuration.interfaces.bvis.ipv4)”| Name | Type | Constraint | Mandatory | Default Value |
|---|---|---|---|---|
| address | IP | Yes | ||
| vrf | String | Yes |
secondaries (iosxr.devices.configuration.interfaces.bvis.ipv4)
Section titled “secondaries (iosxr.devices.configuration.interfaces.bvis.ipv4)”| Name | Type | Constraint | Mandatory | Default Value |
|---|---|---|---|---|
| address | IP | Yes | ||
| netmask | IP | Yes | ||
| algorithm | Integer | min: 128, max: 255 | No | |
| route_tag | Integer | min: 1, max: 4294967295 | No |
addresses (iosxr.devices.configuration.interfaces.bvis.ipv6)
Section titled “addresses (iosxr.devices.configuration.interfaces.bvis.ipv6)”| Name | Type | Constraint | Mandatory | Default Value |
|---|---|---|---|---|
| address | IP | Yes | ||
| prefix_length | Integer | min: 0, max: 128 | Yes | |
| algorithm | Integer | min: 128, max: 255 | No | |
| route_tag | Integer | min: 1, max: 4294967295 | No | |
| zone | String | No |
eui64_addresses (iosxr.devices.configuration.interfaces.bvis.ipv6)
Section titled “eui64_addresses (iosxr.devices.configuration.interfaces.bvis.ipv6)”| Name | Type | Constraint | Mandatory | Default Value |
|---|---|---|---|---|
| address | IP | Yes | ||
| prefix_length | Integer | min: 0, max: 128 | Yes | |
| algorithm | Integer | min: 128, max: 255 | No | |
| route_tag | Integer | min: 1, max: 4294967295 | No | |
| zone | String | No |
interop_egress_conversion_clock_class_mappings (iosxr.devices.configuration.interfaces.bvis.ptp)
Section titled “interop_egress_conversion_clock_class_mappings (iosxr.devices.configuration.interfaces.bvis.ptp)”| Name | Type | Constraint | Mandatory | Default Value |
|---|---|---|---|---|
| clock_class_to_map_from | Integer | min: 0, max: 255 | Yes | |
| clock_class_to_map_to | Integer | min: 0, max: 255 | Yes |
master_ethernets (iosxr.devices.configuration.interfaces.bvis.ptp)
Section titled “master_ethernets (iosxr.devices.configuration.interfaces.bvis.ptp)”| Name | Type | Constraint | Mandatory | Default Value |
|---|---|---|---|---|
| address | String | Yes | ||
| clock_class | Integer | min: 0, max: 255 | No | |
| delay_asymmetry | Integer | min: -500000000, max: 500000000 | No | |
| microseconds | Boolean | true, false | No | |
| milliseconds | Boolean | true, false | No | |
| multicast | Boolean | true, false | No | |
| multicast_mixed | Boolean | true, false | No | |
| nanoseconds | Boolean | true, false | No | |
| non_negotiated | Boolean | true, false | No | |
| priority | Integer | min: 0, max: 255 | No |
master_ipv4s (iosxr.devices.configuration.interfaces.bvis.ptp)
Section titled “master_ipv4s (iosxr.devices.configuration.interfaces.bvis.ptp)”| Name | Type | Constraint | Mandatory | Default Value |
|---|---|---|---|---|
| address | IP | Yes | ||
| clock_class | Integer | min: 0, max: 255 | No | |
| delay_asymmetry | Integer | min: -500000000, max: 500000000 | No | |
| microseconds | Boolean | true, false | No | |
| milliseconds | Boolean | true, false | No | |
| multicast | Boolean | true, false | No | |
| multicast_mixed | Boolean | true, false | No | |
| nanoseconds | Boolean | true, false | No | |
| non_negotiated | Boolean | true, false | No | |
| priority | Integer | min: 0, max: 255 | No |
master_ipv6s (iosxr.devices.configuration.interfaces.bvis.ptp)
Section titled “master_ipv6s (iosxr.devices.configuration.interfaces.bvis.ptp)”| Name | Type | Constraint | Mandatory | Default Value |
|---|---|---|---|---|
| address | IP | Yes | ||
| clock_class | Integer | min: 0, max: 255 | No | |
| delay_asymmetry | Integer | min: -500000000, max: 500000000 | No | |
| microseconds | Boolean | true, false | No | |
| milliseconds | Boolean | true, false | No | |
| multicast | Boolean | true, false | No | |
| multicast_mixed | Boolean | true, false | No | |
| nanoseconds | Boolean | true, false | No | |
| non_negotiated | Boolean | true, false | No | |
| priority | Integer | min: 0, max: 255 | No |
slave_ethernets (iosxr.devices.configuration.interfaces.bvis.ptp)
Section titled “slave_ethernets (iosxr.devices.configuration.interfaces.bvis.ptp)”| Name | Type | Constraint | Mandatory | Default Value |
|---|---|---|---|---|
| address | String | Yes | ||
| non_negotiated | Boolean | true, false | No |
slave_ipv4s (iosxr.devices.configuration.interfaces.bvis.ptp)
Section titled “slave_ipv4s (iosxr.devices.configuration.interfaces.bvis.ptp)”| Name | Type | Constraint | Mandatory | Default Value |
|---|---|---|---|---|
| address | IP | Yes | ||
| non_negotiated | Boolean | true, false | No |
slave_ipv6s (iosxr.devices.configuration.interfaces.bvis.ptp)
Section titled “slave_ipv6s (iosxr.devices.configuration.interfaces.bvis.ptp)”| Name | Type | Constraint | Mandatory | Default Value |
|---|---|---|---|---|
| address | IP | Yes | ||
| non_negotiated | Boolean | true, false | No |
Guidelines and Limitations
Section titled “Guidelines and Limitations”Data Normalization
Section titled “Data Normalization”MAC Address Formats
Interface fields accept MAC addresses in any of three formats:
- colon-separated (e.g.,
"01:01:01:01:01:01") - dash-separated (e.g.,
"01-01-01-01-01-01") - dotted (e.g.,
"0101.0101.0101")
All 3 formats can be used interchangeably. The normalization layer coverts the user-specified format to colon-separated before sending to the device.
Examples
Section titled “Examples”Example 1: Basic BVI Interface
Section titled “Example 1: Basic BVI Interface”iosxr: devices: - name: router-1 host: 10.10.10.1:57400 configuration: hostname: router-1 interfaces: bvis: - id: "100" description: "BVI 100 Gateway" shutdown: false ipv4: address: 192.168.100.1 netmask: 255.255.255.0Example 2: BVI with IPv6
Section titled “Example 2: BVI with IPv6”iosxr: devices: - name: router-1 host: 10.10.10.1:57400 configuration: hostname: router-1 interfaces: bvis: - id: "200" description: "Dual Stack BVI" shutdown: false mtu: 9000 ipv4: address: 10.200.1.1 netmask: 255.255.255.0 ipv6: enable: true addresses: - address: 2001:db8:200::1 prefix_length: 64Example 3: BVI with Advanced Features
Section titled “Example 3: BVI with Advanced Features”iosxr: devices: - name: router-1 host: 10.10.10.1:57400 configuration: hostname: router-1 interfaces: bvis: - id: "300" shutdown: false bandwidth: 1000000 mtu: 9000 vrf: ENTERPRISE ipv4: address: 172.16.30.1 netmask: 255.255.255.0 helper_addresses: - address: 10.1.1.10 vrf: default access_group_ingress_acl1: ACL_IN access_group_egress_acl: ACL_OUT service_policy_input: - name: QOS_IN service_policy_output: - name: QOS_OUT