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
Copy file name to clipboardExpand all lines: GUIDE.md
+45Lines changed: 45 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -33,6 +33,51 @@ findns همه اینها را به صورت خودکار تست میکند
33
33
34
34
**خیر!** findns به تنهایی تمام تستهای DNS را انجام میدهد. فقط اگر بخواهید تست واقعی تانل (e2e) انجام دهید، به dnstt-client یا slipstream-client نیاز دارید. بدون آنها هم اسکنر کامل کار میکند.
35
35
36
+
### dnstt-client چیست و چطور نصبش کنم؟
37
+
38
+
`dnstt-client` برنامه کلاینت پروژه [DNSTT](https://www.bamsoftware.com/software/dnstt/) است. این برنامه یک تانل DNS-over-UDP یا DNS-over-HTTPS درست میکند. findns از این برنامه برای **تست واقعی تانل** (e2e) استفاده میکند — یعنی واقعاً یک تانل میسازد و بررسی میکند اتصال برقرار میشود یا نه.
39
+
40
+
**نصب با Go (سادهترین روش):**
41
+
42
+
</div>
43
+
44
+
```bash
45
+
go install www.bamsoftware.com/git/dnstt.git/dnstt-client@latest
46
+
```
47
+
48
+
<divdir="rtl">
49
+
50
+
**دانلود دستی:**
51
+
52
+
از [صفحه پروژه DNSTT](https://www.bamsoftware.com/software/dnstt/) باینری آماده دانلود کنید.
53
+
54
+
**بعد از دانلود، حتماً فایل را در PATH قرار دهید:**
55
+
56
+
</div>
57
+
58
+
```bash
59
+
# لینوکس/macOS:
60
+
sudo mv dnstt-client /usr/local/bin/
61
+
sudo chmod +x /usr/local/bin/dnstt-client
62
+
63
+
# یا PATH را به پوشه فعلی اضافه کنید:
64
+
export PATH=$PATH:$(pwd)
65
+
```
66
+
67
+
<divdir="rtl">
68
+
69
+
> **نکته مهم:** فقط گذاشتن فایل کنار findns روی لینوکس **کافی نیست** مگر اینکه پوشه فعلی در PATH باشد. روی ویندوز این مشکل وجود ندارد.
70
+
71
+
### کدام resolverها برای dnstt کار میکنند؟
72
+
73
+
بدون فلگ `--pubkey` هم findns بررسی میکند کدام resolverها **قابلیت** کار با تانل DNS را دارند:
74
+
75
+
-**resolve/tunnel**: بررسی میکند resolver میتواند NS record دامنه تانل شما را ببیند
76
+
-**edns**: بررسی میکند سایز payload بزرگ (1232 بایت) پشتیبانی میشود
77
+
-**nxdomain**: بررسی میکند resolver جواب جعلی نمیدهد
78
+
79
+
resolverهایی که همه این مراحل را پاس کنند، **با احتمال بالا** برای dnstt کار میکنند. فلگ `--pubkey` فقط تأیید نهایی (e2e) را اضافه میکند.
Copy file name to clipboardExpand all lines: README.md
+14-6Lines changed: 14 additions & 6 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -80,9 +80,13 @@ chmod +x findns-linux-amd64
80
80
### Requirements
81
81
82
82
-**Go 1.24+** for building from source
83
-
-**dnstt-client** in PATH (for e2e DNSTT tests)
84
-
-**slipstream-client** in PATH (for e2e Slipstream tests)
85
-
-**curl** in PATH (for e2e connectivity verification)
83
+
-**dnstt-client** — only for e2e tunnel tests (`--pubkey`). Install: `go install www.bamsoftware.com/git/dnstt.git/dnstt-client@latest`
84
+
-**slipstream-client** — only for e2e Slipstream tests (`--cert`)
85
+
-**curl** — for e2e connectivity verification
86
+
87
+
> **Important:** On Linux, you must place `dnstt-client` in PATH (e.g. `/usr/local/bin/`). Just putting it next to the scanner is not enough. Run: `sudo mv dnstt-client /usr/local/bin/ && sudo chmod +x /usr/local/bin/dnstt-client`
88
+
>
89
+
> Without `--pubkey`, the scanner still finds resolvers compatible with DNS tunneling — it tests ping, resolve, NXDOMAIN, EDNS, and tunnel delegation without needing dnstt-client.
86
90
87
91
---
88
92
@@ -634,9 +638,13 @@ go install github.com/SamNet-dev/findns/cmd@latest
634
638
### پیشنیازها
635
639
636
640
-**Go 1.24+** برای بیلد از سورس
637
-
-**dnstt-client** در PATH (برای تست e2e DNSTT)
638
-
-**slipstream-client** در PATH (برای تست e2e Slipstream)
639
-
-**curl** در PATH (برای تأیید اتصال e2e)
641
+
-**dnstt-client** — فقط برای تست e2e تانل (`--pubkey`). نصب: `go install www.bamsoftware.com/git/dnstt.git/dnstt-client@latest`
642
+
-**slipstream-client** — فقط برای تست e2e Slipstream (`--cert`)
643
+
-**curl** — برای تأیید اتصال e2e
644
+
645
+
> **مهم:** در لینوکس باید `dnstt-client` را در PATH قرار دهید (مثلاً `/usr/local/bin/`). فقط گذاشتن کنار اسکنر کافی نیست. اجرا کنید: `sudo mv dnstt-client /usr/local/bin/ && sudo chmod +x /usr/local/bin/dnstt-client`
646
+
>
647
+
> بدون `--pubkey` هم اسکنر resolverهای سازگار با تانل DNS را پیدا میکند (ping, resolve, nxdomain, edns, tunnel delegation بدون نیاز به dnstt-client).
return"", fmt.Errorf("%s not found in PATH or current directory.%s\n\nIf already downloaded, either:\n 1. Move it to a folder in PATH: sudo mv %s /usr/local/bin/\n 2. Or add current directory to PATH: export PATH=$PATH:$(pwd)", name, hint, name)
0 commit comments