Translated using DeepL

Machine-translated page for increased accessibility for English questioners.

IPv6 at the Faculty of Informatics

The Faculty of Informatics has been allocated the network prefix 2001:0718:0801:0200::/56 by its internet service provider, CESNET.

If you wish to configure IPv6 on your machine, please contact the administrator at . The preferred option is to send us your DUID; alternatively, it is possible to configure the address statically. More information on both options is provided below. If you configure an IPv6 address on a machine you manage, we will also add this address to the DNS (AAAA record).

Current configuration

For your information, we’ll describe the convention we follow when assigning addresses. It isn’t necessary to understand this; if you wish to set up an IPv6 address, please contact us and we’ll provide you with the address.

We assign a public IPv6 address to machines with a public IPv4 address that logically corresponds to the IPv4 address as follows:

  • Take, for example, a machine with the address 147.251.42.106 on the network 147.251.42.0/24.
  • The first 16 bits ( 147.251) belong to the MU network; adding a further 8 bits ( 42) results in the (sub)network address, i.e. 147.251.42.0/24. The remaining 8 bits ( 106) identify the machine within the network.
  • 42 In hexadecimal, this is 2a; 106 is 6a.
  • So we take our 56 bits ( 2001:0718:0801:02), add 2a to them, and this results in the (sub)network 2001:718:801:22a::/64, which corresponds to the (sub)network 147.251.42.0/24.
  • Add 6a and we get the address 2001:718:801:22a::6a

The gateway is usually at 1 (except for the 147.251.48.0/24 and 2001:718:801:230::1/64 networks, where, for historical reasons, 1 is Aisa; the gateway is at 147.251.48.14 and 2001:718:801:230::e respectively).

DHCPv6

The preferred method is stateful autoconfiguration (DHCPv6). All you need to know is the device’s DUID (DHCP Unique Identifier). However, in practice, there are often problems with detecting or setting the DUID on the client. It depends on the operating system and then on the DHCP client, and it is not always straightforward.

On Windows, it can be determined via ipconfig (all the entries listed are the same; there is only one DUID for the entire device):

ipconfig /all | findstr "DUID"

On Linux, we usually find it by scanning network traffic using the tcpdump tool, a method that works regardless of which DHCP client is running on the machine. For example, it can be captured like this (in the command, remove the ‘ -e option_name ’ entries that your TShark does not recognise):

tshark -i $IFACE -f 'udp port 547' -T fields -E header=y \
    -E separator=/t -e eth.src -e dhcpv6.partial_name_preceded_by_fqdn \
    -e dhcpv6.client_fqdn -e ipv6.src -e dhcpv6.duid.bytes

In addition, for router advertisements to work, the machine must use an LLA based on the MAC address rather than a randomly generated one ( privacy extensions). For example, with NetworkManager, the relevant options are:

In the user interface
  • Method: Automatic
  • IPv6 privacy extensions: Disabled
  • IPv6 address generation method: EUI64
In the configuration file
[ipv6]
method=auto
ip6-privacy=0
addr-gen-mode=eui64

The DHCP client must also not request so-called prefix delegation; this behaviour is characteristic of systemd-networkd, for which the following must be added to the configuration ( /etc/systemd/network/*.network):

[DHCPv6]
UseDelegatedPrefix=no

Static configuration

We often use manual (static) configuration on servers. If we wish to configure IPv6, for example, on a machine with the IPv4 address 147.251.42.106, we assign it the logically corresponding IPv6 address, and the configuration will look like this:

Adress: 2001:718:801:22a::6a/64
Gateway: 2001:718:801:22a::1

Stateless configuration

SLAAC

In the case of stateless autoconfiguration ( SLAAC), the client selects the address itself. This method is used in the Eduroam and wlan_fi wireless networks, as well as on some virtual machines within the faculty’s cloud infrastructure Stratus.FI (we usually assign NAT-ed private IPv4 addresses and public IPv6 addresses to virtual machines).