Comment désactiver IPv6 de manière permanente?

41

Comment pouvons-nous désactiver le système IPv6 via les commandes de terminal?

J'ai lu l'édition /etc/modprobe.d/aliases et remplacer:

alias net-pf-10 ipv6

avec:

alias net-pf-10 off
alias ipv6 off

Cette application est-elle sûre et désactive-t-elle définitivement ipv6 lors des redémarrages?

    
posée Tinfoilhats 18.06.2013 - 01:55
la source

5 réponses

54

J'ai désactivé IPv6 une fois en insérant les lignes suivantes dans /etc/sysctl.conf:

net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
net.ipv6.conf.lo.disable_ipv6 = 1
    
réponse donnée Eric Carvalho 18.06.2013 - 02:01
la source
41

Si votre PC ne charge pas /etc/sysctl.conf au démarrage (ce qui est le cas pour moi), il est nécessaire de désactiver IPv6 à partir de grub. Le noyau Linux a une option de démarrage nommée "ipv6.disable = 1" qui désactive IPv6 du démarrage.

Pour éditer les options de démarrage, éditez "/ etc / default / grub" avec n'importe quel éditeur de texte en tant qu'utilisateur root:

sudo nano /etc/default/grub

Trouvez la ligne contenant "GRUB_CMDLINE_LINUX_DEFAULT":

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"

Ajoutez "ipv6.disable = 1" à l'option de démarrage, puis enregistrez votre fichier grub:

GRUB_CMDLINE_LINUX_DEFAULT="ipv6.disable=1 quiet splash"

Enfin, mettez à jour grub:

sudo update-grub
    
réponse donnée NullNoname 27.08.2013 - 05:36
la source
4
La réponse de Carvalho, y compris le commentaire sur le fait de devoir exécuter sudo sysctl -P , m'a le plus aidé.

Cependant, dans mon cas au moins:

net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.<mydevice>.disable_ipv6 = 1

et il semble que la deuxième ligne était nécessaire.

Peut-être que cela est dû au fait que j'utilise le TP-Link Archer T2U, pour lequel je devais créer un pilote à partir des sources.
Mon hypothèse est que <mydevice> ne compte pas comme l'un des " all ".
En résumé, si vous avez ajouté un pilote de réseau personnalisé, net.ipv6.conf.all.disable_ipv6 = 1 risque de ne pas être suffisant pour désactiver le réseau IPv6.

Je dois admettre que je n'ai pas essayé la ligne
net.ipv6.conf.default.disable_ipv6 = 1

    
réponse donnée polynomial_donut 10.09.2015 - 01:19
la source
4

Voici comment vérifier si ipv6 est activé sur votre ordinateur

test -f /proc/net/if_inet6 && echo "Running kernel is IPv6 ready"

Si vous voyez

Running kernel is IPv6 ready

il est activé.

Si vous ne voyez aucune sortie, ce n’est pas le cas.

Pour désactiver ipv6 si les autres réponses sur cette page ne fonctionnent pas pour vous, blacklist ipv6 all-together. Pour ce faire, utilisez la commande suivante:

echo 'blacklist ipv6' | sudo tee -a '/etc/modprobe.d/blacklist.local' >/dev/null 

Cela pourrait aussi aider:

echo 'install ipv6 /bin/true' | sudo tee -a '/etc/modprobe.d/blacklist.local' >/dev/null

Redémarrez pour que les modifications prennent effet. Pour vérifier si elle est activée après le démarrage, exécutez à nouveau cette commande:

test -f /proc/net/if_inet6 && echo "Running kernel is IPv6 ready"

Il ne devrait y avoir aucune sortie.

Cliquez ici pour savoir comment désactiver IPV6 au démarrage.

    
réponse donnée mchid 18.07.2014 - 15:18
la source
2

Si vous utilisez une version moderne (je suis sur 16.04 LTS) d'Ubuntu, vous pouvez utiliser cette solution ordonnée:

Créer /etc/sysctl.d/60-ipv6-disable.conf contenant le texte suivant:

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

Exécuter service procps start

    
réponse donnée user10550 19.09.2017 - 16:10
la source

Lire d'autres questions sur les étiquettes