aristanetworks / avd

Arista Validated Designs
https://avd.arista.com
Apache License 2.0
293 stars 211 forks source link

Enable the querier's source addr with the IP of "overlay loopback" associated to the VRF instance #4351

Open jixh99 opened 2 months ago

jixh99 commented 2 months ago

Enhancement summary

we need to enable the querier's source addr with the IP of "overlay loopback" associated to the VRF instance. Per TAC case analysis, it's important to have the VRF reachability for the querier's source addr.

Regardless the defined variable in Ansible, the configuration generated is with the string of the variable instead of the value.

"NETWORK_SERVICES.yml"

Enable IGMP Snooping (Enabled by default on EOS).

      igmp_snooping_enabled: True
      igmp_snooping_querier:
        enabled: True

source_address: "{{lo1012_addrv4}}"

value of the variable of lo1012_addrv4

ansible -m debug -a "var=lo1012_addrv4" GSC-MDF-AV0* GSC-MDF-AV03 | SUCCESS => { "lo1012_addrv4": "10.30.92.6" }

The eos_cli_generate role only generates the variable string, instead of the value referred by the variable.

ip igmp snooping vlan 126 querier address {{lo1012_addrv4}}

Structure of the

# When enabled, IGMP snooping querier will only be configured on L3 devices, i.e., uplink_type: p2p.
igmp_snooping_querier:
  # Will be enabled automatically if "evpn_l2_multicast" is enabled.
  enabled: <bool>
  # Default IP address of Loopback0.
  source_address: <str>

Which component of AVD is impacted

eos_cli_config_gen

Use case example

Need to generate the VRF loopback IP as the querier's source, instead of the default global (underlay) loopback0. ip igmp snooping vlan 126 querier address 10.30.92.6

Describe the solution you would like

Need to generate the VRF loopback IP as the querier's source, instead of the default global (underlay) loopback0. ip igmp snooping vlan 126 querier address 10.30.92.6

Describe alternatives you have considered

No response

Additional context

No response

Contributing Guide

jixh99 commented 2 months ago

confirmed with Devroy, and the AVD generated loopback0 as querier for Vlan in VRF shall NOT be a functinoal problem. The enhancement is only asking for the flexibility adding the VRF loopback instead of the loopback0.

ClausHolbechArista commented 2 months ago

ok, so the enhancement could be to support a keyword like vrf_loopback instead of the IP. Something like:

# When enabled, IGMP snooping querier will only be configured on L3 devices, i.e., uplink_type: p2p.
igmp_snooping_querier:
  # Will be enabled automatically if "evpn_l2_multicast" is enabled.
  enabled: <bool>
  # Default IP address of Loopback0.
  source_address: <str; "router_id" | "vrf_loopback" | "<ip_address>"; default="router_id">