Na rozdíl od jiných systémů nepoužívá pracovní stanice Fedora 25 ve výchozím nastavení stabilní adresy IPv6.
Například u CentOS 7 nebo Fedory 23 se automaticky nakonfiguruje stabilní IPv6 (v síti s podporou IPv6, kde je přítomen směrovač IPv6) – tedy takový, který je odvozen z MAC adresy.
Tuto adresu IPv6 pak lze použít v záznamu DNS AAAA.
Na rozdíl od toho IPv6 adresa systému pracovní stanice Fedora 25 nemá žádný vztah k její MAC adrese a nezdá se být stabilní.
Jak nakonfigurovat deterministické a stabilní adresy IPv6 na Fedoře 25?
Přijatá odpověď:
Na pracovní stanici Fedora 25 NetworkManager (NM) standardně konfiguruje všechna síťová rozhraní. To znamená i ty drátové. A NetworkManager nevytváří adresy IPv6 odvozené od EUI-64. Místo toho vytváří takzvané „stabilní soukromí“. Zřejmě proto, abychom neprozradili MAC adresu každému cíli IPv6.
Toto lze změnit pro dané rozhraní $i
změnou IPV6_ADDR_GEN_MODE
zadejte /etc/sysconfig/network-scripts/ifcfg-$i
konfigurační soubor. Například přes:
sed -i 's/^IPV6_ADDR_GEN_MODE=stable-privacy/IPV6_ADDR_GEN_MODE=eui64/'
/etc/sysconfig/network-scripts/ifcfg-$i
Změna se projeví poté, co NetworkManager znovu načte svou konfiguraci a po opětovném připojení:
nmcli con reload
nmcli con down $i
nmcli con up $i
Poznámky
- tato možnost není zobrazena prostřednictvím GUI nastavení NM
- soubory konfigurace rozhraní v
/etc/sysconfig/network-scripts
čtené NM jsou specifické pro Fedora/Redhat, ale konfigurační klíč nikoli – tj. na jiných distribucích NM pouze čte konfigurace rozhraní z různých umístění/konfiguračních souborů
Fedora také přichází s systemd-networkd, který ve výchozím nastavení nezakazuje generování EUI64. Jednodušší způsob, jak získat stabilní adresy IPv6 pod Fedorou, je jednoduše odstranit NetworkManager a místo toho nakonfigurovat/povolit systemd-networkd.
Nebo je možné v NetworkManageru nastavit příslušné rozhraní jako nespravované a poté jej nakonfigurovat v systemd-networkd.
V každém případě je pak síťová konfigurace docela minimální, např.:
cat /etc/systemd/network/20-wired.network
[Match]
# manage all matching interfaces
#Name=en*
# just manage one:
Name=eno1
[Network]
DHCP=ipv4