From 61a146c606e302639ce971815805ffa108862248 Mon Sep 17 00:00:00 2001 From: Jeroen van Bemmel Date: Thu, 2 May 2024 21:21:48 +0000 Subject: [PATCH] Fix SR Linux IS-IS over ipv4 unnumbered interfaces --- netsim/ansible/templates/initial/srlinux.j2 | 12 +++++++++--- netsim/devices/srlinux.yml | 4 ++-- 2 files changed, 11 insertions(+), 5 deletions(-) diff --git a/netsim/ansible/templates/initial/srlinux.j2 b/netsim/ansible/templates/initial/srlinux.j2 index a18d9f6ae5..4920fb6881 100644 --- a/netsim/ansible/templates/initial/srlinux.j2 +++ b/netsim/ansible/templates/initial/srlinux.j2 @@ -2,14 +2,20 @@ - path: interface[name={{name}}]/subinterface[index={{index}}] val: description: "{{ intf.name | default( 'No description' )|replace('->','~')|regex_replace('[\\[\\]]','') }}" -{% if 'ipv4' in intf and intf.ipv4 is string %} +{% if 'ipv4' in intf and intf.ipv4|bool %} ipv4: admin-state: enable +{% if intf.ipv4 is string %} address: - ip-prefix: "{{ intf.ipv4 }}" -{% if not is_system %} +{% if not is_system %} primary: [null] -{% endif %} +{% endif %} +{% else %} + unnumbered: + admin-state: enable + interface: "system0.0" +{% endif %} {% endif %} {% if 'ipv6' in intf %} ipv6: diff --git a/netsim/devices/srlinux.yml b/netsim/devices/srlinux.yml index 42e0964af2..68a17f235b 100644 --- a/netsim/devices/srlinux.yml +++ b/netsim/devices/srlinux.yml @@ -54,9 +54,9 @@ features: unnumbered: False isis: unnumbered: - ipv4: False + ipv4: True ipv6: True - network: False + network: True vrf: keep_module: True ospfv2: True