完全にIPv6のデュアルスタック対応ネットワークは、CentOS6.7サーバー上のEPELからインストールされたNagios3.5.1によって監視されます。監視対象のホストはNRPEエージェントを実行します。これらのエージェントはすべて、構成行を使用して(xinetd経由ではなく)デーモンとして実行するように構成されています。
allowed_hosts=bombur.example.com
どこ bombur.example.com
は、DNSでIPv4アドレスとIPv6アドレスの両方に解決されるNagiosサーバーのFQDNです。
% Host bombur
bombur.example.com has address 192.0.2.28
bombur.example.com has IPv6 address 2001:db8:f00:ba8::28
これは、IPv6サポートがなくIPv4接続を受け入れる2.15より前のNRPEリリースを実行しているホストでは正常に機能します。ただし、IPv6をサポートするNRPE 2.15を使用するホストでは、Nagiosサーバーからの接続はログメッセージで拒否されます。
nrpe[21665]: Host 2001:db8:f00:ba8::28 is not allowed to talk to us!
どうやらallowed_hosts=<hostname>
ディレクティブは、指定されたホストのIPv4アドレスのみを許可し、IPv6アドレスは許可しません。
その控除は正しいですか?すべてのNRPEエージェント構成で数値IPv6アドレスをハードコーディングせずに、この動作を回避する方法はありますか?
NRPEが起動すると、bombur.example.com
が検索され、allowed_Host
エントリの最初の(この場合はIPv4)アドレスが使用されるようです。
これを回避する最も簡単な方法は、2つのホスト名を使用することです。たとえば、それぞれIPv4アドレスとIPv6アドレスにのみ解決されるbombur4.example.comとbombur6.example.comを作成します。
それが何らかの理由でオプションではなかった場合は、両方のIPを明示的にリストする必要があります(できれば構成管理システムを使用します)。