Ich weiß, dass es einen Parameter gibt, mit ip
dem Sie IPv4-Adressen im Linux-Kernel über den Bootloader konfigurieren können. Das sieht so aus:
ip=192.0.2.1::192.0.2.62:255.255.255.192::eth0:none
Ich suche einen gleichen Parameter für die IPv6-Konfiguration. Darüber konnte ich in den Kernel-Dokumentationen nichts finden.
Update : Da viele von Ihnen gefragt haben, warum ich das brauche: Die Idee, eine Kernel-Konfiguration zu verwenden, ist im Zusammenhang mit diesem Problem entstanden. Ich vermute, dass die reguläre Konfiguration der Startschnittstelle nicht durchgeführt wird, da die Schnittstellen bereits aktiv sind. Der Grund dafür könnte sein, dass ich eine Pre-Boot-Umgebung mit einem Dropbear-SSH-Server verwende, damit ich meine verschlüsselte Root-Partition entsperren kann. Die IP-Adressen für diese Umgebung werden über GRUB mit dem ip=
Parameter konfiguriert . In diesem Ethernet-Segment ist keine DHCP- oder Router-Ankündigung verfügbar, und da dies das von einem großen Hosting-Unternehmen bereitgestellte Uplink-Segment ist, gibt es keine Möglichkeit, diese Tatsache zu ändern.
ip=
Parameter sollte ursprünglich den IP-Stack konfigurieren, bevor der Kernel versucht, ein NFS-Root-Dateisystem bereitzustellen Ich bin jedoch der Meinung, dass Sie sich auf etwas anderes verlassen sollten, um dasselbe Ergebnis mit IPv6 (höchstwahrscheinlich SLAAC) zu erzielen.Antworten:
Entschuldigung, aber wenn Sie dies möchten, müssen Sie es selbst erstellen oder mit größerer Wahrscheinlichkeit die Implementierung einer anderen Person erneut verwenden.
Die
ip=
Befehlszeilenoption, die Sie verwendet haben, ist tatsächlich Teil des Boot-Codes des Kernels zum Mounten eines NFS-Root-Dateisystems . Es wurde noch nie für IPv6 erweitert und es gibt keinen Kernel-Boot-Parameter zum Konfigurieren von IPv6 beim Booten.Einige Linux-Distributionen wie Red Hat haben jedoch einen eigenen
ipv6=
Boot-Parameter für ihre Installationsmedien implementiert . Möglicherweise können Sie diesen Code in Ihren benutzerdefinierten initramfs wiederverwenden.quelle
Laut Fedora kann der Parameter ip = mit IPv4- oder IPv6-Adressen verwendet werden. IPv6-Adressen müssen in eckigen Klammern angegeben werden. Wenn Sie beides benötigen, können Sie mehrere ip = -Optionen in der Kernel-Zeile wie folgt verwenden:
... ip = [2001: db8 :: dead: beef] :: [2001: db8 :: cafe: babe]: 64 :: eth0: keine ip = 192.0.2.5 :: 192.0.2.1: 255.255.255.0 :: eth0: keine ...
quelle
Alle Ihre Boot-Parameter sind nach dem Booten über / proc / cmdline verfügbar. Sie können also einfach alle erforderlichen Optionen über einen benutzerdefinierten mkinitcpio-Hook einrichten, der cmdline bei der Suche nach bestimmten Parametern analysiert. Sie können ipv6 = wie ip = eins verwenden.
quelle