Setup interface for ip6ip6 tunneling

Running into systemd-networkd bugs, don't be fooled by "Local=::1" and
"Remote=::1". This still results in the equivalent of setting them to
'any' or '::' because we are using the default interface name.
This commit is contained in:
Patrik Lundin 2024-10-29 17:01:46 +01:00
parent 2ad7073858
commit 41298df063
Signed by: patlu
GPG key ID: A0A812BA2249F294
3 changed files with 34 additions and 0 deletions

View file

@ -71,6 +71,22 @@ class cdn::cache(
content => template('cdn/cache/10-cdn-ipip.network.erb'), content => template('cdn/cache/10-cdn-ipip.network.erb'),
} }
file { '/etc/systemd/network/10-cdn-ip6tunl.netdev.erb':
ensure => file,
owner => 'root',
group => 'root',
mode => '0644',
content => template('cdn/cache/10-cdn-ip6tunl.netdev.erb'),
}
file { '/etc/systemd/network/10-cdn-ip6tunl.network.erb':
ensure => file,
owner => 'root',
group => 'root',
mode => '0644',
content => template('cdn/cache/10-cdn-ip6tunl.network.erb'),
}
# Reload the network config if it has changed # Reload the network config if it has changed
exec { 'networkctl reload': exec { 'networkctl reload':
subscribe => [File['/etc/systemd/network/10-cdn-dummy.network'], File['/etc/systemd/network/10-cdn-ipip.network']], subscribe => [File['/etc/systemd/network/10-cdn-dummy.network'], File['/etc/systemd/network/10-cdn-ipip.network']],

View file

@ -0,0 +1,16 @@
[NetDev]
Name=ip6tnl0
Kind=ip6tnl
[Tunnel]
Independent=true
# Local and Remote should be 'any' or '::' but right now it does not work.
# However, by using the name "ip6tnl0" that matches the name of the interface
# automatically created when the kernel module is loaded it seems we can set
# anything "non-zero" here and the config will be accepted but still leaving
# "::" as both Local and Remote on the interface. This then results in the
# wanted configuration for now. One bug cancelling out another bug?
# https://github.com/systemd/systemd/issues/34930
Local=::1
Remote=::1
Mode=ip6ip6

View file

@ -0,0 +1,2 @@
[Match]
Name=ip6tnl0