Skip to content

Commit ce3614f

Browse files
author
David Vølker
committed
firewall: T7452: update rule generation for Zone-based firewall
1 parent 8065232 commit ce3614f

File tree

2 files changed

+6
-10
lines changed

2 files changed

+6
-10
lines changed

data/templates/firewall/nftables-zone.j2

Lines changed: 4 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -12,9 +12,7 @@
1212
oifname { {{ zone_conf.member.interface | join(',') }} } counter jump VZONE_{{ zone_name }}
1313
{% endif %}
1414
{% if 'vrf' in zone_conf.member %}
15-
{% for vrf_name in zone_conf.member.vrf %}
16-
oifname { {{ zone_conf['vrf_interfaces'][vrf_name] }} } counter jump VZONE_{{ zone_name }}
17-
{% endfor %}
15+
oifname { {{ zone_conf.member.vrf | join(",") }} } counter jump VZONE_{{ zone_name }}
1816
{% endif %}
1917
{% endif %}
2018
{% endfor %}
@@ -69,10 +67,8 @@
6967
oifname { {{ zone[from_zone].member.interface | join(",") }} } counter return
7068
{% endif %}
7169
{% if 'vrf' in zone[from_zone].member %}
72-
{% for vrf_name in zone[from_zone].member.vrf %}
73-
oifname { {{ zone[from_zone]['vrf_interfaces'][vrf_name] }} } counter jump NAME{{ suffix }}_{{ from_conf.firewall[fw_name] }}
74-
oifname { {{ zone[from_zone]['vrf_interfaces'][vrf_name] }} } counter return
75-
{% endfor %}
70+
oifname { {{ zone[from_zone].member.vrf | join(",") }} } counter jump NAME{{ suffix }}_{{ from_conf.firewall[fw_name] }}
71+
oifname { {{ zone[from_zone].member.vrf | join(",") }} } counter return
7672
{% endif %}
7773
{% endfor %}
7874
{% endif %}
@@ -112,4 +108,4 @@
112108
}
113109
{% endif %}
114110
{% endfor %}
115-
{% endmacro %}
111+
{% endmacro %}

smoketest/scripts/cli/test_firewall.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1015,7 +1015,7 @@ def test_zone_with_vrf(self):
10151015
['chain VYOS_ZONE_FORWARD'],
10161016
['type filter hook forward priority filter + 1'],
10171017
['oifname { "eth1", "eth2" }', 'counter packets', 'jump VZONE_ZONE1'],
1018-
['oifname "eth0"', 'counter packets', 'jump VZONE_ZONE1'],
1018+
['oifname "VRF-1"', 'counter packets', 'jump VZONE_ZONE1'],
10191019
['oifname "vtun66"', 'counter packets', 'jump VZONE_ZONE2'],
10201020
['oifname "vti1"', 'counter packets', 'jump VZONE_ZONE2'],
10211021
['chain VYOS_ZONE_LOCAL'],
@@ -1050,7 +1050,7 @@ def test_zone_with_vrf(self):
10501050
['chain VYOS_ZONE_FORWARD'],
10511051
['type filter hook forward priority filter + 1'],
10521052
['oifname { "eth1", "eth2" }', 'counter packets', 'jump VZONE_ZONE1'],
1053-
['oifname "eth0"', 'counter packets', 'jump VZONE_ZONE1'],
1053+
['oifname "VRF-1"', 'counter packets', 'jump VZONE_ZONE1'],
10541054
['oifname "vtun66"', 'counter packets', 'jump VZONE_ZONE2'],
10551055
['oifname "vti1"', 'counter packets', 'jump VZONE_ZONE2'],
10561056
['chain VYOS_ZONE_LOCAL'],

0 commit comments

Comments
 (0)