diff --git a/templates/interfaces.j2 b/templates/interfaces.j2 index d86e240..3185a09 100644 --- a/templates/interfaces.j2 +++ b/templates/interfaces.j2 @@ -11,12 +11,14 @@ iface {{ iface.name }} vrf mgmt {% for ip in iface.ip_addresses %} address {{ ip.address }} -{% set gw = query('netbox.netbox.nb_lookup', 'ip-addresses', api_filter=('tag=gateway parent=' + ip.address))|first %} -{% if gw is defined %} - gateway {{ gw.value.address | ipaddr('address') }} +{% set subnet = ip.address | ipaddr('subnet') %} +{% set prefix = query('netbox.netbox.nb_lookup', 'prefixes', api_filter=('prefix='+subnet))|first %} +{% set gateway = prefix.value.custom_fields.gateway.address %} +{% if gateway is defined %} + gateway {{ gateway | ipaddr('address') }} {% endif %} {% endfor %} {% endfor %} -source /etc/network/interfaces.d/* \ No newline at end of file +source /etc/network/interfaces.d/*