This repository has been archived on 2025-03-20. You can view files and clone it, but cannot push or open issues or pull requests.
sonic-buildimage/dockers/docker-orchagent/ipinip.json.j2
Shuotian Cheng 486dfef732 [swss]: Update the ipinip.j2 template to specify the IPv4 loopback address (#998)
Use ipv4_loopback_addresses variable to store all IPv4 loopback addresses.
The source IP for encapsulation is chosen from one of the addresses.
The destination IPs for decapsulation is the list of the addresses.

Signed-off-by: Shu0T1an ChenG <shuche@microsoft.com>
2017-09-30 11:03:32 -07:00

26 lines
832 B
Django/Jinja

{# only IPv4 decapsulation is supported #}
{% set ipv4_loopback_addresses = [] %}
{% for (name, prefix) in LOOPBACK_INTERFACE %}
{%- if prefix | ipv4 %}
{%- set ipv4_loopback_addresses = ipv4_loopback_addresses.append(prefix) %}
{%- endif %}
{% endfor %}
[
{
"TUNNEL_DECAP_TABLE:IPINIP_TUNNEL" : {
"tunnel_type":"IPINIP",
"src_ip":"{{ ipv4_loopback_addresses | first | ip }}",
"dst_ip":"{% for prefix in ipv4_loopback_addresses %}{{ prefix | ip }}{% if not loop.last %},{% endif %}{% endfor %}",
{% if onie_switch_asic == "mlnx" %}
"dscp_mode":"uniform",
"ecn_mode":"standard",
{% else %}
"dscp_mode":"pipe",
"ecn_mode":"copy_from_outer",
{% endif %}
"ttl_mode":"pipe"
},
"OP": "SET"
}
]