diff options
| author | Christian Breunig <christian@breunig.cc> | 2026-03-04 20:27:21 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2026-03-04 20:27:21 +0100 |
| commit | ddaae274187916b3a7932372ee8944ddce8c5423 (patch) | |
| tree | 3d06206bb683bf87a57b64a84e33f5c707135521 /src | |
| parent | d69bff60c25781ffe52ba744ba5b5d7e8c6ddeea (diff) | |
| parent | f831da31dd0c02238a8e045087e1ab53173cb05f (diff) | |
| download | vyos-1x-ddaae274187916b3a7932372ee8944ddce8c5423.tar.gz vyos-1x-ddaae274187916b3a7932372ee8944ddce8c5423.zip | |
Merge pull request #4962 from jvoss/srv6_isis
isis: T6978: add IS-IS SRv6 node-msd configuration
Diffstat (limited to 'src')
| -rw-r--r-- | src/completion/list_srv6_locators.sh | 21 | ||||
| -rwxr-xr-x | src/conf_mode/protocols_isis.py | 7 |
2 files changed, 28 insertions, 0 deletions
diff --git a/src/completion/list_srv6_locators.sh b/src/completion/list_srv6_locators.sh new file mode 100644 index 000000000..03ca499d8 --- /dev/null +++ b/src/completion/list_srv6_locators.sh @@ -0,0 +1,21 @@ +#!/bin/bash +# +# Copyright (C) VyOS maintainers and contributors +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License version 2 or later as +# published by the Free Software Foundation. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see <http://www.gnu.org/licenses/>. +# +# This script is completion helper to list all configured SRv6 locators that +# are visible to FRR + +seg6LocatorsJson=$(vtysh -c 'show segment-routing srv6 locator json') +echo "$(echo "$seg6LocatorsJson" | jq -r '[.locators[].name][]')" diff --git a/src/conf_mode/protocols_isis.py b/src/conf_mode/protocols_isis.py index 151c5450a..3d172087e 100755 --- a/src/conf_mode/protocols_isis.py +++ b/src/conf_mode/protocols_isis.py @@ -261,6 +261,13 @@ def verify(config_dict): f'max-lsp-lifetime must be greater or equal to lsp-refresh-interval + 300' ) + # Check IS-IS SRv6 + if dict_search('segment_routing.srv6', isis): + # The interface used to install SRv6 SIDs in the Linux data plane. + # https://docs.frrouting.org/en/stable-10.2/isisd.html#clicmd-interface-NAME + if not dict_search('segment_routing.srv6.interface', isis): + raise ConfigError('Missing interface used for installing SRv6 SIDs') + return None def generate(config_dict): |
