NetworkManagerエラー「platform-linux: do-add-ip6-address~failure 13 (Permission denied)」

centos_logo Linux
centos_logo

platform-linux: do-add-ip6-address[2: fe80::1c00:1cff:fe00:xxx]: failure 13 (Permission denied)のエラーについて

/var/log/messagesに下記のエラーが上がっていると、Zabbixが検知しました。NetworkManagerのステータスを確認すると同様の警告が表示されています

・/var/log/messages
<warn>  [1762064682.2475] platform-linux: do-add-ip6-address[2: fe80::1c00:1cff:fe00:xxx]: failure 13 (Permission denied)

このメッセージですが、「NetworkManagerがIPv6アドレス(リンクローカルアドレス fe80::…)を設定しようとしたが、OS(カーネル)からPermission denied(権限拒否)を受けた」という意味です。
IPv6周りを無効化した際の設定変更が原因で起きやすい事象です

sysctlの設定の確認

まずは、sysctlなどでIPv6が完全に無効化されているか確認します

$ sudo vim /etc/sysctl.conf
net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1

「1」になっている場合は、IPv6は無効になっています。この設定の意味は以下となります

  • net.ipv6.conf.all.disable_ipv6
    すでに存在する全インターフェース に対してIPv6を有効/無効にします。0だとIPv6を有効で、1だと無効です
  • net.ipv6.conf.default.disable_ipv6
    これから新しく作成されるネットワークインターフェース に対するデフォルト設定です。0だとIPv6を有効で、1だと無効です

以前に、IPv6のICMP(Ping)でソースルーティング(Source Routing)を含む不正なアクセスがあり、その関係でIPv6の設定を変更しました。

Linuxカーネルは、ソースルーティング(Source Routing)をデフォルトで拒否する設定なので、IPv6を無効にする必要がなかったのですが、無効化にして解除を忘れていたようです

sysctl のIPv6を有効にする

別サーバーでIPv6でのSYNフラッド攻撃を受けていたので、このサーバーでもIPv6を無効化にしてそのままだったようです。

Apache等のIPv6を無効化しているので、NetworkManagerではIPv6にアクセスを許可出来る設定に変更します

# IPv6の設定を有効にします
$ sudo vim /etc/sysctl.conf
net.ipv6.conf.all.disable_ipv6 = 0
net.ipv6.conf.default.disable_ipv6 = 0

# 設定を反映します
$ sudo sysctl -p

NetworkManagerを再起動します。再起動後にログの出力が停止していれば問題ありません

$ sudo systemctl restart NetworkManager

Apache、NginxでIPv6を無効化した場合は、「IPv6を無効にする[OS,Apache,nginx]」を参考にして下さい」

スポンサーリンク
スポンサーリンク
スポンサーリンク
スポンサーリンク
Linux
スポンサーリンク
シェアする
adminをフォローする
タイトルとURLをコピーしました