これは私の設定です:
$ ip addr
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 16436 qdisc noqueue state UNKNOWN
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope Host lo
inet 10.0.2.0/24 scope global lo
inet6 ::1/128 scope Host
valid_lft forever preferred_lft forever
'lo'は、10.0.2.0/24行が実際に最大250のバインド可能なアドレスを作成するという意味で魔法です。ほとんどのデーモンは問題なくこれらにバインドします。ただし、これは私のBIND9-configでは機能しません。
listen-on port 53 { 10.0.2.15; };
(私も「ポート53」なしで試しました)。問題は、BINDの場合、リッスンオンは「バインディングホワイトリスト」のようなものであり、すべてのインターフェイスで検出できるすべてのIPに一致することです。この場合、どのインターフェイスでも10.0.2.15が見つからないため、バインドされません。
誰かが回避策をお勧めできますか?これは私が常に物事を動かしているテストセットアップであるため、あまり多くの可動部品を含まないソリューションを好むことを指摘しておく必要があります。
少しテストした後...他のデーモンが機能しているのを観察したように、バインドが機能していないようです。 2つの回避策を確認しました。最初の回避策は、lo
にアドレスを追加して、バインドをバインドできるようにすることです。
ip addr add 10.0.2.15/32 dev lo
2つ目は、バインドがリッスンするアドレスを10.0.2.0
に変更することです。
テストの回避策として実行できることは、仮想インターフェイスlo:1を作成し、それにアドレス10.0.2.15を割り当てて起動することです。
私はあなたがそれをすることができるとは思わない。構成されたサブネット上のすべてのIPでloopback interface
応答(つまり、ping 10.0.2.15
が期待どおりに機能する)という事実は、すべて IPがバインド可能。
たとえば、127.0.0.2
にバインドして、機能するかどうかを確認してください。
@ m0ntassarが言ったように、唯一の解決策は実行していると思います。