Skip to main content

IPv6の無効化

教科書通りにLinuxをインストールするとIPv6が有効になります。IPv4とIPv6が同時に有効 (デュアルスタック) だとIPv6が優先されます。 DNSサーバの名前解決のときにIPv6が優先されることで、不具合が発生する可能性があります。

IPv6を無効

/etc/sysctl.d/99-disable-ipv6.confファイルを新規に作成します。先頭の数字を除きファイル名は任意の名前にできます。

sudo vi /etc/sysctl.d/99-disable-ipv6.conf

ファイルに次の内容を記述します。

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

設定を反映させます。

sudo sysctl --system

IPv6が無効になっいていることを確認します。次のコマンドで何も表示されなければ無効になっています。

ip a | grep inet6
tip

GRUBの設定ファイルを修正して、カーネルイメージ作成することで、カーネルレベルでIPv6を無効化することもできます。

BIND (DNS Server) でIPv6を無効

名前解決で使用するDNSサーバBindの設定を変更します。 /etc/sysconfig/namedファイルを編集します。

sudo vi /etc/sysconfig/named

/etc/sysconfig/namedの最後に次の設定を追加します。

OPTIONS="-4"

bindを再起動します。

sudo systemctl restart named-chroot

Postfix (SMTP Server) でIPv6を無効

メール配送で使用するメールサーバPostfixの設定を変更します。 /etc/postfix/main.cfファイルを修正します。

sudo vi /etc/postfix/main.cf

プロトコルにipv4を指定します。

inet_protocols = ipv4

Dovecot (IMAP Server) でIPv6を無効

メール受信で使用するメールサーバDovecotの設定を変更します。 /etc/dovecot/dovecot.confファイルを修正します。

sudo vi /etc/dovecot/dovecot.conf

リッスンするアドレスにIPv4のアドレス (すべてを意味する0.0.0.0) を設定します。

listen = 0.0.0.0