2012年6月16日土曜日

CentOS6.2における本当のIPv6無効化設定は?

べき論はともかく、LinixでIPv6を無効化したい人は多いらしく、そのための設定内容を記したブログの記事も多い。CentOS6の場合は大体以下の内容になっている。

  1. ファイル/etc/sysconfig/networkに「NETWORKING_IPV6=no」を追記(場合によっては「IPV6INIT=no」も
  2. ファイル /etc/modprobe.d/disable-ipv6.confを作成し「options ipv6 disable=1」を記述(/etc/modprobe.d直下ならファイル名不問、「alias ipv6 off」と「alias net-pf-10 off」を追記する場合も)
  3. サービス ip6tables の停止
ただ、私のCentOS6.2on VirtualBoxの環境では、上述の設定でIPv6は無効にならず、 ifconfigの結果にinet6が表示されていた。lsmodで確認してもipv6がロードされている。ナゼ???
(ちなみに「install ipv6 /sbin/modprobe -n -i ipv6」も試してみたけど駄目だった)



そこで以前、Ubuntuを使っていた時に調べた、Ubuntu 10.04 LTSにおけるIPv6無効化方法(ファイル/etc/sysctl.confに以下を追記)をCentOSに試したらifconfigからinet6の記述は消えた。
  • net.ipv6.conf.all.disable_ipv6 = 1
  • net.ipv6.conf.default.disable_ipv6 = 1
ただ、これで問題がないかというとそうは問屋が卸さなくて、lsmodで確認するとipv6はロード済みになっている。

いったい本当の設定は何なんだろう。 

追記
最近、さくらのVPSを新たに借りたので、設定してみたら何の問題もなく無効化出来た。VirtualBox固有の問題らしい。。。