fragen stichworte

Gibt es einen Linux-Kernel-Boot-Parameter zum Konfigurieren einer IPv6-Adresse?

Ich weiß, dass es einen Parameter mit dem Namen ip gibt, mit dem Sie IPv4-Adressen im Linux-Kernel über den Bootloader konfigurieren können. Das sieht wie folgt aus:

ip=192.0.2.1::192.0.2.62:255.255.255.192::eth0:none

Ich suche nach einem gleichwertigen Parameter für die IPv6-Konfiguration. Ich konnte in den Kernel-Dokumentationen nichts dazu finden.

Update: Aufgrund einer großen Anzahl von Benutzern wurde gefragt, warum ich Folgendes benötigen würde: Die Idee, eine Kernelkonfiguration zu verwenden, ergab sich aus diesem -Problem. Ich vermute, dass die Konfiguration der regulären Boot-Schnittstelle nicht erfolgt ist, da die Schnittstellen bereits aktiv sind. Der Grund dafür könnte darin liegen, dass ich eine Pre-Boot-Umgebung mit einem Dropbear-SSH-Server verwende, um meine verschlüsselte Stammpartition zu entsperren. Die IP-Adressen für diese Umgebung werden über GRUB mit dem Parameter ip= konfiguriert. In diesem Ethernet-Segment ist kein DHCP- oder Router-Advertisement verfügbar. Da dies das Uplink-Segment ist, das von einem großen Hosting-Unternehmen bereitgestellt wird, kann dies nicht geändert werden.

antworten

Entschuldigung, aber wenn Sie das wollen, müssen Sie es selbst erstellen oder, wahrscheinlicher, die Implementierung von jemand anderem wiederverwenden.

Die ip= Befehlszeilenoption, die Sie verwendet haben, ist tatsächlich Teil des Kernel-Boot-Codes für , der ein NFS-Root-Dateisystem bereitstellt. Es wurde nie für IPv6 erweitert, und es gibt keinen Kernel-Boot-Parameter zum Konfigurieren von IPv6 beim Booten.

Das heißt, einige Linux-Distributionen wie Red Hat haben ihren eigenen ipv6= Boot-Parameter für ihre Installationsmedien implementiert. Sie können diesen Code möglicherweise in Ihrem benutzerdefinierten initramfs wiederverwenden.

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 ...

Alle Boot-Parameter sind nach dem Booten über/proc/cmdline verfügbar. Sie können also alle erforderlichen Optionen über den benutzerdefinierten mkinitcpio-Hook einrichten, der cmdline bei der Suche nach einem bestimmten Parameter analysiert. Sie können ipv6 = wie ip = one verwenden.