
最新バージョンの Advanced Tomato を実行しているルーターがあります。ドメイン名 (IP アドレスではなく) を使用してホーム ネットワーク (問題のルーターと同じネットワーク) 上のサーバーにアクセスしようとすると失敗し、ルーターのログに次の警告が表示されます。
Jun 19 20:45:13 unknown daemon.warn dnsmasq[3844]: possible DNS-rebind attack detected: <domain_name>
ルーターの DNS 再バインド保護を無効にすると、問題は解決します。DNS 再バインド保護を無効にせずにこの問題を解決する方法はありますか?
答え1
Tomato ルーターは DNS クエリを解決するために dnsmaq を使用しています (実際にはリゾルバに転送するためですが、気にしないでください)。
dnsmasq には、ご存知のとおり、保護機能が組み込まれています。アップストリーム リゾルバがプライベート IP アドレスを返すことを禁止します。ただし、--rebind-*
dnsmasq のオプションの 1 つ (man ページを参照) を使用することで、自分のユースケースに合わせてこれを修正できます。抜粋:
--rebind-localhost-ok
Exempt 127.0.0.0/8 from rebinding checks. This address range is returned by realtime black hole servers, so blocking it may disable
these services.
--rebind-domain-ok=[<domain>]|[[/<domain>/[<domain>/]
Do not detect and block dns-rebind on queries to these domains. The argument may be either a single domain, or multiple domains
surrounded by '/', like the --server syntax, eg.
--rebind-domain-ok=/domain1/domain2/domain3/
あなたの場合は、オプション--rebind-domain-ok=/domain_name/
(domain_name
ドメイン名に置き換える)を検討することをお勧めします。