You are not logged in.

#1 2018-02-23 19:11:13

TheGoliath
Member
From: Germany
Registered: 2017-03-24
Posts: 51
Website

systemd-nspawn IPv6 over DHCP

Another recap. The problem still persists after quite a long time.
I've modified my setup so it should work out accordingly for most purposes.
But one thing bothered me the past few days. I still want to get a fully functional
IPv6 setup (currently only capable of serving stuff over IPv4 to my containers).
The thing (as I've pointed out before editing the post) is, that my containers are able
to obtain a proper IPv4-address provided by dnsmasq but they somehow won't obtain a
valid IPv6 address.
So here are my configs:
/etc/dnsmasq.conf

no-poll
domain-needed
resolv-file=/etc/resolv.dnsmasq.conf
bogus-priv
listen-address=127.0.0.1,::1,10.1.0.1,2001:9c0:104:42::1
dhcp-range=10.1.100.100,10.1.100.200,255.255.0.0,12h
dhcp-range=2001:9b0:104:42::100,2001:9c0:104:42::1500,12h
dhcp-option=option6:dns-server,[2001:9c0:104:42::1]
enable-ra
conf-file=/usr/share/dnsmasq/trust-anchors.conf
dnssec
dnssec-check-unsigned

dhcp-host=http,10.1.0.2,[2001:9c0:104:42::2]
dhcp-host=mail,10.1.0.3,[2001:9c0:104:42::3]
dhcp-host=gitlab,10.1.0.4,[2001:9c0:104:42::4]

/etc/dnsmasq.resolv.conf

nameserver 1.1.1.1
nameserver 1.0.0.1
nameserver 2606:4700:4700::1111
nameserver 2606:4700:4700::1001

/etc/systemd/network/containerbr0.netdev

[NetDev]
Name=containerbr0
Kind=bridge

/etc/systemd/network/containerbr0.network

[Match]
Name=containerbr0

[Network]
Address=10.1.0.1/24
Address=2001:9c0:104:42::1/64
LinkLocalAddressing=yes
IPMasquerade=yes
LLDP=yes
EmitLLDP=customer-bridge

/etc/systemd/system/systemd-nspawn@.service.d/override.conf

[Service]
ExecStart=
ExecStart=/usr/bin/systemd-nspawn --quiet --keep-unit --boot --link-journal=try-guest --network-veth --network-bridge=containerbr0 -U --settings=override --machine=%i

journal:

Sep 22 21:54:55 Grape dnsmasq-dhcp[14718]: DHCPDISCOVER(containerbr0) 32:eb:e7:c0:49:dc
Sep 22 21:54:55 Grape dnsmasq-dhcp[14718]: DHCPOFFER(containerbr0) 10.1.0.2 32:eb:e7:c0:49:dc
Sep 22 21:54:55 Grape dnsmasq-dhcp[14718]: DHCPREQUEST(containerbr0) 10.1.0.2 32:eb:e7:c0:49:dc
Sep 22 21:54:55 Grape dnsmasq-dhcp[14718]: DHCPACK(containerbr0) 10.1.0.2 32:eb:e7:c0:49:dc http
Sep 22 21:54:57 Grape dnsmasq-dhcp[14718]: DHCPINFORMATION-REQUEST(containerbr0) 00:02:00:00:ab:11:44:2e:b5:c5:a7:61:e2:a

If any futher information is needed, feel free to ask for it.

Cheers,
TheGoliath

Last edited by TheGoliath (2018-09-22 20:20:08)

Offline

#2 2018-02-23 19:24:27

progandy
Member
Registered: 2012-05-17
Posts: 5,184

Re: systemd-nspawn IPv6 over DHCP

I don't have any idea about dhcpv6, but please read and follow Code of conduct: Pasting pictures and code


| alias CUTF='LANG=en_XX.UTF-8@POSIX ' |

Offline

#3 2018-09-22 20:21:17

TheGoliath
Member
From: Germany
Registered: 2017-03-24
Posts: 51
Website

Re: systemd-nspawn IPv6 over DHCP

progandy wrote:

I don't have any idea about dhcpv6, but please read and follow Code of conduct: Pasting pictures and code

Yeah, really sorry about the inconvenience I've caused. Edited the post accordingly (and updated it with some new information)

Offline

#4 2018-09-23 00:32:35

Omar007
Member
Registered: 2015-04-09
Posts: 368

Re: systemd-nspawn IPv6 over DHCP

Maybe a very weird question but is there a specific reason for using dnsmasq instead of configuring the container bridge network device in systemd-networkd to provide IPv6?

From the top of my head I'd say you just need to edit '/etc/systemd/network/containerbr0.network' and add 'IPv6PrefixDelegation=static' under the [Network] section and add the following:

[IPv6Prefix]
Prefix=2001:9c0:104:42::/64

EDIT: Also, fwiw, you might want to change the address/prefix you're using to a reserved range for internal use. https://en.wikipedia.org/wiki/Unique_local_address

Last edited by Omar007 (2018-09-23 00:49:39)

Offline

Board footer

Powered by FluxBB