Ich kriege IPv6 in Fedora 28 in Amazon EC2 nicht zum Laufen (verwende also Cloud-Init und DHCPv6).
Es funktioniert in RHEL 7 mit der beschriebenen KonfigurationHier/etc/sysconfig/network
. Die Anwendung der gleichen Konfiguration auf Fedora 28 scheint nichts zu bewirken. InsbesondereNICHTwird umgeschrieben, um zu enthalten NETWORKING_IPV6=yes
, enthält aber /etc/sysconfig/network-scripts/ifcfg-eth0
keinerlei IPv6-Inhalte.
Mein /etc/cloud/cloud.cfg.d/56-custom-networking.cfg
Inhalt:
network:
version: 1
config:
- type: physical
name: eth0
subnets:
- type: dhcp
- type: dhcp6
Das generierte Ergebnis /etc/sysconfig/network
ist:
NOZEROCONF=yes
DEVTIMEOUT=10
# Created by cloud-init on instance boot automatically, do not edit.
#
NETWORKING=yes
Das generierte Ergebnis /etc/sysconfig/network-scripts/ifcfg-eth0
ist:
# Created by cloud-init on instance boot automatically, do not edit.
#
BOOTPROTO=dhcp
DEVICE=eth0
HWADDR=0e:79:0a:22:60:26
ONBOOT=yes
TYPE=Ethernet
USERCTL=no
Mein ifconfig -a
:
[aram@eden ~]$ ifconfig -a
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 9001
inet 172.31.35.163 netmask 255.255.240.0 broadcast 172.31.47.255
inet6 fe80::c79:aff:fe22:6026 prefixlen 64 scopeid 0x20<link>
ether 0e:79:0a:22:60:26 txqueuelen 1000 (Ethernet)
RX packets 498 bytes 45355 (44.2 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 332 bytes 38967 (38.0 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10<host>
loop txqueuelen 1000 (Local Loopback)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
Betriebssystemversionen:
[aram@eden ~]$ cat /etc/os-release
NAME=Fedora
VERSION="28 (Cloud Edition)"
ID=fedora
VERSION_ID=28
PLATFORM_ID="platform:f28"
PRETTY_NAME="Fedora 28 (Cloud Edition)"
ANSI_COLOR="0;34"
CPE_NAME="cpe:/o:fedoraproject:fedora:28"
HOME_URL="https://fedoraproject.org/"
SUPPORT_URL="https://fedoraproject.org/wiki/Communicating_and_getting_help"
BUG_REPORT_URL="https://bugzilla.redhat.com/"
REDHAT_BUGZILLA_PRODUCT="Fedora"
REDHAT_BUGZILLA_PRODUCT_VERSION=28
REDHAT_SUPPORT_PRODUCT="Fedora"
REDHAT_SUPPORT_PRODUCT_VERSION=28
PRIVACY_POLICY_URL="https://fedoraproject.org/wiki/Legal:PrivacyPolicy"
VARIANT="Cloud Edition"
VARIANT_ID=cloud
[aram@eden ~]$
Antwort1
Dies liegt daran, dass die aktuelle Cloud-Init-Version (ich habe mit 17.1 getestet)nichtNetzwerkeinstellungen bei jedem Start neu generieren. Netzwerkeinstellungen werden nur beim ersten Start der Instanz generiert. Sie können dies beobachten, indem Sie sich in den Protokolldateien von cloud-init anmelden:
$ grep 'network config' /var/log/cloud-init.log
2018-09-18 22:13:26,089 - stages.py[INFO]: Applying network configuration from ds bringup=False: {'version': 1, 'config': [{'type': 'physical', 'name': 'eth0', 'subnets': [{'type': 'dhcp4'}], 'mac_address': '12:64:78:dd:c8:62'}]}
2018-09-18 22:13:29,211 - stages.py[DEBUG]: not a new instance. network config is not applied.
2018-09-26 10:08:08,367 - stages.py[DEBUG]: not a new instance. network config is not applied.
2018-09-26 10:08:11,458 - stages.py[DEBUG]: not a new instance. network config is not applied.
2018-09-26 11:01:12,917 - stages.py[DEBUG]: not a new instance. network config is not applied.
2018-09-26 11:01:16,011 - stages.py[DEBUG]: not a new instance. network config is not applied.
2018-09-26 11:10:38,782 - stages.py[DEBUG]: not a new instance. network config is not applied.
2018-09-26 11:10:41,871 - stages.py[DEBUG]: not a new instance. network config is not applied.
2018-09-26 11:12:10,407 - stages.py[DEBUG]: not a new instance. network config is not applied.
2018-09-26 11:12:13,475 - stages.py[DEBUG]: not a new instance. network config is not applied.
Wie Sie sehen, wurde die Netzwerkkonfiguration nur beim ersten Start angewendet (zu diesem Zeitpunkt hatte die Instanz noch kein IPV6).
Es besteht ein Problem bei der Anforderung, dieses Verhalten konfigurierbar zu machen:https://bugs.launchpad.net/cloud-init/+bug/1765801
Hier sind die Schritte, die ich ausgeführt habe, um IPV6 auf einer vorhandenen Instanz auf Amazon EC2 für Fedora 28 (Cloud Edition) zu aktivieren:
- Hinzufügen
NETWORKING_IPV6=yes
zu/etc/sysconfig/network
- Hinzufügen
DHCPV6C=yes
zu/etc/sysconfig/network-scripts/ifcfg-eth0
- Laufen
sudo systemctl restart network
Nach diesen Schritten ist IPV6 aktiviert und bleibt auch zwischen Neustarts bestehen. Wenn die Instanz jedoch aus irgendeinem Grund neu erstellt wird und Cloud-Init dies erneut als ersten Start betrachtet, gehen die Änderungen verloren. Cloud-Init generiert jedoch bereits standardmäßig eine IPV6-Netzkonfiguration, sodass Sie dennoch keine Probleme haben sollten.