Skip to content

Commit

Permalink
Refactor(eos_designs)!: Only render IGMP snooping querier version and…
Browse files Browse the repository at this point in the history
… address when enabled (#4478)
  • Loading branch information
MaheshGSLAB authored Sep 20, 2024
1 parent 8c5b32e commit 7be32b9
Show file tree
Hide file tree
Showing 7 changed files with 35 additions and 25 deletions.
17 changes: 17 additions & 0 deletions ansible_collections/arista/avd/docs/porting-guides/5.x.x.md
Original file line number Diff line number Diff line change
Expand Up @@ -523,6 +523,23 @@ To retain the previous behaviour, set the value to `false`:
+shutdown_interfaces_towards_undeployed_peers: false
```

### Only render IGMP snooping querier version and address when enabled

In AVD 4.0.0, the `ip igmp snooping vlan` command for version and address was rendered even when the IGMP snooping querier was not enabled.
Starting from AVD 5.0.0, the `ip igmp snooping vlan` command for version and address is rendered only when the IGMP snooping querier is enabled.

To retain the old configuration use custom structured configuration.

```diff
custom_structured_configuration_ip_igmp_snooping:
vlans:
- id: 1
querier:
enabled: false
address: 192.168.255.1
version: 3
```

### Default MTU value changed from `9214` to `9194` for Dps1, WAN HA and WAN p2p uplink interfaces

In AVD 4.0.0, the default MTU for Dps1, WAN HA and WAN p2p uplink interfaces was `9214`.
Expand Down
6 changes: 6 additions & 0 deletions ansible_collections/arista/avd/docs/release-notes/5.x.x.md
Original file line number Diff line number Diff line change
Expand Up @@ -156,6 +156,12 @@ Starting AVD 5.0.0, the default MTU for Dps1, WAN HA and WAN p2p uplink interfac

See the [porting guide](../porting-guides/5.x.x.md#default-mtu-value-changed-from-9214-to-9194-for-dps1-wan-ha-and-wan-p2p-uplink-interfaces) for details.

#### Only render IGMP snooping querier version and address when enabled

Starting from AVD 5.0.0, the `ip igmp snooping vlan` command for version and address is rendered only when the IGMP snooping querier is enabled.

See the [porting guide](../porting-guides/5.x.x.md#only-render-igmp-snooping-querier-version-and-address-when-enabled) for details.

#### ipv6_virtual_router_addresses are now configured if ipv6_enable is true on SVIs

For SVIs with `ipv6_virtual_router_addresses` set, AVD versions below 5.0.0 only rendered the configuration if `ipv6_address`
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -50,4 +50,4 @@ tenants:
expected_error_message: >-
Found duplicate objects with conflicting data while generating configuration for IGMP snooping for SVIs in VRF 'VRF1'.
{'id': 100, 'querier': {'enabled': True, 'address': '192.168.255.101'}} conflicts with {'id': 100, 'querier':
{'enabled': False, 'address': '192.168.255.101'}}.
{'enabled': False}}.
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,6 @@ ip igmp snooping vlan 2 querier
ip igmp snooping vlan 2 querier address 192.168.255.1
ip igmp snooping vlan 2 querier version 3
no ip igmp snooping vlan 3 querier
ip igmp snooping vlan 3 querier address 192.168.255.1
ip igmp snooping vlan 11 querier
ip igmp snooping vlan 11 querier address 1.1.1.1
ip igmp snooping vlan 11 querier version 3
Expand All @@ -38,23 +37,19 @@ ip igmp snooping vlan 102 querier
ip igmp snooping vlan 102 querier address 192.168.255.1
ip igmp snooping vlan 102 querier version 3
no ip igmp snooping vlan 103 querier
ip igmp snooping vlan 103 querier address 192.168.255.1
ip igmp snooping vlan 111 querier
ip igmp snooping vlan 111 querier address 1.1.1.1
ip igmp snooping vlan 111 querier version 3
ip igmp snooping vlan 112 querier
ip igmp snooping vlan 112 querier address 1.1.1.1
ip igmp snooping vlan 112 querier version 2
no ip igmp snooping vlan 113 querier
ip igmp snooping vlan 113 querier address 1.1.1.1
ip igmp snooping vlan 113 querier version 3
ip igmp snooping vlan 121 querier
ip igmp snooping vlan 121 querier address 2.2.2.2
ip igmp snooping vlan 121 querier version 1
ip igmp snooping vlan 122 querier
ip igmp snooping vlan 122 querier address 192.168.255.1
no ip igmp snooping vlan 123 querier
ip igmp snooping vlan 123 querier address 192.168.255.1
!
transceiver qsfp default-mode 4x10G
!
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -373,7 +373,6 @@ ip_igmp_snooping:
- id: 3
querier:
enabled: false
address: 192.168.255.1
- id: 101
querier:
enabled: true
Expand All @@ -386,7 +385,6 @@ ip_igmp_snooping:
- id: 103
querier:
enabled: false
address: 192.168.255.1
- id: 11
querier:
enabled: true
Expand All @@ -410,8 +408,6 @@ ip_igmp_snooping:
- id: 113
querier:
enabled: false
address: 1.1.1.1
version: 3
- id: 21
querier:
enabled: true
Expand All @@ -438,7 +434,6 @@ ip_igmp_snooping:
- id: 123
querier:
enabled: false
address: 192.168.255.1
ip_virtual_router_mac_address: 00:dc:00:00:00:0a
vlan_interfaces:
- name: Vlan1
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -310,8 +310,6 @@ def _get_port_channel_member_cfg(self: AvdStructuredConfigCoreInterfacesAndL3Edg
Return partial structured_config for one p2p_link.
Covers config for ethernet interfaces that are port-channel members.
TODO: Change description for members to be the physical peer interface instead of port-channel
"""
peer = p2p_link["data"]["peer"]
peer_interface = member["peer_interface"]
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -100,18 +100,17 @@ def _ip_igmp_snooping_vlan(self: AvdStructuredConfigNetworkServices, vlan: dict,

if igmp_snooping_querier_enabled is not None:
ip_igmp_snooping_vlan["querier"] = {"enabled": igmp_snooping_querier_enabled}
# TODO: The if below should be uncommented when we have settled the behavioral change
# if svi_igmp_snooping_querier_enabled is True:
address = default(igmp_snooping_querier.get("source_address"), tenant_igmp_snooping_querier.get("source_address"), self.shared_utils.router_id)
if address is not None:
ip_igmp_snooping_vlan["querier"]["address"] = address

version = default(
igmp_snooping_querier.get("version"),
tenant_igmp_snooping_querier.get("version"),
)
if version is not None:
ip_igmp_snooping_vlan["querier"]["version"] = version
if igmp_snooping_querier_enabled is True:
address = default(igmp_snooping_querier.get("source_address"), tenant_igmp_snooping_querier.get("source_address"), self.shared_utils.router_id)
if address is not None:
ip_igmp_snooping_vlan["querier"]["address"] = address

version = default(
igmp_snooping_querier.get("version"),
tenant_igmp_snooping_querier.get("version"),
)
if version is not None:
ip_igmp_snooping_vlan["querier"]["version"] = version

# IGMP snooping fast-leave feature is enabled only when evpn_l2_multicast is enabled
if evpn_l2_multicast_enabled is True:
Expand Down

0 comments on commit 7be32b9

Please sign in to comment.