Deaktivieren von IPv6 auf einer einzelnen Schnittstelle

9

Ich bin etwas verrückt darüber, dass Ubuntu IPv4-DHCP nicht verarbeitet, es sei denn, Sie sagen es ausdrücklich, aber ich nehme gerne IPv6-RAs, es sei denn, Sie sagen es nicht. Gibt es eine Möglichkeit, das Standardverhalten so zu ändern, dass "nichts tun, wenn ich es nicht explizit einschalte"?

(Hinweis für die Antwortenden: Ich möchte IPv6 nicht global deaktivieren oder Autoconf nicht vollständig deaktivieren. Ich möchte Autoconf standardmäßig deaktivieren (wie in möchte ich IPv6 nicht, es sei denn, ich sage dies in / etc / network / Schnittstellen, auf die gleiche Weise, wie ich nicht nur eine v4-Adresse erhalte, es sei denn, ich habe DHCP explizit aktiviert.) Was passiert, ist, dass für jede Schnittstelle, die aktiv ist - z. B. eine IPv4-Konfiguration - eine v6-Adresse dazu neigt, sich nur zu drehen Auch auf der Benutzeroberfläche, obwohl ich das nicht explizit aktiviert habe. Die bisherigen Lösungen sind in Ordnung, aber wenn ich v6 oder Autoconf global deaktiviere, kann ich v6 nicht wieder aktivieren Eine Schnittstelle pro Schnittstelle mit einem einfachen Befehl in / etc / network / interfaces. Ich bin mir ziemlich sicher, dass ich nach dem Mond auf einem Stock frage, wohlgemerkt.)

ijw
quelle
1
Hier ist ein Link zum Deaktivieren von ipv6. Ich habe es nicht selbst versucht. Lassen Sie mich wissen, ob es funktioniert: So deaktivieren Sie IPV6 in Ubuntu
BiggJJ
3
Dies ist wahrscheinlich der Fall, aber ich möchte IPv6 nicht deaktivieren, sondern nur die automatische Konfiguration von Schnittstellen verhindern, es sei denn, ich möchte, dass sie automatisch konfiguriert werden.
ijw

Antworten:

9

Autoconf in einem Teil der Grundfunktionalität von IPv6. RA-Ansagen sind keine DHCP-Ankündigungen, und der RA-Server weist keine Adressen zu. RA ist der IPv4-Autokonfiguration im IP-Bereich 169.254.0.0/16 viel näher. Wenn der Datenschutz aktiviert ist, ändert sich Ihre IPv6-Adresse im Laufe der Zeit. Ihre alte Adresse wird zurückgezogen und schließlich entfernt.

Sie können ipv6 autoconf einfach mit dem folgenden Befehl deaktivieren:

sudo sysctl -w net.ipv6.conf.all.autoconf=0

Ersetzen Sie alldurch den Schnittstellennamen, um eine Schnittstelle zu deaktivieren. Ersetzen autoconfdurch disable_ipv6, um IPv6 zu deaktivieren. Erstellen Sie eine Datei /etc/sysctl.dmit den Variablenzuweisungen, auf die die Einstellung beim Start angewendet werden soll.

Führen Sie den folgenden Befehl aus, um alle IPv6-bezogenen Einstellungen zu finden:

sudo sysctl -a | grep ipv6 | less
BillThor
quelle
4

Überprüfen, ob IPv6 aktiviert oder deaktiviert ist

$ cat /proc/sys/net/ipv6/conf/all/disable_ipv6

0 bedeutet, dass es aktiviert und 1 deaktiviert ist.

So deaktivieren Sie IPv6

$ su -
# nano /etc/sysctl.conf

und fügen Sie diese Zeilen zur Datei sysctl.conf hinzu

#disable ipv6
net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
net.ipv6.conf.lo.disable_ipv6 = 1

Speichern Sie die Datei sysctl.conf mit der neuen Konfiguration und starten Sie Ihr System neu

# reboot

Überprüfen Sie Ihr System erneut

$ cat /proc/sys/net/ipv6/conf/all/disable_ipv6

Jetzt sollte "1" angezeigt werden, was bedeutet, dass IPv6 auf Ihrem System deaktiviert wurde.

Von http://namhuy.net/1419/disable-ipv6-ubuntu-linux-mint.html


quelle
Hat für mich gearbeitet. Zumindest auf Centos können Sie "sudo sysctl -p" ausführen, um ohne Neustart neu zu laden
Code Wiget
2

Ähnlich, aber anders als bei einer der anderen Antworten, habe ich dies mit großer Freude versucht:

Fügen Sie eine sysctl-Datei in /etc/sysctl.d hinzu, um ipv6 zu deaktivieren - jedoch nicht universell, nur als Standardstatus der Schnittstelle:

net.ipv6.conf.default.disable_ipv6=1

Fügen Sie dann in der Schnittstellendatei und nur für die Schnittstellen, auf denen IPv6 installiert sein soll, Folgendes hinzu:

iface eth0 inet dhcp # .. or whatever
up sysctl -w net.ipv6.conf.$IFACE.disable_ipv6=0

... daher erhalten Schnittstellen keine IPv6-Adressen, wenn sie (wie derzeit) angezeigt werden, können aber in bestimmten Fällen davon überzeugt werden, diese zu haben. Sie können RAs zweifellos deaktivieren, bevor Sie ipv6 aktivieren, wenn Sie dies auch möchten.

NB: Ich vermute, dass Sie auf Probleme mit VLAN-benannten Schnittstellen (z. B. eth0.100) stoßen und diese im Befehl 'up' als 'eth0 / 100' und nicht als $ IFACE mit dem falschen Format angeben müssen - Ich habe nicht getestet, aber so scheint sysctl die Welt zu sehen.

ijw
quelle