vyos-conf-builder/templates/vyos_nat.j2
Benjamin Tayehanpour c04a9a752a works enough for now
2026-06-16 22:47:04 +02:00

20 lines
1.1 KiB
Django/Jinja

{% for r in rules %}
{% if r.kind == "dnat_wan" %}
set nat destination rule {{ r.id }} description "{{ r.service.name }}"
set nat destination rule {{ r.id }} destination port {{ r.service.public_port }}
set nat destination rule {{ r.id }} inbound-interface name {{ r.cfg.wan_interface }}
set nat destination rule {{ r.id }} protocol {{ r.service.protocol }}
set nat destination rule {{ r.id }} translation address {{ r.service.internal_ip }}
set nat destination rule {{ r.id }} translation port {{ r.service.internal_port }}
{% elif r.kind == "dnat_hairpin" %}
set nat destination rule {{ r.id }} description "{{ r.service.name }} hairpin"
set nat destination rule {{ r.id }} inbound-interface name {{ r.cfg.lan_interface }}
set nat destination rule {{ r.id }} destination address {{ r.cfg.public_ip }}
set nat destination rule {{ r.id }} destination port {{ r.service.public_port }}
set nat destination rule {{ r.id }} protocol {{ r.service.protocol }}
set nat destination rule {{ r.id }} translation address {{ r.service.internal_ip }}
set nat destination rule {{ r.id }} translation port {{ r.service.internal_port }}
{% endif %}
{% endfor %}