J'ai trouvé une solution pour apporter de la sécurité à ma connexion VPN qui ne supporte qu'IPv4: je disable IPv6 au lancement de celle-ci et je l'enable quand j'arrête celle-ci.

J'ai trouvé ce script 99-vpn-ipv6-switch à placer dans /etc/NetworkManager/dispatcher.d qui fait bien le job:
#!/bin/sh
# Network Manager Dispatcher Hook:
# enables/disables ipv6 on vpn-down/vpn-up respectively
#
# Copyright (c) 2017 ooknosi
# Apache License 2.0

# Args
INTERFACE="$1"
ACTION="$2"

case $ACTION in
    vpn-up)
    # vpn connected; disable ipv6
    sysctl -w net.ipv6.conf.all.disable_ipv6=1
    ### UNCOMMENT AND EDIT BELOW IF NECESSARY
    ## add pi-hole nameserver
    #echo -n "nameserver 192.168.1.1" | /sbin/resolvconf -a "tun0.openvpn"
    ### UNCOMMENT AND EDIT ABOVE IF NECESSARY
    ;;

    vpn-down)
    # vpn disconnected; enable ipv6
    sysctl -w net.ipv6.conf.all.disable_ipv6=0
    ### UNCOMMENT AND EDIT BELOW IF NECESSARY
    ## remove pi-hole nameserver
    #/sbin/resolvconf -d "tun0.openvpn"
    ### UNCOMMENT AND EDIT ABOVE IF NECESSARY
    ;;
esac

exit 0
La commande
$ ip a
et une visite du site https://test-ipv6.com/ permettent de s'assurer que ce script fait bien son job.
un mois plus tard
J'ai tombé à la même situation, et j'ai cherché sur les forums, j'ai découvert qu'il n'y avait pas de VPN qui fournissent une protection contre les fuites ipv6, suaf ***VPN. Vous pouvez lire ici : [url]https://www..com/features/ipv6-leak-protection[/url]

EDIT MODERATION: pas de pub, merci. Et pas de necrobump.
4 mois plus tard
Bonjour messieurs

Je suis tombé par hasard sur ce post car j'ai également le même problème que toi Didierg :
Mon Fai est Orange.
Je souhaite tout simplement profiter de mon offre vpn sur linux Mint (je viens de windows 10 mais j'expérimente linux !).
J'ai installé les fichiers de configs .ovpn, ainsi que le certificat, network manager avec intégration open vpn etc.
Je me connecte sur un serveur.
Je fais un test en me connectant sur les sites de détection d'adresse IP : adresse Ipv4 publique différente de celle d'origine, très bien. MAIS adresse ipv6 identique.

J'essaye de désactiver la gestion de l'ipv6 dans les paramètres graphiques du network manager, cela ne change rien.

J'essaye la fameuse option "N'utiliser cette connexion que pour les ressources sur ce réseau", je retente de me connecter au vpn, j'essaye les sites de détection d'adresse Ip, et la miracle, je suis enfin localisé dans le pays souhaité sans divulguer mon adresse ipv6 !!

Je vous remercie sincèrement pour votre aide, je suis tout nouveau sur linux et je me sers beaucoup de l'interface graphique.

Didierg, en lisant tout tes posts, j'ai l'impression que tu as simplement évoqué l'option "N'utiliser cette connexion que pour les ressources sur ce réseau" sans l'avoir tester.
J'ai vu que tu avais finalement trouvé une solution alternative, c'est le principal.
En tout cas cela a marché pour moi 😉

Encore merci pour votre aide,

Cordialement,

Fritzthecat
En dehors du VPN utilises tu l'ipv6 ? Si non, cf post #37
3 ans plus tard

Me revoilà avec mon script pour désactiver IPv6 quand j’active mon VPN (voir https://forums.fedora-fr.org/d/67366-openvpn-et-ipv6/41 ci-dessus)

Depuis mon système a évolué et je suis actuellement en Fedora 39.

Quand j’active mon VPN j’obtiens l’erreur SELinux suivante:

oct. 15 01:32:54 xxxxxx audit[74924]: AVC avc:  denied  { execute } for  pid=74924 comm="nm-dispatcher" name="99-vpn-ipv6-switch" dev="sda3" ino=2362164 scontext=system_u:system_r:NetworkManager_dispatcher_t:s0 tcontext=unconfined_u:object_r:user_home_t:s0 tclass=file permissive=0
oct. 15 01:32:54 xxxxxx nm-dispatcher[74913]: req:3 'vpn-up' [tun0], "/etc/NetworkManager/dispatcher.d/99-vpn-ipv6-switch": complete: failed to execute script: Failed to execute child process “/etc/NetworkManager/dispatcher.d/99-vpn-ipv6-switch” (Permission denied)
oct. 15 01:32:54 xxxxxx NetworkManager[1648]: <warn>  [1697326374.4798] dispatcher: (42) /etc/NetworkManager/dispatcher.d/99-vpn-ipv6-switch failed (exec failed): Failed to execute child process “/etc/NetworkManager/dispatcher.d/99-vpn-ipv6-switch” (Permission denied)

Si je passe SELinux en permissive avec la commande “setenforce 0” mon script fonctionne.

Les attributs de mon script sont actuellement:
-r-xr-xr-x. 1 root root 842 15 oct. 01:22 99-vpn-ipv6-switch

unconfined_u:object_r:user_home_t:s0 99-vpn-ipv6-switch

N’étant pas un expert SELinux si quelqu’un pouvait m’aider ce serait sympa.

EDIT et RESOLUTION un quart d’heure plus tard
J’avais (re)créer mon script dans mon home puis je l’avais déplacé dans /etc/NetworkManager/dispatcher.d/
En le créant dans mon home, mon fichier avait hérité des attributs SELinux de cet home.
j’ai donc fait une copie avec cp de ce script dans /etc/NetworkManager/dispatcher.d/ et cette nouvelle copie à bien les attributs hérité de /etc/NetworkManager/dispatcher.d/ et ça fonctionne.

$ ls -lZ 99-vpn-ipv6-switch
-r-xr-xr-x. 1 root root unconfined_u:object_r:NetworkManager_dispatcher_script_t:s0 842 15 oct.  02:15 99-vpn-ipv6-switch