Skip to content

Commit 0bac386

Browse files
committed
Add Windows guide with binary download and build instructions
1 parent de0c95e commit 0bac386

1 file changed

Lines changed: 138 additions & 0 deletions

File tree

README.md

Lines changed: 138 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -86,6 +86,69 @@ chmod +x findns-linux-amd64
8686

8787
---
8888

89+
## 🪟 Windows Guide
90+
91+
Windows is fully supported. Two ways to get started:
92+
93+
### Option 1: Download Binary (Easiest)
94+
95+
1. Go to the [Releases](https://github.com/SamNet-dev/findns/releases) page
96+
2. Download `findns-windows-amd64.exe`
97+
3. Rename it to `findns.exe` (optional, for convenience)
98+
4. Open **cmd** or **PowerShell** in the same folder
99+
5. Run:
100+
101+
```powershell
102+
.\findns.exe --help
103+
```
104+
105+
> No Go installation needed — just download and run.
106+
107+
### Option 2: Build from Source
108+
109+
Requires **Go 1.24+** installed from [go.dev/dl](https://go.dev/dl/).
110+
111+
```powershell
112+
git clone https://github.com/SamNet-dev/findns.git
113+
cd findns
114+
go build -o findns.exe ./cmd
115+
```
116+
117+
### Run
118+
119+
Use `.\findns.exe` instead of `./scanner` in all commands:
120+
121+
```powershell
122+
# Fetch resolvers
123+
.\findns.exe fetch -o resolvers.txt
124+
125+
# Full scan
126+
.\findns.exe scan -i resolvers.txt -o results.json --domain t.example.com
127+
128+
# With e2e test
129+
.\findns.exe scan -i resolvers.txt -o results.json ^
130+
--domain t.example.com --pubkey <hex-pubkey>
131+
```
132+
133+
> **Tip:** In PowerShell, use backtick `` ` `` for line continuation instead of `^`.
134+
135+
### Prerequisites
136+
137+
- **curl** — included by default in Windows 10/11
138+
- **dnstt-client.exe** — place next to `findns.exe` or in a folder in your `PATH` (only for e2e DNSTT tests)
139+
- **slipstream-client.exe** — same as above (only for e2e Slipstream tests)
140+
141+
### Common Issues
142+
143+
| Issue | Fix |
144+
|-------|-----|
145+
| `ping` shows 0% loss but scan fails | Run as **Administrator** — Windows ICMP requires elevated privileges |
146+
| `dnstt-client` not found | Place `dnstt-client.exe` next to `findns.exe` or add its folder to PATH |
147+
| PowerShell blocks execution | Use `cmd.exe` or run `Set-ExecutionPolicy RemoteSigned -Scope CurrentUser` |
148+
| Long commands break | Use backtick `` ` `` (PowerShell) or `^` (cmd) for line continuation |
149+
150+
---
151+
89152
## 🚀 Quick Start
90153

91154
### 1️⃣ Get Resolver Lists
@@ -577,6 +640,81 @@ go install github.com/SamNet-dev/findns/cmd@latest
577640

578641
---
579642

643+
## 🪟 راهنمای ویندوز
644+
645+
ویندوز به طور کامل پشتیبانی می‌شود. دو روش برای شروع:
646+
647+
### روش ۱: دانلود باینری (ساده‌ترین)
648+
649+
1. به صفحه [Releases](https://github.com/SamNet-dev/findns/releases) بروید
650+
2. فایل `findns-windows-amd64.exe` را دانلود کنید
651+
3. نام آن را به `findns.exe` تغییر دهید (اختیاری)
652+
4. **cmd** یا **PowerShell** را در همان پوشه باز کنید
653+
5. اجرا کنید:
654+
655+
</div>
656+
657+
```powershell
658+
.\findns.exe --help
659+
```
660+
661+
<div dir="rtl">
662+
663+
> نیازی به نصب Go نیست — فقط دانلود و اجرا کنید.
664+
665+
### روش ۲: بیلد از سورس
666+
667+
نیاز به **Go 1.24+** از [go.dev/dl](https://go.dev/dl/) دارد.
668+
669+
</div>
670+
671+
```powershell
672+
git clone https://github.com/SamNet-dev/findns.git
673+
cd findns
674+
go build -o findns.exe ./cmd
675+
```
676+
677+
<div dir="rtl">
678+
679+
### اجرا
680+
681+
در تمام دستورات به جای `./scanner` از `.\findns.exe` استفاده کنید:
682+
683+
</div>
684+
685+
```powershell
686+
# دریافت لیست resolverها
687+
.\findns.exe fetch -o resolvers.txt
688+
689+
# اسکن کامل
690+
.\findns.exe scan -i resolvers.txt -o results.json --domain t.example.com
691+
692+
# با تست e2e
693+
.\findns.exe scan -i resolvers.txt -o results.json ^
694+
--domain t.example.com --pubkey <hex-pubkey>
695+
```
696+
697+
<div dir="rtl">
698+
699+
> **نکته:** در PowerShell از بک‌تیک `` ` `` برای ادامه خط استفاده کنید (به جای `^`).
700+
701+
### پیش‌نیازها
702+
703+
- **curl** — در ویندوز 10/11 به صورت پیش‌فرض نصب است
704+
- **dnstt-client.exe** — کنار `findns.exe` قرار دهید یا در PATH اضافه کنید (فقط برای تست e2e DNSTT)
705+
- **slipstream-client.exe** — مثل بالا (فقط برای تست e2e Slipstream)
706+
707+
### مشکلات رایج
708+
709+
| مشکل | راه حل |
710+
|------|--------|
711+
| `ping` نشان می‌دهد 0% loss ولی اسکن فیل می‌شود | به عنوان **Administrator** اجرا کنید — ICMP در ویندوز نیاز به دسترسی بالا دارد |
712+
| `dnstt-client` پیدا نمی‌شود | فایل `dnstt-client.exe` را کنار `findns.exe` قرار دهید یا پوشه‌اش را به PATH اضافه کنید |
713+
| PowerShell اجرا را بلاک می‌کند | از `cmd.exe` استفاده کنید یا `Set-ExecutionPolicy RemoteSigned -Scope CurrentUser` را اجرا کنید |
714+
| دستورات طولانی خطا می‌دهند | از بک‌تیک `` ` `` (PowerShell) یا `^` (cmd) برای ادامه خط استفاده کنید |
715+
716+
---
717+
580718
## 🚀 شروع سریع
581719

582720
### 1️⃣ دریافت لیست Resolverها

0 commit comments

Comments
 (0)