You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
@@ -193,6 +193,7 @@ TUI شما را قدم به قدم راهنمایی میکند:
193
193
-**Skip Ping** — رد کردن تست ping (مفید اگر شبکه شما ICMP را بلاک میکند)
194
194
-**Skip NXDOMAIN** — رد کردن تست تشخیص هایجک DNS
195
195
-**EDNS Check** — تست پشتیبانی EDNS0 (مهم برای سرعت تانل)
196
+
-**EDNS Size** — سایز بافر EDNS0 به بایت (پیشفرض: 1232). بزرگتر = سرعت بیشتر تانل. اگر فرگمنتیشن دارید، کمترش کنید (مثلاً 900)
196
197
197
198
**بخش E2E (اختیاری):**
198
199
-**E2E Testing** — به صورت پیشفرض خاموش است. وقتی روشن کنید:
@@ -335,7 +336,9 @@ go build -o findns.exe ./cmd
335
336
336
337
## 3. دریافت لیست Resolverها (fetch)
337
338
338
-
قبل از اسکن، باید لیست resolver داشته باشید. دستور fetch به صورت خودکار از منابع عمومی دانلود میکند.
339
+
دستور fetch به صورت خودکار از منابع عمومی دانلود میکند. اگر دانلود شکست بخورد (مثلاً GitHub فیلتر باشد)، به صورت خودکار از resolverهای داخلی استفاده میکند.
340
+
341
+
> **نکته:** اگر فقط میخواهید اسکن کنید، دیگر نیازی به `fetch` نیست! `findns scan --domain t.example.com` بدون `-i` خودکار resolverهای ایرانی داخلی را بارگذاری میکند.
این حالت بررسی میکند resolver زنده، فعال و بدون هایجک است. (برای رد کردن nxdomain از `--skip-nxdomain` استفاده کنید)
719
722
723
+
> **نکته:**`-i` و `-o` اختیاری هستند. بدون `-i` از 7,800+ resolver ایرانی داخلی استفاده میشود. بدون `-o` نتایج در `results.json` ذخیره میشود. فایل `results_ips.txt` هم خودکار ساخته میشود.
> **نکته مهم:** وقتی `--domain` تنظیم شود، مرحله `resolve` ساده (رکورد A برای google.com) رد میشود — دامنههای تانل رکورد A ندارند. findns مستقیم به `resolve/tunnel` میرود.
731
738
732
-
> **نکته:**برای اضافه کردن تست EDNS payload size از فلگ `--edns` استفاده کنید. با این فلگ: `ping -> resolve -> nxdomain -> edns -> resolve/tunnel`
739
+
> برای اضافه کردن تست EDNS payload size از فلگ `--edns` استفاده کنید. با این فلگ: `ping -> nxdomain -> edns -> resolve/tunnel`
**3. nxdomain** — آیا resolver جواب جعلی میدهد (hijack)؟ یک دامنه تصادفی غیرموجود (مثل `nxd-abc123.invalid`) را کوئری میکند. resolver سالم باید NXDOMAIN برگرداند. resolver هایجکشده جواب NOERROR با آیپی جعلی برمیگرداند.
**4. edns** — resolver چه سایز payload DNS را پشتیبانی میکند؟ سایزهای 512, 900 و 1232 بایت تست میشود. هرچه بزرگتر = تانل سریعتر.
746
-
- متریک: `edns_max` (بزرگترین سایز: 512, 900, یا 1232)
752
+
**4. edns** — resolver چه سایز payload DNS را پشتیبانی میکند؟ سایزهای مختلف تا مقدار `--edns-size` (پیشفرض 1232) تست میشود. هرچه بزرگتر = تانل سریعتر.
753
+
- متریک: `edns_max` (بزرگترین سایز payload کارآمد به بایت)
754
+
- با `--edns-size 4096` سایزهای بزرگتر هم تست میشوند
747
755
748
756
**5. resolve/tunnel** — آیا resolver دامنه تانل شما را میبیند؟ NS record و glue A record دامنه تانل را بررسی میکند. اگر resolver نتواند دامنه تانل را resolve کند، تانل کار نمیکند.
نیازمند: `dnstt-client` و `curl` در PATH. این مرحله واقعاً dnstt-client را اجرا میکند، یک تانل SOCKS میسازد و با curl از طریق آن تانل یک صفحه وب را باز میکند.
-**passed:** لیست resolverهای موفق با متریکها (مرتب شده بر اساس عملکرد)
1421
1438
-**failed:** لیست resolverهای ناموفق
1422
1439
1440
+
**فایل `_ips.txt`:** کنار فایل JSON، یک فایل `_ips.txt` هم خودکار ساخته میشود (مثلاً `results_ips.txt`). این فایل فقط شامل آیپیهای موفق است (هر خط یک آیپی) — برای استفاده مستقیم در اسکریپتها و ابزارهای دیگر.
-`4096`: اگر شبکه اجازه بدهد — با `--edns-size 4096` تست کنید
1621
1657
1622
-
resolverهایی با `edns_max=1232`بهترین انتخاب هستند.
1658
+
resolverهایی با `edns_max` بالاتر بهترین انتخاب هستند. با `--edns-size` میتوانید سایز بافر را تغییر دهید — اگر در شبکه شما فرگمنتیشن اتفاق میافتد، مقدار کمتری (مثلاً 900) تنظیم کنید.
1623
1659
1624
1660
**نکته 6: هایجک چیست و چرا مهم است؟**
1625
1661
بعضی ISPها و resolverها وقتی دامنهای وجود ندارد، به جای NXDOMAIN شما را به صفحه تبلیغاتی یا صفحه خطای خودشان هدایت میکنند. این resolverها ممکن است تانل DNS را خراب کنند.
@@ -1651,4 +1687,13 @@ ping نیاز به دسترسی خاص دارد: `sudo findns scan ...` یا ا
1651
1687
1652
1688
> پیشنهاد: اول UDP امتحان کنید. اگر کار نکرد، DoH بزنید.
1653
1689
1690
+
**نکته 11: حالت آفلاین (بدون اینترنت)**
1691
+
findns به صورت کامل آفلاین کار میکند:
1692
+
- بدون `-i`: از 7,800+ resolver ایرانی داخلی استفاده میشود
1693
+
- بدون `-o`: نتایج در `results.json` ذخیره میشود
1694
+
- فایل `_ips.txt` خودکار ساخته میشود
1695
+
-`fetch` اگر دانلود شکست بخورد، خودکار از لیست داخلی استفاده میکند
0 commit comments