Configure BGP EVPN.
Version: 2021-08-06
module huawei-bgp-evpn { yang-version 1; namespace "urn:huawei:yang:huawei-bgp-evpn"; prefix bgp-evpn; import huawei-network-instance { prefix ni; } import huawei-bgp { prefix bgp; } import huawei-routing-policy { prefix rtp; } import huawei-bgp-routing-table { prefix bgp-rt; } import huawei-nvo3 { prefix nvo3; } import huawei-extension { prefix ext; } import huawei-pub-type { prefix pub-type; } import ietf-inet-types { prefix inet; } organization "Huawei Technologies Co., Ltd."; contact "Huawei Industrial Base Bantian, Longgang Shenzhen 518129 People's Republic of China Website: http://www.huawei.com Email: support@huawei.com"; description "Configure BGP EVPN."; revision "2021-08-06" { description "Update EVPN module YANG file for BGP EVPN peer."; reference "Huawei private."; } revision "2020-04-07" { description "EVPN module YANG file."; reference "Huawei private."; } revision "2019-03-22" { description "Initial revision."; reference "Huawei private."; } ext:task-name "evpnbgp"; typedef advertise-encap-type { type enumeration { enum "vxlan" { value 1; description "VXLAN."; } enum "mpls" { value 2; description "MPLS."; } enum "srv6" { value 4; description "SRv6."; } enum "sd-wan" { value 5; description "SD-WAN."; } } description "Encapsulation type of packets."; } typedef srv6-mode { type enumeration { enum "be" { value 1; description "SRv6 iteration mode is BE."; } enum "te" { value 2; description "SRv6 iteration mode is TE."; } } description "SRv6 mode is BE or TE."; } typedef add-path-cap-type { type enumeration { enum "receive" { value 1; description "Support receiving add-path routes."; } enum "send" { value 2; description "Support sending add-path routes."; } enum "both" { value 3; description "Support receiving and sending add-path routes."; } } description "The type of add-path routes."; } typedef config-type { type enumeration { enum "default" { value 0; description "Disable or inheritance group."; } enum "enable" { value 1; description "Explicit config enable."; } enum "disable" { value 2; description "Explicit config disable."; } } description "Route server client."; } typedef route-limit-type { type enumeration { enum "noparameter" { value 0; description "Default value."; } enum "alert-only" { value 1; description "An alarm is generated and no additional routes will be accepted if the maximum number of routes allowed have been received."; } enum "idle-forever" { value 2; description "The connection that is interrupted is not automatically re-established if the maximum number of routes allowed have been received."; } enum "idle-timeout" { value 3; description "After the number of received routes exceeds the threshold and the timeout timer expires, the connection that is interrupted is automatically re-established."; } } description "The type of route limit."; } typedef es-ad-compatible-type { type enumeration { enum "default" { value 0; description "Default ES AD compatible."; } enum "enable" { value 1; description "Enable ES AD compatible."; } enum "disable" { value 2; description "Disable ES AD compatible."; } } description "Ethernet A-D per ES Route compatible type."; } typedef peer-comm-config-type { type enumeration { enum "default" { value 0; description "Configuration on peer was default."; } enum "enable" { value 1; description "Configuration on peer was enable."; } enum "disable" { value 2; description "Configuration on peer was disable."; } } description "State of the configuration on peer."; } typedef evpn-next-hop-mode { type enumeration { enum "null" { value 0; description "The next hop is not changed."; } enum "local" { value 1; description "The next hop is changed to the local IP address."; } enum "invariable" { value 2; description "Prevent the device from changing the next hop of each imported IGP route when advertising it to its EVPN peers."; } } description "BGP EVPN peer and peer group next hop mode."; } typedef apply-label-type { type enumeration { enum "per-route" { value 0; description "Per-route label allocation."; } enum "per-nexthop" { value 1; description "Per-next-hop label allocation."; } } description "BGP EVPN apply label type."; } typedef select-depend-type { type enumeration { enum "depend-tunnel" { value 1; description "Routing-dependent tunnel iteration."; } enum "depend-ip" { value 2; description "Routing-dependent IP iteration."; } } description "The type of nexthop select depend."; } typedef select-depend-type-ext { type enumeration { enum "depend-tunnel" { value 1; description "Routing-dependent tunnel iteration."; } enum "depend-ip" { value 2; description "Routing-dependent IP iteration."; } enum "depend-none" { value 3; description "Routing-dependent ignore."; } } description "The type of nexthop select depend."; } typedef import-vpn-rib-afi-type { type enumeration { enum "ipv4vpn" { value 3; description "IPv4 vpn address family."; } enum "ipv6vpn" { value 6; description "IPv6 vpn address Family."; } } description "The address famiily type of import rib."; } typedef import-rib-nhp-type { type enumeration { enum "mpls" { value 1; description "MPLS tunnels, include LDP, TE, SR-TE, SR-MPLS BE."; } enum "srv6" { value 2; description "Segment routing IPv6 tunnel."; } } description "The mexthop type of import rib."; } typedef evpn-route-type { type enumeration { enum "ip-prefix" { value 1; description "Ip prefix route."; } } description "The route type of evpn rib."; } typedef ad-prefix { type string { length "1..60"; } description "An EVPN auto-discovery route prefix has the following formats: Ethernet auto-discovery route. The value is in the format of xxxx.xxxx.xxxx.xxxx.xxxx:M, where: - xxxx.xxxx.xxxx.xxxx.xxxx indicates the ESI configured for the device originating this route. - M is form 0 to 4294967295."; } typedef mac-prefix { type string { length "1..60"; } description "An EVPN mac route prefix has the following formats: MAC advertisement route. The value is in the format of E:M:H-H-H:L:X.X.X.X or E:M:H-H-H:L: [X:X::X:X], where: - E indicates the ID of the VLAN to which the MAC address belongs. - M is fixed at 48, indicating the length of the MAC address. - H-H-H indicates the MAC address. The value is a 12-digit hexadecimal number, in the format of H-H-H. Each H is 4 digits. If an H contains fewer than 4 digits, the left-most digits are padded with zeros. - L indicating the mask length of the IP address corresponding to the MAC address. - X.X.X.X indicates the IP address corresponding to the MAC address. - X:X::X:X indicates the IPv6 address corresponding to the MAC address."; } typedef inclusive-prefix { type string { length "1..60"; } description "An EVPN ethernet segment route prefix has the following formats: Inclusive multicast route. The value is in the format of M:L:X.X.X.X, where: - M indicates the EthTagId configured for the device originating the route. - X.X.X.X indicates the source address configured for the device originating the route. - L indicates the mask length of the source address configured for the device originating the route."; } typedef es-prefix { type string { length "1..60"; } description "An EVPN ethernet segment route prefix has the following formats: Ethernet segment route. The value is in the format of xxxx.xxxx.xxxx.xxxx.xxxx, where x is a hexadecimal integer ranging from 0 to F. The value equals the ESI configured for the device originating this route."; } typedef evpn-ip-prefix { type string { length "1..60"; } description "An EVPN ip prefix route prefix has the following formats: IP Prefix route. The value is in the format of L:X.X.X.X:M or L:[X:X::X:X]:M, where: - L is fixed at 0. - X.X.X.X indicates the ip address of host routes. - M indicates the mask length of host routes. - X:X::X:X indicates the IPv6 address of host routes."; } } // module huawei-bgp-evpn
© 2023 YumaWorks, Inc. All rights reserved.