複数のサービス(Openhab、mosquittoなど)を実行するRaspberry Piがあります。各サービスは、ローカルサブドメイン(openhab.core.local、mosquitto.core.local、...)を介してローカルにアクセスできる必要があります。
もちろん、mDNSという簡単な解決策があるようです。しかし、問題は次のとおりです。
ここではmDNS検索を行います。サービス、ポート、およびローカルIPが正しく識別されます。すべてが正しいネットワーククライアントからポート80に移動します。ここで、nginx(Trefikも試みます)リバースプロキシコンテナはルーティング要求を待ちます。ただし、サービスに連絡することはできません。
FritzBoxのDNSリバインディング保護が内部ネットワークへのDNS解決の問題に答えないことがわかりました。必須ドメイン名の例外を設定しました。 (サブドメインを使用して他のいくつかの構成も試しました。)すでにmDNSエントリがある場合は、DNSサーバーの応答が必要な理由をよく理解していませんが、問題ありません。
変更なし。
したがって、クライアントはhome.pink-core.local
nginxが待っている10.0.0.40:80に移動する必要があることを知っています。サービスが実行中です。しかし、fritzboxにホワイトリストに登録されているにもかかわらず、クライアントは未解決のDNS要求を送信しているようです。少なくともサービスにアクセスできません。
原因を特定して解決するにはどうすればよいですか?
答え1
mDNSは、固定TTLが1のリンクローカルマルチキャストIPアドレス(IPv4:224.0.0.251
、IPv6:ff02::fb
、UDPポート5353)を使用するため、ルーティングされません。サービスとデバイスの宛先IPアドレスを通知するには、mDNSプロキシが必要です。
Raspberry PiまたはOrangePi Zeroで指示を見つけることができます。ここ(申し訳ありませんが、ドイツ語でのみ利用可能です。)