IPv4 Direct Route Association.
Version: 2019-11-28
module huawei-rgm { yang-version 1; namespace "urn:huawei:yang:huawei-rgm"; prefix rgm; import huawei-ifm { prefix ifm; } import huawei-extension { prefix ext; } import huawei-ip { prefix ip; } import huawei-vrrp { prefix vrrp; } import huawei-route-monitor-group { prefix rmg; } 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 "IPv4 Direct Route Association."; revision "2019-11-28" { description "Initial revision."; reference "Huawei private."; } ext:task-name "rgm"; augment /ifm:ifm/ifm:interfaces/ifm:interface/ip:ipv4 { description "Association between direct routes and a VRRP backup group."; container rgm { description "Configure IPv4 direct route track VRRP, PWs, virtual-access and so on under the ifm interface."; choice rgm-track { description "Association between direct routes and a VRRP backup group, PW status and delay for advertising direct routes."; case track-vrrp { description "Association between direct routes and a VRRP backup group."; container track-vrrp { description "Configure association between direct routes and a VRRP backup group."; leaf vrrp-id { type leafref { path "/ifm:ifm/ifm:interfaces/ifm:interface/ip:ipv4/vrrp:vrrp/vrrp:groups/vrrp:group/vrrp:id"; } mandatory true; description "Virtual router identifier."; } leaf cost-change { type uint32 { range "1..4294967295"; } mandatory true; description "Value that is used as the cost of direct routes when the associated VRRP backup group status changes."; } } // container track-vrrp } // case track-vrrp case track-pw { description "Association between direct routes and PW status."; container track-pw { when "../../../ifm:type='Remote-Ap' or ../../../ifm:type='VBridge' or ../../../ifm:type='Virtual-Ethernet' or ../../../ifm:type='Global-VE'"; description "Configure association between direct routes and PW status."; leaf cost-change { type uint32 { range "1..4294967295"; } description "Value that is used as the cost of direct routes when the associated PW status changes."; } } // container track-pw } // case track-pw case advertise-delay { description "Delay for advertising direct routes."; container advertise-delay { when "../../../ifm:type='Remote-Ap' or ../../../ifm:type='VBridge' or ../../../ifm:type='Virtual-Ethernet' or ../../../ifm:type='Eth-Trunk' or ../../../ifm:type='Global-VE'"; presence "Delay for advertising direct routes."; description "Configure delay for advertising direct routes."; leaf cost-change { type uint32 { range "1..4294967295"; } mandatory true; description "Value that is used as the cost of direct routes when the associated object status changes."; } leaf time-delay { type uint32 { range "1..3600"; } units "s"; mandatory true; description "Delay for advertising direct routes."; } } // container advertise-delay } // case advertise-delay } // choice rgm-track container track-trunk { when "../../../ifm:type='Global-VE'"; presence "Track VRRP backup group under loopback interface."; description "Configure association between direct routes and Interface status."; leaf if-name { type leafref { path "/ifm:ifm/ifm:interfaces/ifm:interface/ifm:name"; } mandatory true; description "Name of an interface."; } leaf cost-change { type uint32 { range "1..4294967295"; } mandatory true; description "Value that is used as the cost of direct routes when the associated Trunk interface status changes."; } } // container track-trunk container track-rtmtg { presence "Track route-monitor-group."; description "Configure association between route-monitor-group routes and interface status."; leaf name { type leafref { path "/rmg:route-monitor-group/rmg:monitor-groups/rmg:monitor-group/rmg:group-name"; } mandatory true; description "The route-monitor-group was tracked under the interface."; } leaf down-weight { type uint32 { range "1..1000"; } description "Trigger down weight of a track interface."; } } // container track-rtmtg } // container rgm } augment /ifm:ifm/ifm:interfaces/ifm:interface/ip:ipv6 { description "Association between IPv6 direct route and a VRRP backup group."; container rgm6 { description "Configure IPv6 direct route track VRRP6, PWs, virtual-access and so on under the ifm interface."; choice rgm6-track { description "Association between direct routes and a VRRP6 backup group, PW status and delay for advertising direct routes."; case track-vrrp6 { description "Association between direct routes and a VRRP6 backup group."; container track-vrrp6s { description "Configure IPv6 direct route track VRRP6."; leaf vrrp-id { type leafref { path "/ifm:ifm/ifm:interfaces/ifm:interface/ip:ipv6/vrrp:vrrp6/vrrp:group6s/vrrp:group6/vrrp:id"; } must "../../../vrrp:vrrp6/vrrp:group6s/vrrp:group6[vrrp:id=current()]/vrrp:id"; mandatory true; description "Virtual router identifier (VRID)."; } leaf cost-change { type uint32 { range "1..4294967295"; } mandatory true; description "IPv6 direct route cost change."; } } // container track-vrrp6s } // case track-vrrp6 case track-pw { description "Association between direct routes and PW status."; container track-pw { when "../../../ifm:type='Virtual-Ethernet' or ../../../ifm:type='Global-VE'"; description "Configure association between IPv6 direct route and PW status."; leaf cost-change { type uint32 { range "1..4294967295"; } description "Value that is used as the cost of IPv6 direct route when the associated PW status changes."; } } // container track-pw } // case track-pw case advertise-delay { description "Delay for advertising direct routes."; container advertise-delay { when "../../../ifm:type='Virtual-Ethernet' or ../../../ifm:type='Eth-Trunk' or ../../../ifm:type='Global-VE'"; description "Configure delay for advertising IPv6 direct route."; leaf cost-change { type uint32 { range "1..4294967295"; } mandatory true; description "Value that is used as the cost of IPv6 direct route when the associated object status changes."; } leaf time-delay { type uint32 { range "1..3600"; } units "s"; mandatory true; description "Delay for advertising IPv6 direct route."; } } // container advertise-delay } // case advertise-delay } // choice rgm6-track } // container rgm6 } } // module huawei-rgm
© 2023 YumaWorks, Inc. All rights reserved.