Procédure complète pour désactiver IPv6 sur toutes les CT Proxmox
1) Crée un script Bash
Sur le serveur :
nano /root/disable_ipv6_all_ct.sh
2) Colle ce contenu dans le fichier
#!/bin/bash
echo "Début de la désactivation IPv6 sur tous les containers..."
for ct in $(pct list | awk 'NR>1 {print $1}'); do
echo "Traitement du CT $ct"
# Vérifie et crée le fichier sysctl.conf s'il n'existe pas
pct exec $ct -- bash -c "touch /etc/sysctl.conf"
# Supprime les anciennes lignes éventuelles (évite les doublons)
pct exec $ct -- sed -i '/net\.ipv6\.conf\.all\.disable_ipv6/d' /etc/sysctl.conf
pct exec $ct -- sed -i '/net\.ipv6\.conf\.default\.disable_ipv6/d' /etc/sysctl.conf
pct exec $ct -- sed -i '/net\.ipv6\.conf\.lo\.disable_ipv6/d' /etc/sysctl.conf
# Ajoute les paramètres IPv6 désactivés
pct exec $ct -- bash -c "echo 'net.ipv6.conf.all.disable_ipv6 = 1' >> /etc/sysctl.conf"
pct exec $ct -- bash -c "echo 'net.ipv6.conf.default.disable_ipv6 = 1' >> /etc/sysctl.conf"
pct exec $ct -- bash -c "echo 'net.ipv6.conf.lo.disable_ipv6 = 1' >> /etc/sysctl.conf"
# Applique les changements immédiatement
pct exec $ct -- sysctl -p
echo "IPv6 désactivé sur CT $ct"
done
echo "Terminé sur tous les containers !"
3) Enregistre et ferme
Dans nano :Ctrl + O → Entrée → Ctrl + X
4) Donne les droits d’exécution au script
chmod +x /root/disable_ipv6_all_ct.sh
5) Lance le script
./disable_ipv6_all_ct.sh
6) Vérifie sur un container au hasard
Exemple :
pct exec 101 -- ip a | grep inet6
Si aucune ligne inet6 → IPv6 bien désactivé.