Comment détecter si le système a IPv6 activé dans un script shell UNIX?

J’ai un script shell qui est exécuté sur différents environnements POSIX tels que Linux, Mac OSX ou même Cygwin. Le script doit détecter de manière fiable si le système donné a activé IPv6. Par exemple, je peux utiliser au moins un bouclage local IPv6 (:: 1). La question est donc de savoir comment détecter si le système a ipv6 activé dans un shell UNIX de manière compatible POSIX.

Cela peut être testé en vérifiant l’existence de /proc/net/if_inet6 comme suit:

 test -f /proc/net/if_inet6 && echo "IPv6 supported" || echo "IPv6 not supported" 

Je l’ai testé sur Ubuntu, Mint, Raspberry PI et Bash Shell sous Windows, et cela fonctionne dans tous ces environnements.