Dynamisches Aktivieren und Deaktivieren von ipv6 auf einer Schnittstelle

14

Wie kann ich IPv6 auf einer Schnittstelle dynamisch aktivieren und deaktivieren, damit sie bei Aktivierung die lokale Linkadresse erhält? Ich habe versucht:

sysctl net.ipv6.conf.all.disable_ipv6=1 IPv6 deaktivieren

und

sysctl net.ipv6.conf.all.disable_ipv6=0 um IPv6 zu aktivieren.

Gibt es noch andere Möglichkeiten?

LxBgnr
quelle

Antworten:

9

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
net.ipv6.conf.eth0.disable_ipv6 = 1

Speichern Sie die Datei sysctl.conf mit der neuen Konfiguration und führen Sie den folgenden Befehl aus, um die neuen Einstellungen zu aktivieren:

# sysctl -p 

Überprüfen Sie Ihr System erneut

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

Jetzt sollte "1" bedeuten, dass IPv6 auf Ihrem System deaktiviert wurde.

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

NGRhodes
quelle
7

Ich denke, Ihr Ansatz ist so gültig wie er ist. Sie können die Einstellungen pro Schnittstelle verwenden, wenn Sie die Einstellungen nicht für jede Schnittstelle ändern möchten, znet.ipv6.conf.eth0.disable_ipv6

Ich würde nicht empfehlen, etwas anderes anzufassen.

freddyb
quelle
3

So deaktivieren Sie IPv6 in Ubuntu 11.04

Erstens: Ein oder Aus, probieren Sie es aus

$ ifconfig -a

eth0      Link encap:Ethernet  HWaddr 
          inet addr:  Bcast:  Mask:
          **inet6** addr: fe80::210:f3ff:fe21:722a/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:982 errors:0 dropped:0 overruns:0 frame:0
          TX packets:943 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:800461 (800.4 KB)  TX bytes:144524 (144.5 KB)
          Interrupt:20 Memory:f7d00000-f7d20000 

eth1      Link encap:Ethernet  HWaddr  
          UP BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)
          Interrupt:16 Memory:f7c00000-f7c20000 

lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          **inet6** addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:20 errors:0 dropped:0 overruns:0 frame:0
          TX packets:20 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:1200 (1.2 KB)  TX bytes:1200 (1.2 KB)

Zweitens, Ausschalten, habe ich die Linie wie folgt modifiziert und den Grub geflickt

$ grep ipv6 /etc/default/grub

GRUB_CMDLINE_LINUX_DEFAULT="ipv6.disable=1 quiet splash"

$ update-grub
Generating grub.cfg ...
Found linux image: /boot/vmlinuz-2.6.38-11-generic-pae
Found initrd image: /boot/initrd.img-2.6.38-11-generic-pae
Found memtest86+ image: /boot/memtest86+.bin
done
fossfreedom
quelle
2
Diese Antwort weist den Linux-Kernel an, IPv6 während des Startvorgangs überhaupt nicht zu unterstützen. Obwohl dies in Ordnung ist, wollte ich betonen, dass es keine Möglichkeit gibt, ohne einen Neustart wieder zu aktivieren
Freddyb
1
Verwenden Sie:$ ip addr
danger89