mirror of
https://github.com/opnsense/plugins.git
synced 2026-05-28 04:34:15 -04:00
net/frr: Implement frr.conf file (#4528)
* net/frr: Implement frr.conf file, Part 1 * net/frr: Implement frr.conf file, Part 2 * net/frr: Implement frr.conf file, Part 3 * net/frr: Fix sa_policies.conf generation, include fix for passive interfaces https://github.com/opnsense/plugins/pull/4536, adjust comments
This commit is contained in:
parent
8fbddef879
commit
7a72050636
13 changed files with 60 additions and 165 deletions
|
|
@ -1,13 +1,7 @@
|
|||
bfdd.conf:/usr/local/etc/frr/bfdd.conf
|
||||
bgpd.conf:/usr/local/etc/frr/bgpd.conf
|
||||
ospfd.conf:/usr/local/etc/frr/ospfd.conf
|
||||
ospfd_carp.conf:/usr/local/etc/frr/ospfd_carp.conf
|
||||
ospf6d.conf:/usr/local/etc/frr/ospf6d.conf
|
||||
ospf6d_carp.conf:/usr/local/etc/frr/ospf6d_carp.conf
|
||||
ripd.conf:/usr/local/etc/frr/ripd.conf
|
||||
sa_policies.conf:/usr/local/etc/frr/sa_policies.conf
|
||||
staticd.conf:/usr/local/etc/frr/staticd.conf
|
||||
frr:/etc/rc.conf.d/frr
|
||||
zebra.conf:/usr/local/etc/frr/zebra.conf
|
||||
frr.conf:/usr/local/etc/frr/frr.conf
|
||||
vtysh.conf:/usr/local/etc/frr/vtysh.conf
|
||||
ospf6d_carp.conf:/usr/local/etc/frr/ospf6d_carp.conf
|
||||
ospfd_carp.conf:/usr/local/etc/frr/ospfd_carp.conf
|
||||
sa_policies.conf:/usr/local/etc/frr/sa_policies.conf
|
||||
syslog-ng-frr-events.conf:/usr/local/etc/syslog-ng.conf.d/frr-events.conf
|
||||
|
|
|
|||
|
|
@ -1,22 +1,5 @@
|
|||
{# included in frr.conf #}
|
||||
{% if helpers.exists('OPNsense.quagga.bfd.enabled') and OPNsense.quagga.bfd.enabled == '1' %}
|
||||
!
|
||||
! Zebra configuration saved from vty
|
||||
! 2017/03/03 20:21:04
|
||||
!
|
||||
{% if helpers.exists('OPNsense.quagga.general') %}
|
||||
{% if helpers.exists('OPNsense.quagga.general.enablesyslog') and OPNsense.quagga.general.enablesyslog == '1' %}
|
||||
log syslog {{ OPNsense.quagga.general.sysloglevel }}
|
||||
{% endif %}
|
||||
{% if helpers.exists('OPNsense.quagga.general.profile') %}
|
||||
frr defaults {{ OPNsense.quagga.general.profile }}
|
||||
{% endif %}
|
||||
{% endif %}
|
||||
!
|
||||
!
|
||||
!
|
||||
line vty
|
||||
!
|
||||
!
|
||||
bfd
|
||||
{% if helpers.exists('OPNsense.quagga.bfd.neighbors.neighbor') %}
|
||||
{% for neighbor in helpers.toList('OPNsense.quagga.bfd.neighbors.neighbor') %}
|
||||
|
|
@ -25,5 +8,4 @@ bfd
|
|||
{% endif %}
|
||||
{% endfor %}
|
||||
{% endif %}
|
||||
!
|
||||
{% endif %}
|
||||
|
|
|
|||
|
|
@ -1,3 +1,4 @@
|
|||
{# included in frr.conf #}
|
||||
{% if helpers.exists('OPNsense.quagga.bgp.enabled') and OPNsense.quagga.bgp.enabled == '1' %}
|
||||
{% from 'OPNsense/Macros/interface.macro' import physical_interface %}
|
||||
{% set addressFamilies = ['ipv4', 'ipv6' ] %}
|
||||
|
|
@ -26,21 +27,6 @@
|
|||
{% endif %}
|
||||
{% endfor %}
|
||||
{% endif %}
|
||||
!
|
||||
! Zebra configuration saved from vty
|
||||
! 2017/03/03 20:21:04
|
||||
!
|
||||
{% if helpers.exists('OPNsense.quagga.general') %}
|
||||
{% if helpers.exists('OPNsense.quagga.general.enablesyslog') and OPNsense.quagga.general.enablesyslog == '1' %}
|
||||
log syslog {{ OPNsense.quagga.general.sysloglevel }}
|
||||
{% endif %}
|
||||
{% if helpers.exists('OPNsense.quagga.general.profile') %}
|
||||
frr defaults {{ OPNsense.quagga.general.profile }}
|
||||
{% endif %}
|
||||
{% endif %}
|
||||
!
|
||||
!
|
||||
!
|
||||
{% if helpers.exists('OPNsense.quagga.bgp.asnumber') and OPNsense.quagga.bgp.asnumber != '' %}
|
||||
router bgp {{ OPNsense.quagga.bgp.asnumber }}
|
||||
{% if not helpers.empty('OPNsense.quagga.bgp.logneighborchanges') %}
|
||||
|
|
@ -220,7 +206,6 @@ router bgp {{ OPNsense.quagga.bgp.asnumber }}
|
|||
{% endif %}
|
||||
{% endfor %}
|
||||
exit-address-family
|
||||
!
|
||||
{% endfor %}
|
||||
|
||||
{% if helpers.exists('OPNsense.quagga.bgp.prefixlists.prefixlist') %}
|
||||
|
|
@ -228,13 +213,11 @@ router bgp {{ OPNsense.quagga.bgp.asnumber }}
|
|||
{% if prefixlist.enabled == '1' and prefixlist.version == 'IPv4' %}
|
||||
ip prefix-list {{ prefixlist.name }} seq {{ prefixlist.seqnumber }} {{ prefixlist.action }} {{ prefixlist.network }}
|
||||
{% endif %}
|
||||
!
|
||||
{% if prefixlist.enabled == '1' and prefixlist.version == 'IPv6' %}
|
||||
ipv6 prefix-list {{ prefixlist.name }} seq {{ prefixlist.seqnumber }} {{ prefixlist.action }} {{ prefixlist.network }}
|
||||
{% endif %}
|
||||
{% endfor %}
|
||||
{% endif %}
|
||||
!
|
||||
{% if helpers.exists('OPNsense.quagga.bgp.aspaths.aspath') %}
|
||||
{% for aspath in helpers.sortDictList(OPNsense.quagga.bgp.aspaths.aspath, 'number' ) %}
|
||||
{% if aspath.enabled == '1' %}
|
||||
|
|
@ -242,7 +225,6 @@ bgp as-path access-list {{ aspath.number }} {{ aspath.action }} {{ aspath.as }}
|
|||
{% endif %}
|
||||
{% endfor %}
|
||||
{% endif %}
|
||||
!
|
||||
{% if helpers.exists('OPNsense.quagga.bgp.communitylists.communitylist') %}
|
||||
{% for communitylist in helpers.sortDictList(OPNsense.quagga.bgp.communitylists.communitylist, 'number' ) %}
|
||||
{% if communitylist.enabled == '1' %}
|
||||
|
|
@ -250,7 +232,6 @@ bgp community-list {{ communitylist.number }} seq {{ communitylist.seqnumber }}
|
|||
{% endif %}
|
||||
{% endfor %}
|
||||
{% endif %}
|
||||
!
|
||||
{% if helpers.exists('OPNsense.quagga.bgp.routemaps.routemap') %}
|
||||
{% for routemap in helpers.sortDictList(OPNsense.quagga.bgp.routemaps.routemap, 'name', 'id' ) %}
|
||||
{% if routemap.enabled == '1' %}
|
||||
|
|
@ -290,13 +271,8 @@ route-map {{ routemap.name }} {{ routemap.action }} {{ routemap.id }}
|
|||
{% endif %}
|
||||
{% endfor %}
|
||||
{% endif %}
|
||||
!
|
||||
{% endif %}
|
||||
!
|
||||
{% if helpers.exists('OPNsense.quagga.bgpd.enabled') and OPNsense.quagga.general.enablesnmp == '1' %}
|
||||
agentx
|
||||
{% endif %}
|
||||
!
|
||||
line vty
|
||||
!
|
||||
{% endif %}
|
||||
|
|
|
|||
|
|
@ -0,0 +1,8 @@
|
|||
{# Main configuration file #}
|
||||
{% include "OPNsense/Quagga/zebra.conf" %}
|
||||
{% include "OPNsense/Quagga/ripd.conf" %}
|
||||
{% include "OPNsense/Quagga/ospfd.conf" %}
|
||||
{% include "OPNsense/Quagga/ospf6d.conf" %}
|
||||
{% include "OPNsense/Quagga/bgpd.conf" %}
|
||||
{% include "OPNsense/Quagga/bfdd.conf" %}
|
||||
{% include "OPNsense/Quagga/staticd.conf" %}
|
||||
|
|
@ -1,26 +1,14 @@
|
|||
{# included in frr.conf #}
|
||||
{% macro cline(directive, modelname) -%}{% if modelname %}
|
||||
ipv6 ospf6 {{ directive }} {{ modelname }}
|
||||
{% endif %}{%- endmacro %}
|
||||
{% from 'OPNsense/Macros/interface.macro' import physical_interface %}
|
||||
{% if not helpers.empty('OPNsense.quagga.ospf6.enabled') %}
|
||||
!
|
||||
! Zebra configuration saved from vty
|
||||
! 2017/03/03 20:21:04
|
||||
!
|
||||
{% if helpers.exists('OPNsense.quagga.general') %}
|
||||
{% if not helpers.empty('OPNsense.quagga.general.enablesyslog') %}
|
||||
log syslog {{ OPNsense.quagga.general.sysloglevel }}
|
||||
{% endif %}
|
||||
{% if helpers.exists('OPNsense.quagga.general.profile') %}
|
||||
frr defaults {{ OPNsense.quagga.general.profile }}
|
||||
{% endif %}
|
||||
{% if OPNsense.quagga.general.enablesnmp == '1' %}
|
||||
agentx
|
||||
{% endif %}
|
||||
{% endif %}
|
||||
!
|
||||
!
|
||||
!
|
||||
{% for interface in helpers.toList('OPNsense.quagga.ospf6.interfaces.interface') %}
|
||||
{% if interface.enabled == '1' %}
|
||||
interface {{ physical_interface(interface.interfacename) }}
|
||||
|
|
@ -38,10 +26,9 @@ interface {{ physical_interface(interface.interfacename) }}
|
|||
}}{{ cline("hello-interval",interface.hellointerval)
|
||||
}}{{ cline("priority",interface.priority)
|
||||
}}{{ cline("retransmit-interval",interface.retransmitinterval)
|
||||
}}!
|
||||
}}
|
||||
{% endif %}
|
||||
{% endfor %}
|
||||
!
|
||||
router ospf6
|
||||
{% if not helpers.empty('OPNsense.quagga.ospf6.routerid') %}
|
||||
ospf6 router-id {{ OPNsense.quagga.ospf6.routerid }}
|
||||
|
|
@ -88,7 +75,6 @@ router ospf6
|
|||
{% endif %}
|
||||
{% endfor %}
|
||||
{% endif %}
|
||||
!
|
||||
{% if helpers.exists('OPNsense.quagga.ospf6.prefixlists.prefixlist') %}
|
||||
{% for prefixlist in helpers.sortDictList(OPNsense.quagga.ospf6.prefixlists.prefixlist, 'name', 'seqnumber' ) %}
|
||||
{% if prefixlist.enabled == '1' %}
|
||||
|
|
@ -96,7 +82,6 @@ ipv6 prefix-list {{ prefixlist.name }} seq {{ prefixlist.seqnumber }} {{ prefixl
|
|||
{% endif %}
|
||||
{% endfor %}
|
||||
{% endif %}
|
||||
!
|
||||
{% if helpers.exists('OPNsense.quagga.ospf6.routemaps.routemap') %}
|
||||
{% for routemap in helpers.sortDictList(OPNsense.quagga.ospf6.routemaps.routemap, 'name', 'id' ) %}
|
||||
{% if routemap.enabled == '1' %}
|
||||
|
|
@ -115,7 +100,4 @@ route-map {{ routemap.name }} {{ routemap.action }} {{ routemap.id }}
|
|||
{% endif %}
|
||||
{% endfor %}
|
||||
{% endif %}
|
||||
!
|
||||
line vty
|
||||
!
|
||||
{% endif %}
|
||||
|
|
|
|||
|
|
@ -1,3 +1,4 @@
|
|||
{# consumed by ospf6d.py #}
|
||||
{% from 'OPNsense/Macros/interface.macro' import physical_interface %}
|
||||
{% if helpers.exists('OPNsense.quagga.ospf6.interfaces.interface') %}
|
||||
{% for interface in helpers.toList('OPNsense.quagga.ospf6.interfaces.interface') %}
|
||||
|
|
|
|||
|
|
@ -1,54 +1,51 @@
|
|||
{# included in frr.conf #}
|
||||
{% macro cline(directive, modelname) -%}{% if modelname %}
|
||||
ip ospf {{ directive }} {{ modelname }}
|
||||
{% endif %}{%- endmacro %}
|
||||
{% from 'OPNsense/Macros/interface.macro' import physical_interface %}
|
||||
{% if helpers.exists('OPNsense.quagga.ospf.enabled') and OPNsense.quagga.ospf.enabled == '1' %}
|
||||
!
|
||||
! Zebra configuration saved from vty
|
||||
! 2017/03/03 20:21:04
|
||||
!
|
||||
{% if helpers.exists('OPNsense.quagga.general') %}
|
||||
{% if helpers.exists('OPNsense.quagga.general.enablesyslog') and OPNsense.quagga.general.enablesyslog == '1' %}
|
||||
log syslog {{ OPNsense.quagga.general.sysloglevel }}
|
||||
{% endif %}
|
||||
{% if helpers.exists('OPNsense.quagga.general.profile') %}
|
||||
frr defaults {{ OPNsense.quagga.general.profile }}
|
||||
{% endif %}
|
||||
{% if OPNsense.quagga.general.enablesnmp == '1' %}
|
||||
agentx
|
||||
{% endif %}
|
||||
{% endif %}
|
||||
!
|
||||
!
|
||||
!
|
||||
{% if helpers.exists('OPNsense.quagga.ospf.interfaces.interface') %}
|
||||
{% for interface in helpers.toList('OPNsense.quagga.ospf.interfaces.interface') %}
|
||||
{% if interface.enabled == '1' %}
|
||||
interface {{ physical_interface(interface.interfacename) }}
|
||||
{% if interface.bfd|default('') == '1' %}
|
||||
ip ospf bfd
|
||||
{% endif %}
|
||||
{% if interface.networktype %}
|
||||
{{ cline("network",interface.networktype)
|
||||
}}{% endif %}
|
||||
{% if interface.authtype and interface.authtype == 'message-digest'
|
||||
%}{{ cline("authentication",interface.authtype)
|
||||
}}{{ cline("message-digest-key " + interface.authkey_id + " md5",interface.authkey)
|
||||
}}{% elif interface.authtype and interface.authtype == 'plain'
|
||||
%}{{ cline("authentication",' ')
|
||||
}}{{ cline("authentication-key",interface.authkey)
|
||||
}}{% endif
|
||||
%}{{ cline("area",interface.area)
|
||||
}}{{ cline("cost",interface.cost)
|
||||
}}{{ cline("dead-interval",interface.deadinterval)
|
||||
}}{{ cline("hello-interval",interface.hellointerval)
|
||||
}}{{ cline("priority",interface.priority)
|
||||
}}{{ cline("retransmit-interval",interface.retransmitinterval)
|
||||
}}!
|
||||
{% endif %}
|
||||
{% endfor %}
|
||||
{% set passive_interfaces = [] %}
|
||||
{% if helpers.exists('OPNsense.quagga.ospf.passiveinterfaces') and OPNsense.quagga.ospf.passiveinterfaces != '' %}
|
||||
{% for line in OPNsense.quagga.ospf.passiveinterfaces.split(',') %}
|
||||
{% set iface = physical_interface(line) %}
|
||||
{% set _ = passive_interfaces.append(iface) %}
|
||||
interface {{ iface }}
|
||||
ip ospf passive
|
||||
{% endfor %}
|
||||
{% endif %}
|
||||
{# Render only the enabled non-passive interfaces past this point #}
|
||||
{% if helpers.exists('OPNsense.quagga.ospf.interfaces.interface') %}
|
||||
{% for interface in helpers.toList('OPNsense.quagga.ospf.interfaces.interface') %}
|
||||
{% set iface = physical_interface(interface.interfacename) %}
|
||||
{% if interface.enabled == '1' and iface not in passive_interfaces %}
|
||||
interface {{ iface }}
|
||||
{% if interface.bfd|default('') == '1' %}
|
||||
ip ospf bfd
|
||||
{% endif %}
|
||||
{% if interface.networktype %}
|
||||
{{ cline("network", interface.networktype) }}
|
||||
{% endif %}
|
||||
{% if interface.authtype and interface.authtype == 'message-digest' %}
|
||||
{{ cline("authentication", interface.authtype) }}
|
||||
{{ cline("message-digest-key " + interface.authkey_id + " md5", interface.authkey) }}
|
||||
{% elif interface.authtype and interface.authtype == 'plain' %}
|
||||
{{ cline("authentication", ' ') }}
|
||||
{{ cline("authentication-key", interface.authkey) }}
|
||||
{% endif %}
|
||||
{{ cline("area", interface.area) }}
|
||||
{{ cline("cost", interface.cost) }}
|
||||
{{ cline("dead-interval", interface.deadinterval) }}
|
||||
{{ cline("hello-interval", interface.hellointerval) }}
|
||||
{{ cline("priority", interface.priority) }}
|
||||
{{ cline("retransmit-interval", interface.retransmitinterval) }}
|
||||
{% endif %}
|
||||
{% endfor %}
|
||||
{% endif %}
|
||||
!
|
||||
router ospf
|
||||
{% if helpers.exists('OPNsense.quagga.ospf.logadjacencychanges') and OPNsense.quagga.ospf.logadjacencychanges == '1' %}
|
||||
log-adjacency-changes
|
||||
|
|
@ -64,10 +61,6 @@ router ospf
|
|||
{% if helpers.exists('OPNsense.quagga.ospf.redistributemap') and OPNsense.quagga.ospf.redistributemap != '' %}{% set line = line + " route-map " + helpers.getUUID(OPNsense.quagga.ospf.redistributemap).name %}{% endif %}
|
||||
redistribute {{ line }}
|
||||
{% endfor %}{% endif %}
|
||||
{% if helpers.exists('OPNsense.quagga.ospf.passiveinterfaces') and OPNsense.quagga.ospf.passiveinterfaces != '' %}
|
||||
{% for line in OPNsense.quagga.ospf.passiveinterfaces.split(',') %}
|
||||
passive-interface {{ physical_interface(line) }}
|
||||
{% endfor %}{% endif %}
|
||||
{% if helpers.exists('OPNsense.quagga.ospf.networks.network') %}
|
||||
{% for network in helpers.toList('OPNsense.quagga.ospf.networks.network') %}
|
||||
{% if network.enabled == '1' %}
|
||||
|
|
@ -98,7 +91,6 @@ router ospf
|
|||
default-information originate{% if helpers.exists('OPNsense.quagga.ospf.originatealways') and OPNsense.quagga.ospf.originatealways == '1' %} always {% endif %}{% if helpers.exists('OPNsense.quagga.ospf.originatemetric') and OPNsense.quagga.ospf.originatemetric != '' %} metric {{ OPNsense.quagga.ospf.originatemetric }}{% endif %}
|
||||
|
||||
{% endif %}
|
||||
!
|
||||
{% if helpers.exists('OPNsense.quagga.ospf.prefixlists.prefixlist') %}
|
||||
{% for prefixlist in helpers.sortDictList(OPNsense.quagga.ospf.prefixlists.prefixlist, 'name', 'seqnumber' ) %}
|
||||
{% if prefixlist.enabled == '1' %}
|
||||
|
|
@ -106,7 +98,6 @@ ip prefix-list {{ prefixlist.name }} seq {{ prefixlist.seqnumber }} {{ prefixlis
|
|||
{% endif %}
|
||||
{% endfor %}
|
||||
{% endif %}
|
||||
!
|
||||
{% if helpers.exists('OPNsense.quagga.ospf.routemaps.routemap') %}
|
||||
{% for routemap in helpers.sortDictList(OPNsense.quagga.ospf.routemaps.routemap, 'name', 'id' ) %}
|
||||
{% if routemap.enabled == '1' %}
|
||||
|
|
@ -125,7 +116,4 @@ route-map {{ routemap.name }} {{ routemap.action }} {{ routemap.id }}
|
|||
{% endif %}
|
||||
{% endfor %}
|
||||
{% endif %}
|
||||
!
|
||||
line vty
|
||||
!
|
||||
{% endif %}
|
||||
|
|
|
|||
|
|
@ -1,3 +1,4 @@
|
|||
{# consumed by ospfd.py #}
|
||||
{% from 'OPNsense/Macros/interface.macro' import physical_interface %}
|
||||
{% if helpers.exists('OPNsense.quagga.ospf.interfaces.interface') %}
|
||||
{% for interface in helpers.toList('OPNsense.quagga.ospf.interfaces.interface') %}
|
||||
|
|
|
|||
|
|
@ -1,18 +1,6 @@
|
|||
{# included in frr.conf #}
|
||||
{% if helpers.exists('OPNsense.quagga.rip.enabled') and OPNsense.quagga.rip.enabled == '1' %}
|
||||
{% from 'OPNsense/Macros/interface.macro' import physical_interface %}
|
||||
!
|
||||
! Zebra configuration saved from vty
|
||||
! 2017/03/26 22:40:16
|
||||
!
|
||||
{% if helpers.exists('OPNsense.quagga.general') %}
|
||||
{% if helpers.exists('OPNsense.quagga.general.enablesyslog') and OPNsense.quagga.general.enablesyslog == '1' %}
|
||||
log syslog {{ OPNsense.quagga.general.sysloglevel }}
|
||||
{% endif %}
|
||||
{% if helpers.exists('OPNsense.quagga.general.profile') %}
|
||||
frr defaults {{ OPNsense.quagga.general.profile }}
|
||||
{% endif %}
|
||||
{% endif %}
|
||||
!
|
||||
router rip
|
||||
version {{ OPNsense.quagga.rip.version }}
|
||||
{% if helpers.exists('OPNsense.quagga.rip.redistribute') and OPNsense.quagga.rip.redistribute != '' %}
|
||||
|
|
@ -31,7 +19,4 @@ router rip
|
|||
{% if helpers.exists('OPNsense.quagga.rip.defaultmetric') and OPNsense.quagga.rip.defaultmetric != '' %}
|
||||
default-metric {{ OPNsense.quagga.rip.defaultmetric }}
|
||||
{% endif %}
|
||||
!
|
||||
line vty
|
||||
!
|
||||
{% endif %}
|
||||
|
|
|
|||
|
|
@ -1,3 +1,4 @@
|
|||
{# consumed by scripts/frr/register_sas #}
|
||||
{% if helpers.exists('OPNsense.quagga.bgp.enabled') and OPNsense.quagga.bgp.enabled == '1' %}
|
||||
{% if helpers.exists('OPNsense.quagga.bgp.neighbors.neighbor') %}
|
||||
{% for neighbor in helpers.toList('OPNsense.quagga.bgp.neighbors.neighbor') %}
|
||||
|
|
|
|||
|
|
@ -1,18 +1,8 @@
|
|||
!
|
||||
! staticd Zebra config autogenerated by OPNsense
|
||||
!
|
||||
{# included in frr.conf #}
|
||||
{% if not helpers.empty('OPNsense.quagga.static.enabled') %}
|
||||
{% if not helpers.empty('OPNsense.quagga.general') %}
|
||||
log syslog {{ OPNsense.quagga.general.sysloglevel }}
|
||||
{% endif %}
|
||||
{% if not helpers.empty('OPNsense.quagga.general.profile') %}
|
||||
frr defaults {{ OPNsense.quagga.general.profile }}
|
||||
{% endif %}
|
||||
!
|
||||
{% for route in helpers.toList('OPNsense.quagga.static.routes.route') %}
|
||||
{% if route.enabled == '1' %}
|
||||
{% if ':' in route.network %}ipv6{% else %}ip{% endif %} route {{ route.network }} {{ route.gateway|default('')}} {{ helpers.physical_interface(route.interfacename) }}
|
||||
{% endif %}
|
||||
{% endfor %}
|
||||
!
|
||||
{% endif %}
|
||||
|
|
|
|||
|
|
@ -0,0 +1 @@
|
|||
{# file is empty on purpose since vtysh requires a configuration file to exist #}
|
||||
|
|
@ -1,28 +1,14 @@
|
|||
{# included in frr.conf #}
|
||||
{% if helpers.exists('OPNsense.quagga.general') %}
|
||||
!
|
||||
! Zebra configuration saved from vty
|
||||
! 2017/03/03 20:21:04
|
||||
!
|
||||
{% if helpers.exists('OPNsense.quagga.general.profile') %}
|
||||
frr defaults {{ OPNsense.quagga.general.profile }}
|
||||
{% endif %}
|
||||
{% if helpers.exists('OPNsense.quagga.general.enablesyslog') and OPNsense.quagga.general.enablesyslog == '1' %}
|
||||
log syslog {{ OPNsense.quagga.general.sysloglevel }}
|
||||
{% endif %}
|
||||
!
|
||||
!
|
||||
!
|
||||
!
|
||||
!
|
||||
{% if OPNsense.quagga.general.enablesnmp == '1' %}
|
||||
agentx
|
||||
{% endif %}
|
||||
!
|
||||
!
|
||||
ip forwarding
|
||||
ipv6 forwarding
|
||||
!
|
||||
!
|
||||
line vty
|
||||
!
|
||||
{% endif %}
|
||||
|
|
|
|||
Loading…
Reference in a new issue