quagga
: Manages common option of quagga servicesquagga::bgp
: Manage the Quagga BGP Daemonquagga::logging
: Loggingquagga::ospf
: Manage the Quagga OSPF daemonquagga::pim
: Manage Quagga Protocol Independent Multicasting (PIM)quagga::zebra
: manage the main zebra process
quagga::bgp::config
quagga::bgp::service
quagga::ospf::config
quagga::ospf::service
quagga::pim::config
quagga::pim::service
quagga::zebra::config
quagga::zebra::service
quagga::ospf::area
: configure an OSPF areaquagga::prefix_list
: manage a Quagga prefix listquagga::route_map
: Manage a quagga route-map
quagga::bgp::peer
: wrapper for quagga_bgp_peer and quagga_bgp_peer_address_family
quagga_access_list
: This type provides the capability to manage BGP community-list within puppet. Examples: quagga_access_list {'1': ensure => present,quagga_bgp_address_family
: This type provides capabilities to manage Quagga bgp address family parameters. Examples: quagga_bgp_address_family { 'ipv4_unicast':quagga_bgp_as_path
: This type provides the capabilities to manage BGP as-path access-list within puppet. Examples: quagga_bgp_as_path { 'as100':quagga_bgp_community_list
: This type provides the capability to manage BGP community-list within puppet. Examples: quagga_bgp_community_list { '100': enquagga_bgp_peer
: This type provides the capability to manage bgp neighbor within puppet. Examples: quagga_bgp_peer { '192.168.1.1': ensurequagga_bgp_peer_address_family
: This type provides capabilities to manage Quagga bgp address family parameters. Examples: quagga_bgp_peer_address_family { '192.168.0quagga_bgp_router
: This type provides the capability to manage bgp parameters within puppet. Examples: quagga_bgp_router { 'bgp': ensurequagga_global
: This type provides the capabilities to manage the routerquagga_interface
: This type provides the capabilities to manage Quagga interface parametersquagga_logging
: This type provides the capabilities to manage logging within puppet. Examples: quagga_logging { 'file': file_name => '/tmp/quagga.errquagga_ospf_area
: This type provides the capabilities to manage ospf area within puppet. Examples: ospf_area { '0.0.0.0': auth =>quagga_ospf_area_range
: This type provides the capabilities to manage ospf area range within puppet. Examples: ospf_area_name { '0.0.0.0 10.0.0.0/24':quagga_ospf_interface
: This type provides the capabilities to manage Quagga interface OSPF parameters.quagga_ospf_router
: This type provides the capabilities to manage ospf router within puppet. Examples: quagga_ospf_router { 'ospf': ensure => prequagga_pim_interface
: This type provides the capabilities to manage Quagga pim interface parametersquagga_pim_router
: This type provides the capabilities to manage the PIM routerquagga_prefix_list
: This type provides the capability to manage prefix-lists within puppet. Example: ```puppet quagga_prefix_list { 'TEST_PREFIX_LIST 10': enquagga_route_map
: This type provides the capability to manage route-map within puppet. Example: route_map {'TEST_ROUTE_MAP 10': ensure => prequagga_static_route
: This type provides the capability to manage static routes within puppet. Example: quagga_static_route {'172.16.2.0/24': ensure
Quagga::Bgp
Quagga::BgpPeerAddressFamily
: Address family specific settings for BGP peersQuagga::Ospf
Quagga::OspfRouter
Quagga::Pim
Quagga::Zebra
Manages common option of quagga services
The following parameters are available in the quagga
class:
default_owner
default_group
default_mode
default_content
service_file
service_file_manage
packages
config_dir
frr_mode_enable
pim_settings
ospf_settings
bgp_settings
zebra_settings
Data type: String
Specifies the default owner of quagga files.
Data type: String
Specifies the default group of quagga files.
Data type: String
Specifies the default mode of quagga files.
Data type: String
Specifies the default content of quagga files.
Data type: String
The system configuration file on the filesyustem
Data type: Boolean
Enable or disable management of the system configuration file
Data type: Hash
Specifies which packages will be installed
Data type: Stdlib::AbsolutePath
Directory in which the quagga configuration files reside
Default value: '/etc/quagga'
Data type: Boolean
Indicates whether this is a quagga or FRRouting based system
Default value: false
Data type: Quagga::Pim
Hash containing all of the pim daemon configuration directives
Data type: Quagga::Ospf
Hash containing all of the ospf daemon configuration directives
Data type: Quagga::Bgp
Hash containing all of the bgp daemon configuration directives
Data type: Quagga::Zebra
Hash containing all of the zebra daemon configuration directives
This class is automatically included when you include the main quagga class. However, it has a number of parameters that can be set via hiera.
- See also
- quagga_bgp_router
- quagga::bgp::peer
- quagga_bgp_as_path
- quagga_bgp_community_list
- quagga_bgp_address_family
The following parameters are available in the quagga::bgp
class:
agentx
config_file
config_file_manage
service_name
service_enable
service_manage
service_ensure
service_opts
router
peers
as_paths
community_lists
address_families
frr_mode_enable
Data type: Boolean
Enable SNMP integration
Data type: Stdlib::Unixpath
Path to the quagga configuration file for BGP
Default value: "${quagga::config_dir}/bgpd.conf"
Data type: Boolean
If true, manage the existence of the $config_file
Data type: String
System service name for quagga bgpd
Data type: Boolean
Manages the state of the service at boot
Data type: Boolean
If true, manages the state of the BGP daemon and the SNMP agentx
Data type: Enum['running', 'stopped']
Ensures the service is either stopped or running.
Data type: String
Options for the BGP service
Data type: Hash
Parameters for the router process.
Data type: Hash
BGP Peers.
Data type: Hash
AS Path rules.
Data type: Hash
BGP Community list options.
Data type: Hash
BGP Address family options.
Data type: Boolean
Logging
The following parameters are available in the quagga::logging
class:
Data type: Variant[ Enum['monitor', 'stdout', 'syslog'], Pattern[/\Afile\s(\/\S+)+\Z/] ]
The quagga logging backend.
Data type: Optional[Stdlib::Absolutepath]
If the backend is set to file, use this file as the output
Data type: Enum['alerts','critical','debugging','emergencies','errors','informational','notifications','warnings']
The log level
Manage the Quagga OSPF daemon
- See also
- quagga_ospf_router
- quagga_ospf_area
- @param interfaces OSPF parameters of interfaces.
- quagga_ospf_interface
The following parameters are available in the quagga::ospf
class:
agentx
config_file
config_file_manage
service_ensure
service_name
service_enable
service_manage
service_opts
router
areas
frr_mode_enable
interfaces
Data type: Boolean
Manage the AgentX integration
Data type: Stdlib::Unixpath
configuration file of the OSPF service.
Default value: "${quagga::config_dir}/ospfd.conf"
Data type: Boolean
Manage the configuration file content
Data type: Enum['running', 'stopped']
Controls whether the service is stopped or running.
Data type: String
the name of the OSPF service
Data type: Boolean
Enable the OSPF service
Data type: Boolean
Enable management of the OSPF service
Data type: String
Service start options
Data type: Hash
OSPF router options.
Data type: Hash
OSPF area options.
Data type: Boolean
Data type: Hash
Manage Quagga Protocol Independent Multicasting (PIM)
The following parameters are available in the quagga::pim
class:
agentx
config_file
config_file_manage
service_name
service_enable
service_manage
service_ensure
service_opts
router
interfaces
frr_mode_enable
Data type: Boolean
manage the SNMP agentx for PIM
Data type: Stdlib::Unixpath
configuration file of the PIM servie
Default value: "${quagga::config_dir}/pimd.conf"
Data type: Boolean
enable management of the PIM service setting file.
Data type: String
the name of the PIM service.
Data type: Boolean
enable the PIM service.
Data type: Boolean
enable management of the PIM service.
Data type: Enum['running', 'stopped']
the state of the PIM Service.
Data type: String
service start options.
Data type: Hash
PIM router options. See the type quagga_pim_router
.
Data type: Hash
OSPF parameters of interfaces. See the type quagga_pim_interface
.
Data type: Boolean
manage the main zebra process
The following parameters are available in the quagga::zebra
class:
agentx
hostname
global_opts
interfaces
prefix_lists
route_maps
routes
access_lists
config_file
config_file_manage
service_name
service_enable
service_manage
service_ensure
service_opts
frr_mode_enable
Data type: Boolean
Manage SNMP agentx processes for the main quagga zebra process
Data type: String
Router's hostname
Data type: Hash
Global options for all daemons
Data type: Hash
Global network interface parameters
Data type: Hash
Create prefix lists
Data type: Hash
Create route-map entries
Data type: Hash
Define static routes
Data type: Hash
Define access lists to use elsewhere in quagga config
Data type: Stdlib::Unixpath
The main configuration file name
Default value: "${quagga::config_dir}/zebra.conf"
Data type: Boolean
Manage the content of the configuration file
Data type: String
the main zebra service name
Data type: Boolean
enable the service
Data type: Boolean
manage the service state
Data type: Enum['running', 'stopped']
manage the actual service state of stopped or running
Data type: String
service startup options
Data type: Boolean
configure an OSPF area
- See also
- quagga_ospf_area
- quagga_ospf_area_range
The following parameters are available in the quagga::ospf::area
defined type:
ensure
auth
stub
access_list_export
access_list_import
prefix_list_export
prefix_list_import
networks
ranges
Data type: Enum['absent', 'present']
Manage the presence of the area
Default value: 'present'
Data type: Variant[Boolean, Enum['message-digest']]
Enable authentication on the area
Default value: false
Data type: Variant[Boolean, Enum['no-summary']]
Configure stub or stub no-summary properties on the area
Default value: false
Data type: Optional[String[1]]
Access list to use for OSPF area export
Default value: undef
Data type: Optional[String[1]]
Access list to use for OSPF area import
Default value: undef
Data type: Optional[String[1]]
Prefix list to use for OSPF area export
Default value: undef
Data type: Optional[String[1]]
Prefix list to use for OSPF area import
Default value: undef
Data type: Array[String[1]]
Networks that belong to an area. Note that with Quagga, the area must match the network for an interface exactly.
A short mask of /16
won't include all of the /17s
and longer below it.
Default value: []
Data type: Hash
Consolidate announcements to a larger block based on network ranges.
Default value: {}
manage a Quagga prefix list
- See also
- quagga_prefix_list
The following parameters are available in the quagga::prefix_list
defined type:
Data type: Hash
Prefix list definition
Default value: {}
Manage a quagga route-map
- See also
- quagga_route_map
The following parameters are available in the quagga::route_map
defined type:
Data type: Hash
the route-map definition
Default value: {}
This type provides the capability to manage BGP community-list within puppet.
Examples:
quagga_access_list {'1': ensure => present, remark => 'IP standard access list', rules => [ 'deny 10.0.0.128 0.0.0.127', 'deny 10.0.101.193', 'permit 10.0.0.0 0.0.255.255', 'permit 192.168.10.1'. 'deny any' ] } quagga_access_list {'100': ensure => present, remark => 'IP extended access-list', rules => [ 'deny ip host 10.0.1.100 any', 'permit ip 10.0.1.0 0.0.0.255 any', 'deny ip any any' ] } quagga_access_list {'a_word': ensure => present, remark => 'IP zebra access-list', rules => [ 'deny 192.168.0.0/23',, 'permit 192.168.0.0/16', 'deny any', ] }
The following properties are available in the quagga_access_list
type.
Valid values: present
, absent
The basic property that the resource should be in.
Default value: present
Specifies the remark for this access-list.
Permits and denies for this rule.
Default value: []
The following parameters are available in the quagga_access_list
type.
Valid values: %r{\A(1|\d{2}|1[3-9]\d{2})\Z}
, %r{\A(1\d{2}|2[0-6]\d{2})\Z}
, %r{\A[\w-]+\Z}
namevar
The number of this access list.
The specific backend to use for this quagga_access_list
resource. You will seldom need to specify this --- Puppet will
usually discover the appropriate provider for your platform.
This type provides capabilities to manage Quagga bgp address family parameters.
Examples:
quagga_bgp_address_family { 'ipv4_unicast':
aggregate_address => '192.168.0.0/24 summary-only',
maximum_ebgp_paths => 2,
maximum_ibgp_paths => 2,
networks => ['192.168.0.0/24', '172.16.0.0/24',],
}
The following properties are available in the quagga_bgp_address_family
type.
Valid values: %r{\A(\d+\.\d+\.\d+\.\d+/\d+)(\sas-set)?(\ssummary-only)?\Z}
, %r{\A([\h:/]+)(\ssummary-only)?\Z}
Configure BGP aggregate entries.
Default value: []
Valid values: present
, absent
The basic property that the resource should be in.
Default value: present
Valid values: %r{\A\d+\Z}
Forward packets over multiple paths.
Default value: 1
Valid values: %r{\A\d+\Z}
Forward packets over multiple paths.
Default value: 1
Valid values: %r{\A[\h\.:]+/\d+\Z}
Specify a network to announce via BGP.
Default value: []
Valid values: %r{\A(babel|connected|isis|kernel|ospf|rip|static)(\smetric\s\d+)?(\sroute-map\s\w+)?\Z}
Redistribute information from another routing protocol.
Default value: []
The following parameters are available in the quagga_bgp_address_family
type.
Valid values: %r{\Aipv4_(unicast|multicast)\Z}
, %r{\Aipv6_unicast\Z}
namevar
The Address family.
The specific backend to use for this quagga_bgp_address_family
resource. You will seldom need to specify this ---
Puppet will usually discover the appropriate provider for your platform.
This type provides the capabilities to manage BGP as-path access-list within puppet.
Examples:
quagga_bgp_as_path { 'as100':
ensure => present,
rules => [
'permit _100$',
'permit _100_',
],
}
The following properties are available in the quagga_bgp_as_path
type.
Valid values: present
, absent
The basic property that the resource should be in.
Default value: present
Valid values: %r{\A(permit|deny)\s\^?[_,\d\.\\\*\+\-\[\]\(\)\{\}\|\?]+\$?\Z}
Set actions of this ap-path list.
The following parameters are available in the quagga_bgp_as_path
type.
Valid values: %r{\A\w+\Z}
namevar
The name of the as-path access-list.
The specific backend to use for this quagga_bgp_as_path
resource. You will seldom need to specify this --- Puppet will
usually discover the appropriate provider for your platform.
This type provides the capability to manage BGP community-list within puppet.
Examples:
quagga_bgp_community_list { '100':
ensure => present,
rules => [
'permit 65000:50952',
'permit 65000:31500',
],
}
The following properties are available in the quagga_bgp_community_list
type.
Valid values: present
, absent
The basic property that the resource should be in.
Default value: present
Valid values: %r{\A(deny|permit)\s\^?[_,\d\.\\\*\+\-\[\]\(\)\{\}\|\?:]+\$?\Z}
Set actions of this community list.
The following parameters are available in the quagga_bgp_community_list
type.
Valid values: %r{^\d+$}
namevar
Community list number.
The specific backend to use for this quagga_bgp_community_list
resource. You will seldom need to specify this ---
Puppet will usually discover the appropriate provider for your platform.
This type provides the capability to manage bgp neighbor within puppet.
Examples:
quagga_bgp_peer { '192.168.1.1':
ensure => present,
peer_group => 'internal_peers',
password => 'QWRF$345!
The following properties are available in the quagga_bgp_peer
type.
Number of allowed hops to remote BGP peer
Default value: absent
Valid values: present
, absent
The basic property that the resource should be in.
Default value: present
Specify a local-as number.
Default value: absent
Valid values: false
, true
Don't send open messages to this neighbor.
Default value: false
Set a password
Default value: absent
Valid values: false
, true
, %r{\A[[:alpha:]]\w+\Z}
Member of the peer-group.
Specify a BGP neighbor AS.
Default value: absent
Valid values: false
, true
Administratively shut down this neighbor.
Default value: false
Valid values: absent
, %r{\A#{block}\.#{block}\.#{block}\.#{block}\Z}
, %r{\A\h+:[\h:]+\Z}
, %r{\A#{interface}\Z}
Source of routing updates.
Default value: absent
The following parameters are available in the quagga_bgp_peer
type.
Valid values: %r{\A(\d{,2}|1\d{2}|2[0-4]\d|25[0-5])\.(\d{,2}|1\d{2}|2[0-4]\d|25[0-5])\.(\d{,2}|1\d{2}|2[0-4]\d|25[0-5])\.(\d{,2}|1\d{2}|2[0-4]\d|25[0-5])\Z}
, %r{\A[\h:]+\Z}
, %r{\A\w+\Z}
namevar
The neighbor IP address or a peer-group name.
The specific backend to use for this quagga_bgp_peer
resource. You will seldom need to specify this --- Puppet will
usually discover the appropriate provider for your platform.
This type provides capabilities to manage Quagga bgp address family parameters.
Examples:
quagga_bgp_peer_address_family { '192.168.0.2 ipv4_unicast':
peer_group => PEER_GROUP,
activate => true,
allow_as_in => 1,
default_originate => true,
maximum_prefix => 500000,
next_hop_self => true,
prefix_list_in => PREFIX_LIST,
prefix_list_out => PREFIX_LIST,
remove_private_as => true,
route_map_export => ROUTE_MAP,
route_map_import => ROUTE_MAP,
route_map_in => ROUTE_MAP,
route_map_out => ROUTE_MAP,
route_reflector_client => false,
route_server_client => false,
send_community => 'both',
soft_reconfiguration => 'inbound',
}
The following properties are available in the quagga_bgp_peer_address_family
type.
Valid values: false
, true
Enable the Address Family for this Neighbor.
Default value: false
Accept as-path with my AS present in it.
Default value: absent
Valid values: false
, true
Originate default route to this neighbor.
Default value: false
Valid values: present
, absent
The basic property that the resource should be in.
Default value: present
Valid values: false
, true
Disable the next hop calculation for this neighbor.
Default value: false
Valid values: false
, true
, %r{\A[[:alpha:]]\w+\Z}
Member of the peer-group.
Valid values: absent
, %r{\A[[:alpha:]][\w-]+\Z}
Filter updates from this neighbor.
Default value: absent
Valid values: absent
, %r{\A[[:alpha:]][\w-]+\Z}
Filter updates to this neighbor.
Default value: absent
Valid values: absent
, %r{\A[[:alpha:]][\w-]+\Z}
Apply map to routes coming from a Route-Server client.
Default value: absent
Valid values: absent
, %r{\A[[:alpha:]][\w-]+\Z}
Apply map to routes going into a Route-Server client's table.
Default value: absent
Valid values: absent
, %r{\A[[:alpha:]][\w-]+\Z}
Apply map to incoming routes.
Default value: absent
Valid values: absent
, %r{\A[[:alpha:]][\w-]+\Z}
Apply map to outbound routes.
Default value: absent
Valid values: false
, true
Configure a neighbor as Route Reflector client.
Default value: false
Valid values: false
, true
Configure a neighbor as Route Server client.
Default value: false
The following parameters are available in the quagga_bgp_peer_address_family
type.
Valid values: %r{\A[\d\.]+\sipv4_(unicast|multicast)\Z}
, %r{\A[\h:]+\sipv6_unicast\Z}
, %r{\A\w+\sipv4_(unicast|multicast)\Z}
, %r{\A\w+\sipv6_unicast\Z}
namevar
Contains a bgp peer name and an address family.
The specific backend to use for this quagga_bgp_peer_address_family
resource. You will seldom need to specify this ---
Puppet will usually discover the appropriate provider for your platform.
This type provides the capability to manage bgp parameters within puppet.
Examples:
quagga_bgp_router { 'bgp':
ensure => present,
as_number => 65000,
import_check => true,
default_ipv4_unicast => false,
default_local_preference => 100,
router_id => '192.168.1.1',
keepalive => 3,
holdtime => 9,
}
The following properties are available in the quagga_bgp_router
type.
The AS number.
Valid values: false
, true
Activate ipv4-unicast for a peer by default.
Default value: false
Default local preference.
Default value: 100
Valid values: present
, absent
The basic property that the resource should be in.
Default value: present
Default BGP holdtime.
Default value: 9
Valid values: false
, true
Check BGP network route exists in IGP.
Default value: false
Default BGP keepalive interval.
Default value: 3
Valid values: re
Override configured router identifier.
The following parameters are available in the quagga_bgp_router
type.
namevar
BGP router instance.
The specific backend to use for this quagga_bgp_router
resource. You will seldom need to specify this --- Puppet will
usually discover the appropriate provider for your platform.
This type provides the capabilities to manage the router
The following properties are available in the quagga_global
type.
Set enable password.
Default value: absent
Valid values: true
, false
Enable IP forwarding.
Default value: false
Valid values: true
, false
Enable IPv6 forwarding.
Default value: false
Valid values: true
, false
Enter vty configuration mode.
Default value: true
Set password for vty interface. If there is no password, a vty won't accept connections.
Default value: absent
Valid values: true
, false
Encrypt passwords.
Default value: false
The following parameters are available in the quagga_global
type.
Router hostname.
The specific backend to use for this quagga_global
resource. You will seldom need to specify this --- Puppet will
usually discover the appropriate provider for your platform.
This type provides the capabilities to manage Quagga interface parameters
The following properties are available in the quagga_interface
type.
Set bandwidth value of the interface in kilobits/sec.
Default value: absent
Interface description.
Default value: absent
Valid values: true
, false
Whether the interface should be enabled or not.
Valid values: present
, absent
The basic property that the resource should be in.
Default value: present
The IP address.
Default value: []
Valid values: true
, false
Enable link state detection.
Default value: false
The following parameters are available in the quagga_interface
type.
namevar
The network interface name
The specific backend to use for this quagga_interface
resource. You will seldom need to specify this --- Puppet will
usually discover the appropriate provider for your platform.
This type provides the capabilities to manage logging within puppet.
Examples:
quagga_logging { 'file': file_name => '/tmp/quagga.errors.log', level => 'debugging, }
quagga_logging { 'syslog': facility => 'local7', level => 'warnings', }
The following properties are available in the quagga_logging
type.
Valid values: present
, absent
The basic property that the resource should be in.
Default value: present
Specifies the filename for file messages.
Valid values: alerts
, critical
, debugging
, emergencies
, errors
, informational
, notifications
, warnings
Specifies the logging level. The values are:
- alerts
- critical
- debugging
- emergencies
- errors
- informational
- notifications
- warnings
The following parameters are available in the quagga_logging
type.
Valid values: file
, monitor
, stdout
, syslog
namevar
Specifies a backend name of the logging system. The values are:
- file /path/to/file
- monitor
- stdout
- syslog
The specific backend to use for this quagga_logging
resource. You will seldom need to specify this --- Puppet will
usually discover the appropriate provider for your platform.
This type provides the capabilities to manage ospf area within puppet.
Examples:
ospf_area { '0.0.0.0':
auth => true,
stub => true,
access_list_export => 'ACCESS_LIST_EXPORT',
access_list_import => 'ACCESS_LIST_IPMORT',
prefix_list_export => 'PREFIX_LIST_EXPORT',
prefix_list_import => 'PREFIX_LIST_IMPORT',
networks => [ '10.0.0.0/8', '172.16.0.0/12', '192.168.0.0/16' ],
}
The following properties are available in the quagga_ospf_area
type.
Valid values: %r{\A[[:alpha:]][\w-]+\Z}
, absent
Set the filter for networks announced to other areas.
Default value: absent
Valid values: %r{\A[[:alpha:]][\w-]+\Z}
, absent
Set the filter for networks from other areas announced to the specified one.
Default value: absent
Valid values: false
, true
, message-digest
OSPF authentication.
Default value: false
Valid values: present
, absent
The basic property that the resource should be in.
Default value: present
Enable routing on an IP network.
Default value: []
Valid values: %r{\A[[:alpha:]][\w-]+\Z}
, absent
Filter networks sent from this area.
Default value: absent
Valid values: %r{\A[[:alpha:]][\w-]+\Z}
, absent
Filter networks sent to this area.
Default value: absent
Valid values: false
, true
, no-summary
Configure the OSPF area to be a stub area.
Default value: false
The following parameters are available in the quagga_ospf_area
type.
Valid values: re
namevar
OSPF area, ex. 0.0.0.0
.
The specific backend to use for this quagga_ospf_area
resource. You will seldom need to specify this --- Puppet will
usually discover the appropriate provider for your platform.
This type provides the capabilities to manage ospf area range within puppet.
Examples:
ospf_area_name { '0.0.0.0 10.0.0.0/24':
cost => 100,
advertise => true,
substitute => '10.0.0.0/8',
}
The following properties are available in the quagga_ospf_area_range
type.
User specified metric for this range
Default value: absent
Valid values: present
, absent
The basic property that the resource should be in.
Default value: present
Valid values: %r{\A#{block}\.#{block}\.#{block}\.#{block}/(?:[1-2]?[0-9]|3[0-2])\Z}
Network prefix to be announced instead of range
The following parameters are available in the quagga_ospf_area_range
type.
Valid values: false
, true
Advertise this range. Defaults to true
Default value: true
Valid values: %r{\A#{block}\.#{block}\.#{block}\.#{block}\s#{block}\.#{block}\.#{block}\.#{block}/(?:[1-2]?[0-9]|3[0-2])\Z}
namevar
Contains an OSPF area id and CIDR, ex. '0.0.0.0 10.0.0.0/24'
The specific backend to use for this quagga_ospf_area_range
resource. You will seldom need to specify this --- Puppet
will usually discover the appropriate provider for your platform.
This type provides the capabilities to manage Quagga interface OSPF parameters.
The following properties are available in the quagga_ospf_interface
type.
Valid values: absent
, message-digest
Interface OSPF authentication.
Default value: absent
Interface OSPF cost.
Default value: absent
Interval after which an OSPF neighbor is declared dead.
Default value: 40
HELLO packets interval between OSPF neighbours.
Default value: 10
Valid values: absent
, %r{\d+\smd5\s\S{1,16}}
Set OSPF authentication key to a cryptographic password. The cryptographic algorithm is MD5.
Default value: absent
Valid values: true
, false
Disable OSPF mtu mismatch detection.
Default value: false
Valid values: absent
, broadcast
, non-broadcast
, point-to-multipoint
, point-to-point
, loopback
OSPF network type
Default value: absent
Router OSPF priority.
Default value: 1
Time between retransmitting lost OSPF link state advertisements.
Default value: 5
Link state transmit delay.
Default value: 1
The following parameters are available in the quagga_ospf_interface
type.
namevar
The network interface name
The specific backend to use for this quagga_ospf_interface
resource. You will seldom need to specify this --- Puppet
will usually discover the appropriate provider for your platform.
This type provides the capabilities to manage ospf router within puppet.
Examples:
quagga_ospf_router { 'ospf':
ensure => present,
redistribute => [
'connected route-map QWER',
'kernel',
],
router_id => '10.0.0.1',
}
The following properties are available in the quagga_ospf_router
type.
Valid values: cisco
, ibm
, shortcut
, standard
Set OSPF ABR type.
Default value: cisco
Valid values: true
, false
, %r{\Aalways(\smetric\s\d+)?(\smetric-type\s[1-2])?(\sroute-map\s\w+)?\Z}
Control distribution of default information.
Default value: false
Valid values: %r{\A\w+\sout\s(babel|bgp|connected|isis|kernel|rip|static)\Z}
Filter networks in routing updates.
Default value: []
Valid values: present
, absent
The basic property that the resource should be in.
Default value: present
Valid values: true
, false
, detail
Log changes in adjacency.
Default value: false
Valid values: true
, false
Enable the Opaque-LSA capability (rfc2370).
Default value: false
Valid values: %r{\A(default|[[:alpha:]]+\w+(?:\s\d+\.\d+\.\d+\.\d+)?)\Z}
Suppress routing updates on interfaces.
Default value: []
Valid values: %r{\A(babel|bgp|connected|isis|kernel|rip|static)(\smetric\s\d+)?(\smetric-type\s[1-2])?(\sroute-map\s\w+)?\Z}
Redistribute information from another routing protocol.
Default value: []
Valid values: true
, false
Enable the RFC1583Compatibility flag.
Default value: false
Valid values: absent
, re
OSPF process router id
Default value: absent
The following parameters are available in the quagga_ospf_router
type.
namevar
OSPF router instance.
The specific backend to use for this quagga_ospf_router
resource. You will seldom need to specify this --- Puppet will
usually discover the appropriate provider for your platform.
This type provides the capabilities to manage Quagga pim interface parameters
The following properties are available in the quagga_pim_interface
type.
Valid values: true
, false
Enable IGMP.
Default value: false
IGMP query interval.
Default value: 125
IGMP maximum query response time in deciseconds.
Default value: 100
Valid values: true
, false
Enable multicast flag for the interface.
Default value: false
Valid values: true
, false
Enable PIM SSM operation.
Default value: false
The following parameters are available in the quagga_pim_interface
type.
namevar
The network interface name
The specific backend to use for this quagga_pim_interface
resource. You will seldom need to specify this --- Puppet
will usually discover the appropriate provider for your platform.
This type provides the capabilities to manage the PIM router
The following properties are available in the quagga_pim_router
type.
Valid values: true
, false
Enable IP multicast forwarding.
Default value: false
The following parameters are available in the quagga_pim_router
type.
namevar
PIM router instance.
The specific backend to use for this quagga_pim_router
resource. You will seldom need to specify this --- Puppet will
usually discover the appropriate provider for your platform.
This type provides the capability to manage prefix-lists within puppet.
Example:
quagga_prefix_list { 'TEST_PREFIX_LIST 10':
ensure => present,
action => permit,
ge => 8,
le => 24,
prefix => '224.0.0.0/4',
proto => 'ip',
}
The following properties are available in the quagga_prefix_list
type.
Valid values: deny
, permit
The action of this rule.
Default value: permit
Valid values: present
, absent
The basic property that the resource should be in.
Default value: present
Minimum prefix length to be matched.
Default value: absent
Maximum prefix length to be matched.
Default value: absent
Valid values: %r{\A([\h\.:/]+|any)\Z}
The IP prefix <network>/<length>
.
Valid values: ip
, ipv6
The IP protocol version.
The following parameters are available in the quagga_prefix_list
type.
Valid values: %r{\A[\w-]+\s\d+\Z}
namevar
The name of the prefix-list.
The specific backend to use for this quagga_prefix_list
resource. You will seldom need to specify this --- Puppet will
usually discover the appropriate provider for your platform.
This type provides the capability to manage route-map within puppet.
Example:
route_map {'TEST_ROUTE_MAP 10':
ensure => present,
action => 'permit',
match => [
'as-path PATH_LIST',
'community COMMUNITY_LIST',
],
on_match => 'next',
set => [
'local-preference 200',
'community none',
],
}
The following properties are available in the quagga_route_map
type.
Valid values: deny
, permit
The route-map action.
Default value: permit
Valid values: present
, absent
The basic property that the resource should be in.
Default value: present
Valid values: %r{\Aas-path\s(\w+)\Z}
, %r{\Acommunity\s(\w+)(\s(exact-match))?\Z}
, %r{\Aextcommunity\s(\w+)\Z}
, %r{\Ainterface\s(\w[\w\.:]+)\Z}
, %r{\Aip\s(address|next-hop|route-source)\s(\d+)\Z}
, %r{\Aip\s(address|next-hop|route-source)\s(\w[\w-]+)\Z}
, %r{\Aip\s(address|next-hop|route-source)\sprefix-list\s(\w[\w-]+)\Z}
, %r{\Aipv6\s(address|next-hop)\s(\w[\w-]+)\Z}
, %r{\Aipv6\s(address|next-hop)\sprefix-list\s(\w[\w-]+)\Z}
, %r{\Alocal-preference\s(\d+)\Z}
, %r{\Ametric\s(\d+)\Z}
, %r{\Aorigin\s(egp|igp|incomplete)\Z}
, %r{\Apeer\s(\d+\.\d+\.\d+\.\d+)\Z}
, %r{\Apeer\s([\d:]+)\Z}
, %r{\Apeer\slocal\Z}
, %r{\Aprobability\s(\d+)\Z}
, %r{\Atag\s(\d+)\Z}
Match values from routing table.
Default value: []
Valid values: absent
, %r{\Agoto\s(\d+)\Z}
, %r{\Anext\Z}
Exit policy on matches.
Default value: absent
Valid values: %r{\Aaggregator\sas\s(\d+)\Z}
, %r{\Aas-path\sexclude(\s(\d+))+\Z}
, %r{\Aas-path\sprepend(\s(\d+))+\Z}
, %r{\Aas-path\sprepend\slast-as\s(\d+)\Z}
, %r{\Aatomic-aggregate\Z}
, %r{\Acomm-list\s(\d+|\w[\w-]+)\sdelete\Z}
, %r{\Acommunity(\s(\d+:\d+))+(\sadditive)?\Z}
, %r{\Acommunity\snone\Z}
, %r{\Aforwarding-address\s([\d:]+)\Z}
, %r{\Aip\snext-hop\s((\d+\.\d+\.\d+\.\d+)|peer-address)\Z}
, %r{\Aipv6\snext-hop\s(global|local)\s([\d:]+)\Z}
, %r{\Aipv6\snext-hop\speer-address\Z}
, %r{\Alocal-preference\s(\d+)\Z}
, %r{\Ametric\s(\+|-)?(rtt|\d+)\Z}
, %r{\Ametric-type\stype-(1|2)\Z}
, %r{\Aorigin\s(egp|igp|incomplete)\Z}
, %r{\Aoriginator-id\s(\d+\.\d+\.\d+\.\d+)\Z}
, %r{\Asrc\s(\d+\.\d+\.\d+\.\d+)\Z}
, %r{\Atag\s(\d+)\Z}
, %r{\Avpn4\snext-hop\s(\d+\.\d+\.\d+\.\d+)\Z}
, %r{\Aweight\s(\d+)\Z}
Set values in destination routing protocol.
Default value: []
The following parameters are available in the quagga_route_map
type.
Valid values: %r{\A[[:alpha:]][\w-]+\s\d+\Z}
namevar
Contains a name and a sequence of the route-map.
The specific backend to use for this quagga_route_map
resource. You will seldom need to specify this --- Puppet will
usually discover the appropriate provider for your platform.
This type provides the capability to manage static routes within puppet.
Example:
quagga_static_route {'172.16.2.0/24':
ensure => present,
hexthop => '192.168.1.10',
distance => 10,
}
quagga_static_route {'172.16.3.0/24':
ensure => present,
hexthop => 'null0',
distance => 10,
}
The following properties are available in the quagga_static_route
type.
Specifies the distance value for this route.
Default value: absent
Valid values: present
, absent
The basic property that the resource should be in.
Default value: present
Valid values: absent
, blackhole
, reject
Sets reject or blackhole for this route.
Default value: absent
The following parameters are available in the quagga_static_route
type.
Specifies IP or the interface name of the nexthop router.
Default value: Null0
IP destination prefix.
The specific backend to use for this quagga_static_route
resource. You will seldom need to specify this --- Puppet
will usually discover the appropriate provider for your platform.
The Quagga::Bgp data type.
- See also
- quagga_bgp_router
- quagga::bgp::peer
- quagga_bgp_as_path
- quagga_bgp_community_list
- quagga_bgp_address_family
Alias of
Struct[=>]
The following parameters are available in the Quagga::Bgp
data type:
agentx
config_file
config_file_manage
service_name
service_enable
service_manage
service_ensure
service_opts
router
peers
as_paths
community_lists
address_families
Enable SNMP integration
Path to the quagga configuration file for BGP
If true, manage the existence of the $config_file
System service name for quagga bgpd
Manages the state of the service at boot
If true, manages the state of the BGP daemon and the SNMP agentx
Ensures the service is either stopped or running.
Options for the BGP service
Parameters for the router process.
BGP Peers.
AS Path rules.
BGP Community list options.
BGP Address family options.
Address family specific settings for BGP peers
- See also
- quagga_bgp_peer_address_family
Alias of
Struct[=>]
The Quagga::Ospf data type.
- See also
- quagga_ospf_router
- quagga_ospf_area
- quagga_ospf_interface
Alias of
Struct[=>]
The following parameters are available in the Quagga::Ospf
data type:
agentx
config_file
config_file_manage
service_ensure
service_name
service_enable
service_manage
service_opts
router
areas
interfaces
Manage the AgentX integration
configuration file of the OSPF service.
Manage the configuration file content
Controls whether the service is stopped or running.
the name of the OSPF service
Enable the OSPF service
Enable management of the OSPF service
Service start options
OSPF router options.
OSPF area options.
OSPF parameters of interfaces.
The Quagga::OspfRouter data type.
Alias of
Struct[=>]
The Quagga::Pim data type.
Alias of
Struct[=>]
The following parameters are available in the Quagga::Pim
data type:
agentx
config_file_manage
service_name
service_enable
service_manage
service_ensure
service_opts
router
interfaces
manage the SNMP agentx for PIM
enable management of the PIM service setting file.
the name of the PIM service.
enable the PIM service.
enable management of the PIM service.
the state of the PIM Service.
service start options.
PIM router options. See the type quagga_pim_router
.
OSPF parameters of interfaces. See the type quagga_pim_interface
.
The Quagga::Zebra data type.
Alias of
Struct[=>]
The following parameters are available in the Quagga::Zebra
data type:
agentx
hostname
global_opts
interfaces
prefix_lists
route_maps
routes
access_lists
config_file
config_file_manage
service_name
service_enable
service_manage
service_ensure
service_opts
Manage SNMP agentx processes for the main quagga zebra process
Router's hostname
Global options for all daemons
Global network interface parameters
Create prefix lists
Create route-map entries
Define static routes
Define access lists to use elsewhere in quagga config
The main configuration file name
Manage the content of the configuration file
the main zebra service name
enable the service
manage the service state
manage the actual service state of stopped or running
service startup options