Skip to content

Commit

Permalink
Add support to configure interface virtual gateway
Browse files Browse the repository at this point in the history
  • Loading branch information
vsrx committed Jul 26, 2023
1 parent e5ce68c commit af767c6
Showing 1 changed file with 122 additions and 1 deletion.
123 changes: 122 additions & 1 deletion release/models/interfaces/openconfig-if-ip.yang
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,14 @@ module openconfig-if-ip {
Section 4.c of the IETF Trust's Legal Provisions Relating
to IETF Documents (http://trustee.ietf.org/license-info).";

oc-ext:openconfig-version "3.5.0";
oc-ext:openconfig-version "3.6.0";

revision "2023-07-25" {
description
"Add support to configure IPv4 and IPv6 virtual gateways on subinterfaces
and routed vlan interface";
reference "3.6.0";
}

revision "2023-07-14" {
description
Expand Down Expand Up @@ -847,6 +854,84 @@ module openconfig-if-ip {
}
}

grouping ipv4-virtual-gateway-config {
description
"IPv4 virtual gateway configuration data on the interface.";

leaf virtual-address {
type oc-inet:ip-address;
description
"Virtual address for the prefix defined on the interface";
}
}

grouping ipv6-virtual-gateway-config {
description
"IPv6 virtual adresss configuration data on the interface.";

leaf virtual-address {
type oc-inet:ipv6-address;
description
"Virtual address for the prefix defined on the interface";
}
}

grouping ipv4-virtual-gateway-top {
description
"Top-level grouping for IPv4 interface virtual gateway";

container virtual-gateway {
description
"Top-level container for IPv4 virtual address configured
on the interface.";

container config {
description
"Configuration data for IPv4 virtual address";

uses ipv4-virtual-gateway-config;
}

container state {
config false;

description
"Operational state data for IPv4 virtual address configured
on the interface.";

uses ipv4-virtual-gateway-config;
}
}
}

grouping ipv6-virtual-gateway-top {
description
"Top-level grouping for IPv6 interface virtual gateway";

container virtual-gateway {
description
"Top-level container for IPv6 virtual address configured
on the interface.";

container config {
description
"Configuration data for IPv6 virtual address";

uses ipv6-virtual-gateway-config;
}

container state {
config false;

description
"Operational state data for IPv6 virtual address configured
on the interface";

uses ipv6-virtual-gateway-config;
}
}
}

grouping ipv6-ra-config {
description
"Configuration parameters for IPv6 router advertisements.";
Expand Down Expand Up @@ -1445,6 +1530,42 @@ module openconfig-if-ip {
uses ip-vrrp-ipv6-state;
}

// Virtual Gateway configuration for IPv4 and IPv6 interfaces.

augment "/oc-if:interfaces/oc-if:interface/oc-if:subinterfaces/" +
"oc-if:subinterface/oc-ip:ipv4/oc-ip:addresses/oc-ip:address" {
description
"Additional IPv4 virtual gateway configuration";

uses ipv4-virtual-gateway-top;
}

augment "/oc-if:interfaces/oc-if:interface/oc-if:subinterfaces/" +
"oc-if:subinterface/oc-ip:ipv6/oc-ip:addresses/oc-ip:address" {
description
"Additional IPv6 virtual gateway configuration";

uses ipv6-virtual-gateway-top;
}

// Virtual Gateway configuration for routed vlan interface.

augment "/oc-if:interfaces/oc-if:interface/oc-vlan:routed-vlan/" +
"oc-ip:ipv4/oc-ip:addresses/oc-ip:address" {
description
"Additional IPv4 virtual gateway configuration";

uses ipv4-virtual-gateway-top;
}

augment "/oc-if:interfaces/oc-if:interface/oc-vlan:routed-vlan/" +
"oc-ip:ipv6/oc-ip:addresses/oc-ip:address" {
description
"Additional IPv6 virtual gateway configuration";

uses ipv6-virtual-gateway-top;
}

// rpc statements

// notification statements
Expand Down

0 comments on commit af767c6

Please sign in to comment.