Repolode
pymumu

pymumu/smartdns

複数の上流DNSリゾルバーに問い合わせ、ドメインごとに最も速く応答するIPアドレスを返すローカルDNSサーバー。

スター
11,378
フォーク
1,250
未解決の Issue
322
最終コミット
6 時間前

これは何?

SmartDNSは、ローカルネットワーク上でDNSサーバーとして動作します。ローカルデバイスからの名前解決要求を受け取り、複数の上流DNSサーバーへ同時に転送します。返されたIPアドレスをネットワーク上でテストし、最も速く応答したアドレスを返します。すべての応答を返すdnsmasqのall-serversモードとは異なり、SmartDNSが返すのは最速の結果だけです。

応答速度に基づく選択に加えて、広告のフィルタリングや悪意のあるサイトのブロックに使えるドメインごとのIP上書き、ドメインサフィックスの照合、ドメインごとに異なる上流サーバーへの振り分けに対応しています。MACアドレスまたはIPアドレスに基づいてクライアントごとに異なるルールを設定できるため、ペアレンタルコントロールなどに利用できます。暗号化された上流プロトコルとしてDoT、DoH、DoQ、DoH3に対応し、SOCKS5およびHTTPプロキシ経由の問い合わせも可能です。

SmartDNSは、Raspberry Pi、OpenWrtファームウェア、ASUSルーターの標準ファームウェア、WSL、Windowsなどの一般的な環境で動作します。トラフィックの振り分けにはipsetやnftablesのセットを連携して利用でき、Webダッシュボードも備えています。

主な機能

  • 01複数の上流DNSサーバーへ並列に問い合わせ、最も速く応答するIPアドレスを返します。
  • 02上流およびクライアント向けサービスで、UDP、TCP、DoT、DoH、DoQ、DoH3に対応します。
  • 03広告のフィルタリングやブロックに使える、ドメインごとのIP上書きに対応します。
  • 04MACアドレスまたはIPアドレスに基づいて、クライアントごとに異なる問い合わせルールを適用します。
  • 05ipsetおよびnftablesと連携し、ドメインに基づくトラフィックの振り分けに対応します。
  • 06IPv4、IPv6、A/AAAAレコード、DNS64に対応します。

ユースケース

  • ホームルーターを使い、家庭や小規模オフィスのネットワークでWebサイトへのアクセスを高速化する。
  • LAN内のすべてのデバイスで、広告やトラッキング用ドメインをブロックする。
  • デバイスごとのDNSルールを使ってペアレンタルコントロールを実施する。
  • OpenWrtまたはRaspberry Pi上に、プライベートで暗号化されたDNSリゾルバーを構築する。

クイックスタート

  1. 1

    公式サイトの使用ガイドを読む

  2. 2

    同梱のスクリプト(package/build-pkg.sh)でインストール可能なパッケージをビルドする

使う前に知っておきたいこと

  • GPL-3.0ライセンスで提供されています。コピーレフト型ライセンスのため、派生作品も同じ条件でオープンソースとして公開する必要があります。
  • メインのREADMEは中国語で、READMEには直接実行できるインストールコマンドが記載されていません。そのため、セットアップには公式サイトまたはビルドスクリプトを利用します。

収録されている特集

トピック

よくある質問

smartdns とは?
複数の上流DNSリゾルバーに問い合わせ、ドメインごとに最も速く応答するIPアドレスを返すローカルDNSサーバー。 SmartDNSは、ローカルネットワーク上でDNSサーバーとして動作します。ローカルデバイスからの名前解決要求を受け取り、複数の上流DNSサーバーへ同時に転送します。返されたIPアドレスをネットワーク上でテストし、最も速く応答したアドレスを返します。すべての応答を返すdnsmasqのall-serversモードとは異なり、SmartDNSが返すのは最速の結果だけです。
smartdns は無料で使えますか?ライセンスは?
smartdns は GPL-3.0 ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
smartdns は今もメンテナンスされていますか?
活発にメンテナンス中。smartdns の最終コミットは 2026年11月6日 です。
smartdns は何に使えますか?
ホームルーターを使い、家庭や小規模オフィスのネットワークでWebサイトへのアクセスを高速化する。 LAN内のすべてのデバイスで、広告やトラッキング用ドメインをブロックする。 デバイスごとのDNSルールを使ってペアレンタルコントロールを実施する。 OpenWrtまたはRaspberry Pi上に、プライベートで暗号化されたDNSリゾルバーを構築する。
smartdns のインストール方法は?
公式サイトの使用ガイドを読む 同梱のスクリプト(package/build-pkg.sh)でインストール可能なパッケージをビルドする
smartdns はどこで入手できますか?
ソースコードとインストール手順は GitHub にあります:https://github.com/pymumu/smartdns

概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。

関連プロジェクト