feat: update ospf source for learned routes (#388)
- enable changing the source address for learned ospf routes - this enables the loopback0 interface to be used as a default src address - ensure k8s nodes use loopback0 as default src - ensure incus nodes use loopback0 as default src Reviewed-on: #388
This commit is contained in:
parent
ae4eb3a5eb
commit
0665873dc8
@ -158,6 +158,8 @@ networking::interfaces:
|
|||||||
# frrouting
|
# frrouting
|
||||||
exporters::frr_exporter::enable: true
|
exporters::frr_exporter::enable: true
|
||||||
frrouting::ospfd_router_id: "%{hiera('networking_loopback0_ip')}"
|
frrouting::ospfd_router_id: "%{hiera('networking_loopback0_ip')}"
|
||||||
|
frrouting::ospf_preferred_source_enable: true
|
||||||
|
frrouting::ospf_preferred_source: "%{hiera('networking_loopback0_ip')}"
|
||||||
frrouting::ospfd_redistribute:
|
frrouting::ospfd_redistribute:
|
||||||
- connected
|
- connected
|
||||||
frrouting::ospfd_interfaces:
|
frrouting::ospfd_interfaces:
|
||||||
|
|||||||
@ -101,6 +101,8 @@ profiles::consul::client::node_rules:
|
|||||||
# frrouting
|
# frrouting
|
||||||
exporters::frr_exporter::enable: true
|
exporters::frr_exporter::enable: true
|
||||||
frrouting::ospfd_router_id: "%{hiera('networking_loopback0_ip')}"
|
frrouting::ospfd_router_id: "%{hiera('networking_loopback0_ip')}"
|
||||||
|
frrouting::ospf_preferred_source_enable: true
|
||||||
|
frrouting::ospf_preferred_source: "%{hiera('networking_loopback0_ip')}"
|
||||||
frrouting::ospfd_redistribute:
|
frrouting::ospfd_redistribute:
|
||||||
- connected
|
- connected
|
||||||
frrouting::ospfd_interfaces:
|
frrouting::ospfd_interfaces:
|
||||||
|
|||||||
@ -14,6 +14,8 @@ class frrouting (
|
|||||||
Optional[String] $mpls_ldp_router_id = undef,
|
Optional[String] $mpls_ldp_router_id = undef,
|
||||||
Optional[String] $mpls_ldp_transport_addr = undef,
|
Optional[String] $mpls_ldp_transport_addr = undef,
|
||||||
Array[String] $mpls_ldp_interfaces = [],
|
Array[String] $mpls_ldp_interfaces = [],
|
||||||
|
Boolean $ospf_preferred_source_enable = false,
|
||||||
|
Optional[Stdlib::IP::Address] $ospf_preferred_source = undef,
|
||||||
) {
|
) {
|
||||||
|
|
||||||
$daemons_defaults = {
|
$daemons_defaults = {
|
||||||
|
|||||||
@ -43,3 +43,11 @@ mpls ldp
|
|||||||
exit-address-family
|
exit-address-family
|
||||||
exit
|
exit
|
||||||
<% end -%>
|
<% end -%>
|
||||||
|
<% if @ospf_preferred_source_enable && @ospf_preferred_source -%>
|
||||||
|
ip prefix-list ANY seq 5 permit 0.0.0.0/0 le 32
|
||||||
|
route-map OSPF-SRC permit 10
|
||||||
|
match ip address prefix-list ANY
|
||||||
|
set src <%= @ospf_preferred_source %>
|
||||||
|
exit
|
||||||
|
ip protocol ospf route-map OSPF-SRC
|
||||||
|
<% end -%>
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user