Do you live in a censored country where DPI is a common practice and internet blackout is a real thing ?!
DNSpirit is a cross-platform DNS scanner designed to help users facing internet restrictions discover publicly accessible DNS resolvers. By finding alternative A-record resolvers for specific domains, it enables access to uncensored information.
This project carries personal significance, inspired by Crown Prince Reza Pahlavi's call for national unity, and aims to support access to uncensored information.
This tool performs network scanning operations. Users are solely responsible for complying with all applicable laws and regulations. By using DNSpirit, you acknowledge that:
- You only scan networks and IP ranges you own or have explicit permission to scan
- You understand and accept all legal and ethical implications
- The developer is not responsible for any misuse, illegal activities, or consequences
For detailed information, please read SECURITY.md.
- Cross-platform support: Works on Windows and Linux (AMD64 architecture)
- Open-source license: Released under the permissive MIT license
- Domain scanning: Searches for publicly accessible A-records of user-specified domains (e.g.,
google.com) - User-friendly interface: Simple, fast GUI for domain input and result viewing
- Large IP pool: Scans over 10 million Iranian IPs for available public DNS resolvers
- Python: 3.12 or higher (for source installation)
- OS: Windows 10+ or Linux (AMD64 architecture)
- RAM: Recommended 4GB+ (depending on number of concurrent workers)
- Download the
.exefile from the Releases page - Run the executable directly — no setup required
- Download the binary file from the Releases page, or build from source:
git clone https://github.com/spiritofthenight/DNSpirit.git
cd DNSpirit
python3 -m venv myvenv
source myvenv/bin/activate
pip install -r requirements.txt- Run with Python:
python3 DNSpirit.pyOr compile (recommended):
pyinstaller DNSpirit.spec
cd dist
./DNSpirit- Launch the application
- Enter the desired domain name in the input field
- For faster results, click "Shuffle", then "Start"
- The tool scans 10 million+ IPs in Iran and returns available public DNS resolvers that provide A-records for the domain
- Use these resolvers
- Start: Begin scanning with the entered domain
- Pause: Pause the current scan
- Resume: Resume a paused scan
- Shuffle: Randomize the order of IP scanning for varied results
- Stop: Stop the current scan and exit
- Save Results: Save found resolvers to a timestamped file
If you encounter issues or have suggestions, please open an issue in the Issue Tracker.
Contributions are not being accepted at this time, but feedback is always welcome.
This project is licensed under the MIT License. See the LICENSE file for details.
آیا در کشوری سانسور شده زندگی میکنید که DPI یک رویه رایج و قطعی اینترنت یک واقعیت است؟ پس همین الان به یک اسکنر DNS قدرتمند نیاز دارید، پس نگران نباشید، همین الان این ابزار را دانلود کنید!
DNSpirit یک اسکنر چندسکویی DNS است که به کاربرانِ مواجه با محدودیتهای اینترنت کمک میکند تا ریزولورهای عمومی و قابلدسترسی را پیدا کنند. با یافتن رکوردهای A جایگزین برای دامنههای خاص، این ابزار امکان دسترسی به اطلاعات بدون سانسور را فراهم میکند.
این پروژه برای من اهمیت شخصی دارد؛ الهام گرفته از فراخوان شاهزاده رضا پهلوی برای وحدت ملی است و هدف آن کمک به دسترسی به اطلاعات بدون سانسور است.
این ابزار عملیات اسکن شبکه را انجام میدهد. کاربران تنها مسئول رعایت تمام قوانین و مقررات قابلاجرا در حوزهی قضایی خود هستند. با استفاده از DNSpirit، شما تأیید میکنید که:
- فقط شبکهها و محدودههای IP را اسکن میکنید که مالک آن هستید یا اجازه صریح دارید
- تمام پیامدهای قانونی و اخلاقی را درک و پذیرفتهاید
- توسعهدهنده مسئول هیچ سوءاستفاده، فعالیتهای غیرقانونی یا پیامدها نیست
برای اطلاعات دقیقتر، لطفاً SECURITY.md را بخوانید.
- پشتیبانی چندسکویی: روی ویندوز و لینوکس (معماری AMD64) کار میکند
- مجوز متنباز: تحت مجوز مجاز MIT منتشر شده است
- اسکن دامنه: رکوردهای A عمومی و قابلدسترسی دامنههای مشخصشده توسط کاربر را جستجو میکند (مثلاً
google.com) - رابط کاربرپسند: رابط گرافیکی ساده و سریع برای وارد کردن دامنه و مشاهده نتایج
- استخر بزرگ IP: بیش از ۱۰ میلیون IP ایرانی را برای پیدا کردن DNS عمومی در دسترس اسکن میکند
- Python: 3.12 یا بالاتر (برای نصب از منبع)
- سیستم عامل: ویندوز ۱۰+ یا لینوکس (معماری AMD64)
- حافظه RAM: توصیه شده ۴ گیگابایت+ (بسته به تعداد workerهای همزمان)
- فایل
.exeرا از صفحه Releases دانلود کنید - فایل اجرایی را مستقیم اجرا کنید — نیازی به نصب نیست
- فایل باینری را از صفحه Releases دانلود کنید یا از منبع بسازید:
git clone https://github.com/spiritofthenight/DNSpirit.git
cd DNSpirit
python3 -m venv myvenv
source myvenv/bin/activate
pip install -r requirements.txt- با Python اجرا کنید:
python3 DNSpirit.pyیا کامپایل کنید (توصیه شده):
pyinstaller DNSpirit.spec
cd dist
./DNSpirit- برنامه را راهاندازی کنید
- نام دامنه مورد نظر را در فیلد ورودی وارد کنید
- برای نتایج سریعتر، روی "Shuffle" کلیک کنید، سپس روی "Start"
- ابزار ۱۰ میلیون+ IP در ایران را اسکن میکند و ریزولورهای DNS عمومی را برمیگرداند
- از این ریزولورها استفاده کنید
- Start: شروع اسکن با دامنه وارد شده
- Pause: توقف موقت اسکن فعلی
- Resume: ازسرگیری اسکن متوقفشده
- Shuffle: تصادفیسازی ترتیب اسکن IP برای نتایج متنوع
- Stop: توقف اسکن و خروج
- Save Results: ذخیره ریزولورهای یافتشده در فایل با مهرزمان
اگر با مشکلی مواجه شوید یا پیشنهادی داشته باشید، لطفاً یک issue در Issue Tracker باز کنید.
در حال حاضر از مشارکتهای خارجی استقبال نمیکنیم، اما بازخورد همیشه خوشآمد است.
این پروژه تحت مجوز MIT منتشر شده است. برای جزئیات بیشتر فایل LICENSE را ببینید。