From 0e5806954c608e8cba3c224014027901086dd08a Mon Sep 17 00:00:00 2001 From: Akhilesh Samineni Date: Thu, 20 Apr 2023 02:43:34 -0700 Subject: [PATCH 1/5] SONiC Yang model support for IPv6 link local Signed-off-by: Akhilesh Samineni akhilesh.samineni@broadcom.com --- .../yang_model_tests/tests/interface.json | 3 ++ .../yang_model_tests/tests/portchannel.json | 3 ++ .../tests/yang_model_tests/tests/vlan.json | 3 ++ .../tests_config/interface.json | 28 ++++++++++++ .../tests_config/portchannel.json | 37 ++++++++++++++++ .../yang_model_tests/tests_config/vlan.json | 44 +++++++++++++++++++ .../yang-models/sonic-interface.yang | 9 ++++ .../yang-models/sonic-portchannel.yang | 10 +++++ .../yang-models/sonic-vlan.yang | 10 +++++ 9 files changed, 147 insertions(+) diff --git a/src/sonic-yang-models/tests/yang_model_tests/tests/interface.json b/src/sonic-yang-models/tests/yang_model_tests/tests/interface.json index ed561f25bc2..9c670ff9656 100644 --- a/src/sonic-yang-models/tests/yang_model_tests/tests/interface.json +++ b/src/sonic-yang-models/tests/yang_model_tests/tests/interface.json @@ -22,5 +22,8 @@ "desc": "INCORRECT LOOPBACK ACTION IN INTERFACE TABLE.", "eStrKey" : "Pattern", "eStr": ["drop|forward"] + }, + "INTERFACE_ENABLE_IPV6_LINK_LOCAL": { + "desc": "Enable the ipv6 link-local." } } diff --git a/src/sonic-yang-models/tests/yang_model_tests/tests/portchannel.json b/src/sonic-yang-models/tests/yang_model_tests/tests/portchannel.json index ae7a7dffd92..c096fdb2d40 100644 --- a/src/sonic-yang-models/tests/yang_model_tests/tests/portchannel.json +++ b/src/sonic-yang-models/tests/yang_model_tests/tests/portchannel.json @@ -73,5 +73,8 @@ "desc": "INCORRECT LOOPBACK ACTION IN PORTCHANNEL_INTERFACE TABLE.", "eStrKey" : "Pattern", "eStr": ["drop|forward"] + }, + "PORTCHANNEL_INTERFACE_ENABLE_IPV6_LINK_LOCAL": { + "desc": "Enable the ipv6 link-local." } } diff --git a/src/sonic-yang-models/tests/yang_model_tests/tests/vlan.json b/src/sonic-yang-models/tests/yang_model_tests/tests/vlan.json index cf5fccf02bc..20fe57ef4aa 100644 --- a/src/sonic-yang-models/tests/yang_model_tests/tests/vlan.json +++ b/src/sonic-yang-models/tests/yang_model_tests/tests/vlan.json @@ -79,5 +79,8 @@ "desc": "INCORRECT LOOPBACK ACTION IN VLAN_INTERFACE TABLE.", "eStrKey" : "Pattern", "eStr": ["drop|forward"] + }, + "VLAN_INTERFACE_ENABLE_IPV6_LINK_LOCAL": { + "desc": "Enable the ipv6 link-local." } } diff --git a/src/sonic-yang-models/tests/yang_model_tests/tests_config/interface.json b/src/sonic-yang-models/tests/yang_model_tests/tests_config/interface.json index 2f20f8475b6..b668f8c9056 100644 --- a/src/sonic-yang-models/tests/yang_model_tests/tests_config/interface.json +++ b/src/sonic-yang-models/tests/yang_model_tests/tests_config/interface.json @@ -209,5 +209,33 @@ ] } } + }, + "INTERFACE_ENABLE_IPV6_LINK_LOCAL": { + "sonic-interface:sonic-interface": { + "sonic-interface:INTERFACE": { + "INTERFACE_LIST": [ + { + "name": "Ethernet8", + "ipv6_use_link_local_only": "enable" + } + ] + } + }, + "sonic-port:sonic-port": { + "sonic-port:PORT": { + "PORT_LIST": [ + { + "admin_status": "up", + "alias": "eth8", + "description": "Ethernet8", + "fec": "rs", + "lanes": "65", + "mtu": 9000, + "name": "Ethernet8", + "speed": 25000 + } + ] + } + } } } diff --git a/src/sonic-yang-models/tests/yang_model_tests/tests_config/portchannel.json b/src/sonic-yang-models/tests/yang_model_tests/tests_config/portchannel.json index 36f2484fa3b..f37d29b0e08 100644 --- a/src/sonic-yang-models/tests/yang_model_tests/tests_config/portchannel.json +++ b/src/sonic-yang-models/tests/yang_model_tests/tests_config/portchannel.json @@ -428,5 +428,42 @@ ] } } + }, + "PORTCHANNEL_INTERFACE_ENABLE_IPV6_LINK_LOCAL": { + "sonic-port:sonic-port": { + "sonic-port:PORT": { + "PORT_LIST": [ + { + "admin_status": "up", + "alias": "eth0", + "description": "Ethernet0", + "lanes": "65", + "mtu": 9000, + "name": "Ethernet0", + "speed": 25000 + } + ] + } + }, + "sonic-portchannel:sonic-portchannel": { + "sonic-portchannel:PORTCHANNEL": { + "PORTCHANNEL_LIST": [ + { + "admin_status": "up", + "min_links": "1", + "mtu": "9100", + "name": "PortChannel0001" + } + ] + }, + "sonic-portchannel:PORTCHANNEL_INTERFACE": { + "PORTCHANNEL_INTERFACE_LIST": [ + { + "name": "PortChannel0001", + "ipv6_use_link_local_only": "enable" + } + ] + } + } } } diff --git a/src/sonic-yang-models/tests/yang_model_tests/tests_config/vlan.json b/src/sonic-yang-models/tests/yang_model_tests/tests_config/vlan.json index c5934bc39c9..7eea7c3fd6d 100644 --- a/src/sonic-yang-models/tests/yang_model_tests/tests_config/vlan.json +++ b/src/sonic-yang-models/tests/yang_model_tests/tests_config/vlan.json @@ -626,5 +626,49 @@ ] } } + }, + "VLAN_INTERFACE_ENABLE_IPV6_LINK_LOCAL": { + "sonic-port:sonic-port": { + "sonic-port:PORT": { + "PORT_LIST": [ + { + "admin_status": "up", + "alias": "eth0", + "description": "Ethernet0", + "mtu": 9000, + "lanes": "1", + "name": "Ethernet0", + "speed": 25000 + } + ] + } + }, + "sonic-vlan:sonic-vlan": { + "sonic-vlan:VLAN": { + "VLAN_LIST": [ + { + "description": "vlan_nat", + "name": "Vlan100" + } + ] + }, + "sonic-vlan:VLAN_MEMBER": { + "VLAN_MEMBER_LIST": [ + { + "port": "Ethernet0", + "tagging_mode": "tagged", + "name": "Vlan100" + } + ] + }, + "sonic-vlan:VLAN_INTERFACE": { + "VLAN_INTERFACE_LIST": [ + { + "name": "Vlan100", + "ipv6_use_link_local_only": "enable" + } + ] + } + } } } diff --git a/src/sonic-yang-models/yang-models/sonic-interface.yang b/src/sonic-yang-models/yang-models/sonic-interface.yang index afd46a65550..a827ddbd82c 100644 --- a/src/sonic-yang-models/yang-models/sonic-interface.yang +++ b/src/sonic-yang-models/yang-models/sonic-interface.yang @@ -75,6 +75,15 @@ module sonic-interface { } } + leaf ipv6_use_link_local_only { + description "Enable/Disable IPv6 link local address on interface"; + type enumeration { + enum enable; + enum disable; + } + default disable; + } + leaf loopback_action { description "Packet action when a packet ingress and gets routed on the same IP interface"; type stypes:loopback_action; diff --git a/src/sonic-yang-models/yang-models/sonic-portchannel.yang b/src/sonic-yang-models/yang-models/sonic-portchannel.yang index 717e3924c42..22f2d9d7668 100644 --- a/src/sonic-yang-models/yang-models/sonic-portchannel.yang +++ b/src/sonic-yang-models/yang-models/sonic-portchannel.yang @@ -181,6 +181,16 @@ module sonic-portchannel { enum disable; } } + + leaf ipv6_use_link_local_only { + description "Enable/Disable IPv6 link local address on portchannel interface"; + type enumeration { + enum enable; + enum disable; + } + default disable; + } + } /* end of list PORTCHANNEL_INTERFACE_LIST */ list PORTCHANNEL_INTERFACE_IPPREFIX_LIST { diff --git a/src/sonic-yang-models/yang-models/sonic-vlan.yang b/src/sonic-yang-models/yang-models/sonic-vlan.yang index b8f3e28c43f..00c783b20dd 100644 --- a/src/sonic-yang-models/yang-models/sonic-vlan.yang +++ b/src/sonic-yang-models/yang-models/sonic-vlan.yang @@ -102,6 +102,16 @@ module sonic-vlan { } } + leaf ipv6_use_link_local_only { + description "Enable/Disable IPv6 link local address on vlan interface"; + type enumeration { + enum enable; + enum disable; + } + default disable; + } + + leaf loopback_action { description "Packet action when a packet ingress and gets routed on the same IP interface"; type stypes:loopback_action; From 355cb2b5c85b5cc50e103f79477736b744e2d70f Mon Sep 17 00:00:00 2001 From: Akhilesh Samineni Date: Sat, 22 Apr 2023 01:31:30 -0700 Subject: [PATCH 2/5] Addressed review comments. Signed-off-by: Akhilesh Samineni --- .../yang_model_tests/tests/interface.json | 5 +++ .../yang_model_tests/tests/portchannel.json | 5 +++ .../tests/yang_model_tests/tests/vlan.json | 5 +++ .../tests_config/interface.json | 28 ++++++++++++ .../tests_config/portchannel.json | 37 ++++++++++++++++ .../yang_model_tests/tests_config/vlan.json | 44 +++++++++++++++++++ .../yang-models/sonic-interface.yang | 5 +-- .../yang-models/sonic-portchannel.yang | 5 +-- .../yang-models/sonic-vlan.yang | 5 +-- 9 files changed, 127 insertions(+), 12 deletions(-) diff --git a/src/sonic-yang-models/tests/yang_model_tests/tests/interface.json b/src/sonic-yang-models/tests/yang_model_tests/tests/interface.json index 9c670ff9656..70c3fedecc1 100644 --- a/src/sonic-yang-models/tests/yang_model_tests/tests/interface.json +++ b/src/sonic-yang-models/tests/yang_model_tests/tests/interface.json @@ -25,5 +25,10 @@ }, "INTERFACE_ENABLE_IPV6_LINK_LOCAL": { "desc": "Enable the ipv6 link-local." + }, + "INTERFACE_INVALID_ENABLE_IPV6_LINK_LOCAL": { + "desc": "Enable the ipv6 link-local as true.", + "eStrKey" : "InvalidValue", + "eStr": ["enable|disable"] } } diff --git a/src/sonic-yang-models/tests/yang_model_tests/tests/portchannel.json b/src/sonic-yang-models/tests/yang_model_tests/tests/portchannel.json index c096fdb2d40..dddca340908 100644 --- a/src/sonic-yang-models/tests/yang_model_tests/tests/portchannel.json +++ b/src/sonic-yang-models/tests/yang_model_tests/tests/portchannel.json @@ -76,5 +76,10 @@ }, "PORTCHANNEL_INTERFACE_ENABLE_IPV6_LINK_LOCAL": { "desc": "Enable the ipv6 link-local." + }, + "PORTCHANNEL_INTERFACE_INVALID_ENABLE_IPV6_LINK_LOCAL": { + "desc": "Enable the ipv6 link-local as true.", + "eStrKey" : "InvalidValue", + "eStr": ["enable|disable"] } } diff --git a/src/sonic-yang-models/tests/yang_model_tests/tests/vlan.json b/src/sonic-yang-models/tests/yang_model_tests/tests/vlan.json index 20fe57ef4aa..bf20b0f058d 100644 --- a/src/sonic-yang-models/tests/yang_model_tests/tests/vlan.json +++ b/src/sonic-yang-models/tests/yang_model_tests/tests/vlan.json @@ -82,5 +82,10 @@ }, "VLAN_INTERFACE_ENABLE_IPV6_LINK_LOCAL": { "desc": "Enable the ipv6 link-local." + }, + "VLAN_INTERFACE_INVALID_ENABLE_IPV6_LINK_LOCAL": { + "desc": "Enable the ipv6 link-local as true.", + "eStrKey" : "InvalidValue", + "eStr": ["enable|disable"] } } diff --git a/src/sonic-yang-models/tests/yang_model_tests/tests_config/interface.json b/src/sonic-yang-models/tests/yang_model_tests/tests_config/interface.json index b668f8c9056..b0b9fdb6819 100644 --- a/src/sonic-yang-models/tests/yang_model_tests/tests_config/interface.json +++ b/src/sonic-yang-models/tests/yang_model_tests/tests_config/interface.json @@ -237,5 +237,33 @@ ] } } + }, + "INTERFACE_INVALID_ENABLE_IPV6_LINK_LOCAL": { + "sonic-interface:sonic-interface": { + "sonic-interface:INTERFACE": { + "INTERFACE_LIST": [ + { + "name": "Ethernet8", + "ipv6_use_link_local_only": "true" + } + ] + } + }, + "sonic-port:sonic-port": { + "sonic-port:PORT": { + "PORT_LIST": [ + { + "admin_status": "up", + "alias": "eth8", + "description": "Ethernet8", + "fec": "rs", + "lanes": "65", + "mtu": 9000, + "name": "Ethernet8", + "speed": 25000 + } + ] + } + } } } diff --git a/src/sonic-yang-models/tests/yang_model_tests/tests_config/portchannel.json b/src/sonic-yang-models/tests/yang_model_tests/tests_config/portchannel.json index f37d29b0e08..7837d05443f 100644 --- a/src/sonic-yang-models/tests/yang_model_tests/tests_config/portchannel.json +++ b/src/sonic-yang-models/tests/yang_model_tests/tests_config/portchannel.json @@ -465,5 +465,42 @@ ] } } + }, + "PORTCHANNEL_INTERFACE_INVALID_ENABLE_IPV6_LINK_LOCAL": { + "sonic-port:sonic-port": { + "sonic-port:PORT": { + "PORT_LIST": [ + { + "admin_status": "up", + "alias": "eth0", + "description": "Ethernet0", + "lanes": "65", + "mtu": 9000, + "name": "Ethernet0", + "speed": 25000 + } + ] + } + }, + "sonic-portchannel:sonic-portchannel": { + "sonic-portchannel:PORTCHANNEL": { + "PORTCHANNEL_LIST": [ + { + "admin_status": "up", + "min_links": "1", + "mtu": "9100", + "name": "PortChannel0001" + } + ] + }, + "sonic-portchannel:PORTCHANNEL_INTERFACE": { + "PORTCHANNEL_INTERFACE_LIST": [ + { + "name": "PortChannel0001", + "ipv6_use_link_local_only": "true" + } + ] + } + } } } diff --git a/src/sonic-yang-models/tests/yang_model_tests/tests_config/vlan.json b/src/sonic-yang-models/tests/yang_model_tests/tests_config/vlan.json index 7eea7c3fd6d..c4db119b7fa 100644 --- a/src/sonic-yang-models/tests/yang_model_tests/tests_config/vlan.json +++ b/src/sonic-yang-models/tests/yang_model_tests/tests_config/vlan.json @@ -670,5 +670,49 @@ ] } } + }, + "VLAN_INTERFACE_INVALID_ENABLE_IPV6_LINK_LOCAL": { + "sonic-port:sonic-port": { + "sonic-port:PORT": { + "PORT_LIST": [ + { + "admin_status": "up", + "alias": "eth0", + "description": "Ethernet0", + "mtu": 9000, + "lanes": "1", + "name": "Ethernet0", + "speed": 25000 + } + ] + } + }, + "sonic-vlan:sonic-vlan": { + "sonic-vlan:VLAN": { + "VLAN_LIST": [ + { + "description": "vlan_nat", + "name": "Vlan100" + } + ] + }, + "sonic-vlan:VLAN_MEMBER": { + "VLAN_MEMBER_LIST": [ + { + "port": "Ethernet0", + "tagging_mode": "tagged", + "name": "Vlan100" + } + ] + }, + "sonic-vlan:VLAN_INTERFACE": { + "VLAN_INTERFACE_LIST": [ + { + "name": "Vlan100", + "ipv6_use_link_local_only": "true" + } + ] + } + } } } diff --git a/src/sonic-yang-models/yang-models/sonic-interface.yang b/src/sonic-yang-models/yang-models/sonic-interface.yang index a827ddbd82c..9f1c3c94957 100644 --- a/src/sonic-yang-models/yang-models/sonic-interface.yang +++ b/src/sonic-yang-models/yang-models/sonic-interface.yang @@ -77,10 +77,7 @@ module sonic-interface { leaf ipv6_use_link_local_only { description "Enable/Disable IPv6 link local address on interface"; - type enumeration { - enum enable; - enum disable; - } + type mode-status; default disable; } diff --git a/src/sonic-yang-models/yang-models/sonic-portchannel.yang b/src/sonic-yang-models/yang-models/sonic-portchannel.yang index 22f2d9d7668..a16b75e9946 100644 --- a/src/sonic-yang-models/yang-models/sonic-portchannel.yang +++ b/src/sonic-yang-models/yang-models/sonic-portchannel.yang @@ -184,10 +184,7 @@ module sonic-portchannel { leaf ipv6_use_link_local_only { description "Enable/Disable IPv6 link local address on portchannel interface"; - type enumeration { - enum enable; - enum disable; - } + type mode-status; default disable; } diff --git a/src/sonic-yang-models/yang-models/sonic-vlan.yang b/src/sonic-yang-models/yang-models/sonic-vlan.yang index 00c783b20dd..715c93f5eee 100644 --- a/src/sonic-yang-models/yang-models/sonic-vlan.yang +++ b/src/sonic-yang-models/yang-models/sonic-vlan.yang @@ -104,10 +104,7 @@ module sonic-vlan { leaf ipv6_use_link_local_only { description "Enable/Disable IPv6 link local address on vlan interface"; - type enumeration { - enum enable; - enum disable; - } + type mode-status; default disable; } From de20a884dce5fc190186dc19590467708159d76a Mon Sep 17 00:00:00 2001 From: Akhilesh Samineni Date: Sat, 22 Apr 2023 02:47:04 -0700 Subject: [PATCH 3/5] Addressed review comments1. Signed-off-by: Akhilesh Samineni --- src/sonic-yang-models/yang-models/sonic-interface.yang | 2 +- src/sonic-yang-models/yang-models/sonic-portchannel.yang | 2 +- src/sonic-yang-models/yang-models/sonic-vlan.yang | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/sonic-yang-models/yang-models/sonic-interface.yang b/src/sonic-yang-models/yang-models/sonic-interface.yang index 9f1c3c94957..f8c676b7ca8 100644 --- a/src/sonic-yang-models/yang-models/sonic-interface.yang +++ b/src/sonic-yang-models/yang-models/sonic-interface.yang @@ -77,7 +77,7 @@ module sonic-interface { leaf ipv6_use_link_local_only { description "Enable/Disable IPv6 link local address on interface"; - type mode-status; + type stypes:mode-status; default disable; } diff --git a/src/sonic-yang-models/yang-models/sonic-portchannel.yang b/src/sonic-yang-models/yang-models/sonic-portchannel.yang index a16b75e9946..791094a7c02 100644 --- a/src/sonic-yang-models/yang-models/sonic-portchannel.yang +++ b/src/sonic-yang-models/yang-models/sonic-portchannel.yang @@ -184,7 +184,7 @@ module sonic-portchannel { leaf ipv6_use_link_local_only { description "Enable/Disable IPv6 link local address on portchannel interface"; - type mode-status; + type stypes:mode-status; default disable; } diff --git a/src/sonic-yang-models/yang-models/sonic-vlan.yang b/src/sonic-yang-models/yang-models/sonic-vlan.yang index 715c93f5eee..f8aa7077593 100644 --- a/src/sonic-yang-models/yang-models/sonic-vlan.yang +++ b/src/sonic-yang-models/yang-models/sonic-vlan.yang @@ -104,7 +104,7 @@ module sonic-vlan { leaf ipv6_use_link_local_only { description "Enable/Disable IPv6 link local address on vlan interface"; - type mode-status; + type stypes:mode-status; default disable; } From 8d86d62a7bc673be0b8495f152b4db508b71c806 Mon Sep 17 00:00:00 2001 From: Akhilesh Samineni Date: Sat, 22 Apr 2023 04:38:23 -0700 Subject: [PATCH 4/5] Fixed build error. Signed-off-by: Akhilesh Samineni --- .../tests/yang_model_tests/tests/interface.json | 3 +-- .../tests/yang_model_tests/tests/portchannel.json | 3 +-- src/sonic-yang-models/tests/yang_model_tests/tests/vlan.json | 3 +-- 3 files changed, 3 insertions(+), 6 deletions(-) diff --git a/src/sonic-yang-models/tests/yang_model_tests/tests/interface.json b/src/sonic-yang-models/tests/yang_model_tests/tests/interface.json index 70c3fedecc1..b0532d90e12 100644 --- a/src/sonic-yang-models/tests/yang_model_tests/tests/interface.json +++ b/src/sonic-yang-models/tests/yang_model_tests/tests/interface.json @@ -28,7 +28,6 @@ }, "INTERFACE_INVALID_ENABLE_IPV6_LINK_LOCAL": { "desc": "Enable the ipv6 link-local as true.", - "eStrKey" : "InvalidValue", - "eStr": ["enable|disable"] + "eStr": "Invalid value \"true\" in \"ipv6_use_link_local_only\" element." } } diff --git a/src/sonic-yang-models/tests/yang_model_tests/tests/portchannel.json b/src/sonic-yang-models/tests/yang_model_tests/tests/portchannel.json index dddca340908..c44ffef291e 100644 --- a/src/sonic-yang-models/tests/yang_model_tests/tests/portchannel.json +++ b/src/sonic-yang-models/tests/yang_model_tests/tests/portchannel.json @@ -79,7 +79,6 @@ }, "PORTCHANNEL_INTERFACE_INVALID_ENABLE_IPV6_LINK_LOCAL": { "desc": "Enable the ipv6 link-local as true.", - "eStrKey" : "InvalidValue", - "eStr": ["enable|disable"] + "eStr": "Invalid value \"true\" in \"ipv6_use_link_local_only\" element." } } diff --git a/src/sonic-yang-models/tests/yang_model_tests/tests/vlan.json b/src/sonic-yang-models/tests/yang_model_tests/tests/vlan.json index bf20b0f058d..7f1cb4eb352 100644 --- a/src/sonic-yang-models/tests/yang_model_tests/tests/vlan.json +++ b/src/sonic-yang-models/tests/yang_model_tests/tests/vlan.json @@ -85,7 +85,6 @@ }, "VLAN_INTERFACE_INVALID_ENABLE_IPV6_LINK_LOCAL": { "desc": "Enable the ipv6 link-local as true.", - "eStrKey" : "InvalidValue", - "eStr": ["enable|disable"] + "eStr": "Invalid value \"true\" in \"ipv6_use_link_local_only\" element." } } From 4d08ac71d5214a5ad79b8a47e6e0caa56a7da9b7 Mon Sep 17 00:00:00 2001 From: Akhilesh Samineni Date: Sat, 22 Apr 2023 21:32:43 -0700 Subject: [PATCH 5/5] Updated sample_config_db.json and Configuration schema. Signed-off-by: Akhilesh Samineni --- src/sonic-yang-models/doc/Configuration.md | 25 +++++++++++++++++++ .../tests/files/sample_config_db.json | 9 ++++--- 2 files changed, 31 insertions(+), 3 deletions(-) diff --git a/src/sonic-yang-models/doc/Configuration.md b/src/sonic-yang-models/doc/Configuration.md index c0bec1558f6..972f0e38170 100644 --- a/src/sonic-yang-models/doc/Configuration.md +++ b/src/sonic-yang-models/doc/Configuration.md @@ -34,6 +34,7 @@ Table of Contents * [FG_NHG_PREFIX](#fg_nhg_prefix) * [FLEX_COUNTER_TABLE](#flex_counter_table) * [Hash](#hash) + * [IPv6 Link-local] (#ipv6-link-local) * [KDUMP](#kdump) * [Kubernetes Master](#kubernetes-master) * [L2 Neighbors](#l2-neighbors) @@ -1082,6 +1083,30 @@ The configuration is applied globally for each ECMP and LAG on a switch. } ``` +### IPv6 Link-local +``` +{ + "INTERFACE": { + "Ethernet8": { + "ipv6_use_link_local_only": "disable" + } + }, + + "PORTCHANNEL_INTERFACE": { + "PortChannel01": { + "ipv6_use_link_local_only": "enable" + } + }, + + "VLAN_INTERFACE": { + "Vlan1000": { + "ipv6_use_link_local_only": "enable" + } + } +} + +``` + ### KDUMP ``` diff --git a/src/sonic-yang-models/tests/files/sample_config_db.json b/src/sonic-yang-models/tests/files/sample_config_db.json index 021bac8b30e..8f6041e3e71 100644 --- a/src/sonic-yang-models/tests/files/sample_config_db.json +++ b/src/sonic-yang-models/tests/files/sample_config_db.json @@ -116,7 +116,8 @@ "PORTCHANNEL_INTERFACE": { "PortChannel0003": { "nat_zone": "1", - "loopback_action": "drop" + "loopback_action": "drop", + "ipv6_use_link_local_only": "enable" }, "PortChannel0004": {"vrf_name": "Vrf_blue"}, "PortChannel42|10.1.0.1/31": {}, @@ -132,7 +133,8 @@ "VLAN_INTERFACE": { "Vlan111": { "nat_zone": "0", - "loopback_action": "forward" + "loopback_action": "forward", + "ipv6_use_link_local_only": "disable" }, "Vlan777": {}, "Vlan111|2a04:5555:45:6709::1/64": { @@ -1039,7 +1041,8 @@ "Ethernet16": {}, "Ethernet18": { "nat_zone": "1", - "loopback_action": "forward" + "loopback_action": "forward", + "ipv6_use_link_local_only": "enable" }, "Ethernet112|2a04:5555:40:a709::2/126": { "scope": "global",