ابزار پیدا کردن IPهای تمیز CDNهای مختلف برای Ubuntu 24.04 و Termux (اندروید ARM64)
- اسکن هزاران IP از رنجهای CDNهای مختلف
- پشتیبانی از تمام CDNهای بزرگ دنیا:
- Cloudflare — پیشفرض ابزار
- Akamai — یکی از بزرگترین CDNهای جهان
- Fastly — CDN محبوب برای سرویسهای بزرگ
- Amazon CloudFront — CDN آمازون
- Microsoft Azure CDN
- Google Cloud CDN
- BunnyCDN
- KeyCDN
- Limelight Networks
- و هر CDN دیگری که رنج IPهای آن در دسترس باشد
- دو روش اسکن پیشرفته:
- حالت Normal: تست TCPing (۴ بار) + تست سرعت دانلود
- حالت Xray: اسکن واقعی از طریق هستهی Xray با کانفیگ شخصی شما
- پشتیبانی از دو فرمت کانفیگ برای حالت Xray:
- URL (فایل
config/xray_config.txt): لینک مستقیم کانفیگ - JSON (فایل
config/xray_config.json): کانفیگ کامل Xray
- URL (فایل
- پشتیبانی از پروتکلهای VLESS، VMess، Trojan و Shadowsocks
- محاسبهی نرخ Packet Loss و میانگین تأخیر برای هر IP
- قابلیت توقف اسکن در هر لحظه با Ctrl+C و نمایش نتایج یافتشده تا آن لحظه
- نمایش مدت زمان اسکن در پایان
- ذخیرهی خودکار نتایج در فایل
clean_ips.txtو لیست ساده درclean_ips_list.txt
این روش برای اجرای پروژه روی Ubuntu 24.04 بهینه شده است:
curl -fsSL https://raw.githubusercontent.com/m-danaee/Clean-IP-Scanner/main/install.sh | bashپس از اتمام:
clean-ip-scannerدر Ubuntu این اسکریپت بهصورت خودکار:
- پیشنیازها را با
aptنصب میکند - هستهی Xray مناسب معماری لینوکس شما را دانلود میکند
- لانچر
clean-ip-scannerرا در PATH نصب میکند
این روش سریعترین و سادهترین روش برای کاربران Termux است:
pkg update && pkg upgrade -y && pkg install -y wget unzip && wget https://github.com/m-danaee/Clean-IP-Scanner/releases/latest/download/clean-ip-scanner-arm64.zip && unzip clean-ip-scanner-arm64.zip && chmod +x clean-ip-scannerپس از اتمام، ابزار را اجرا کنید:
./clean-ip-scannerمزایا:
- بسیار سریع (حدود ۳۰ ثانیه)
- بدون نیاز به نصب Go
- فایل آماده و کامپایلشده
نکته: فایلهای کانفیگ و نتایج در همان پوشهای که دستور را اجرا کردید ذخیره میشوند (معمولاً پوشهی home یعنی ~).
این روش برای کاربرانی است که میخواهند ابزار را مستقیماً از سورس کد در دستگاه خودشان بسازند (Ubuntu و Termux). یک دستور ساده:
curl -sL https://raw.githubusercontent.com/m-danaee/Clean-IP-Scanner/main/install.sh | bashپس از اتمام، از هرجایی اجرا کنید:
clean-ip-scannerمزایا:
- ۱۰۰٪ سازگار با دستگاه شما
- ساخت مستقیم روی Ubuntu/Termux
- نصب خودکار در PATH (از هر پوشهای قابل اجراست)
- دریافت خودکار هستهی Xray
معایب:
- زمان بیشتر (تا ۱۰ دقیقه)
- نیاز به نصب Golang (بهصورت خودکار انجام میگیرد)
محل نصب و فایلها:
~/Clean-IP-Scanner/ ← پوشهی اصلی برنامه
~/Clean-IP-Scanner/config/ ← پوشهی فایلهای کانفیگ
~/Clean-IP-Scanner/xray/ ← هستهی Xray
روش اول (دانلود مستقیم):
./clean-ip-scannerروش دوم (ساخت از سورس):
clean-ip-scannerپس از اجرا، منوی زیر نمایش داده میشود:
Select scan mode:
[1] Normal scan (TCP ping + speed test)
[2] Xray scan (uses Xray core with your config)
Enter 1 or 2:
عدد 1 یا 2 را تایپ کرده و Enter بزنید.
- گزینه ۱ — Normal: اسکن معمولی. بدون نیاز به هیچ تنظیمی. مناسب برای پیدا کردن سریع IPهای سالم از هر CDN.
- گزینه ۲ — Xray: اسکن با هستهی واقعی Xray. نیازمند تعریف کانفیگ شخصی است. IPهایی که پیدا میکند ۱۰۰٪ با کانفیگ شما سازگار هستند.
مرحله ۱ — تست تأخیر (Latency):
- تمام IPهای موجود در فایل
config/ip_ranges.txtتست میشوند - هر IP دقیقاً ۴ بار از طریق TCP روی پورت ۴۴۳ پینگ میشود
- نرخ Packet Loss و میانگین تأخیر برای هر IP محاسبه میشود
- نتایج بر اساس کمترین Packet Loss و سپس کمترین تأخیر مرتب میشوند
مرحله ۲ — تست سرعت دانلود:
- از بین بهترین IPهای مرحلهی اول، ۱۰ IP برتر تست دانلود میشوند
- تست از سرور رسمی Cloudflare انجام میشود (حجم تست: ۵۰ مگابایت)
مرحله ۱ — تست تأخیر با هستهی Xray:
- برای هر IP، یک کانفیگ موقت ساخته میشود که IP اسکنشده جایگزین آدرس سرور در کانفیگ شما میشود
- هستهی Xray با آن کانفیگ اجرا میشود و از طریق SOCKS داخلی، یک درخواست واقعی ارسال میشود
- این فرآیند دقیقاً مانند عملکرد یک کلاینت واقعی مبتنی بر Xray است
- اسکن با ۸ کارگر (worker) همزمان انجام میشود
مرحله ۲ — تست سرعت دانلود با هستهی Xray:
- از بین بهترین IPهای مرحلهی اول، ۱۰ IP برتر انتخاب شده و سرعت دانلود واقعی از طریق همان فرآیند Xray اندازهگیری میشود
IPها بر اساس بالاترین سرعت دانلود مرتب و نمایش داده میشوند. فایلهای زیر نیز ذخیره میگردند:
clean_ips.txt— نتایج کامل با جزئیات (تأخیر، packet loss، سرعت)clean_ips_list.txt— لیست سادهی IPها
در هر لحظه میتوانید با فشار دادن Ctrl+C اسکن را متوقف کنید. ابزار تمام IPهای سالم یافتشده تا آن لحظه را نمایش و ذخیره میکند.
=================================================
CLEAN IP SCANNER
Find the fastest clean IPs
=================================================
...:..::.::: Designed by: Anonymous :::.::..:...
Version: 3.0.0
Optimized for Iran network conditions
Press Ctrl+C at any time to stop and see results found so far.
Select scan mode:
[1] Normal scan (TCP ping + speed test)
[2] Xray scan (uses Xray core with your config)
Enter 1 or 2: 1
Start latency test (Mode: TCP, Port: 443, Range: 0 ~ 9999 ms, Packet Loss: 1.00)
5956 / 5956 [--↗--] Available: 2184 2m3s
Latency test completed: 2184 responsive IPs found
Start download speed test (Minimum speed: 0.00 MB/s, Number: 10, Queue: 10)
10 / 10 [--↘--] 1m22s
Speed test completed: 10 clean IPs found
===========================================================================
CLEAN IPs FOUND
===========================================================================
Rank IP Address Sent Received Loss Avg Delay Download Speed
---------------------------------------------------------------------------
1. 188.114.97.163 4 4 0.00 241ms 1.32 MB/s
2. 190.93.246.213 4 4 0.00 212ms 1.05 MB/s
3. 190.93.244.169 4 4 0.00 201ms 1.04 MB/s
Results saved to clean_ips.txt
Simple IP list saved to clean_ips_list.txt
========================================
Scan completed successfully!
========================================
Scan Duration : 00:03:28
قابلیت مهم: این ابزار محدود به Cloudflare نیست. با تغییر فایل
ip_ranges.txtمیتوانید IPهای هر CDN دیگری را اسکن کنید.
ابزار بهصورت پیشفرض از رنجهای رسمی Cloudflare استفاده میکند. اما شما میتوانید رنج IPهای هر CDN زیر را جایگزین کنید یا به لیست اضافه کنید:
| CDN | توضیح |
|---|---|
| Cloudflare | پیشفرض ابزار — رنجهای رسمی از cloudflare.com/ips |
| Akamai | یکی از بزرگترین CDNهای جهان |
| Fastly | CDN محبوب سرویسهای بزرگ |
| Amazon CloudFront | CDN آمازون AWS |
| Microsoft Azure CDN | CDN مایکروسافت |
| Google Cloud CDN | CDN گوگل |
| BunnyCDN | CDN اروپایی با قیمت مناسب |
| KeyCDN | CDN سوئیسی |
| Limelight Networks | CDN برای استریمینگ |
نکتهی بسیار مهم برای حالت Xray: اگر IPهای یک CDN خاص را در
ip_ranges.txtقرار دادید، کانفیگ Xray شما حتماً باید روی همان CDN تنظیم شده باشد. یعنی اگر IPهای Akamai را اسکن میکنید، سرور پروکسی شما باید روی Akamai باشد — نه Cloudflare یا CDN دیگری. در غیر این صورت هیچ IP سالمی پیدا نخواهد شد.
# روش اول (دانلود مستقیم):
nano config/ip_ranges.txt
# روش دوم (ساخت از سورس):
nano ~/Clean-IP-Scanner/config/ip_ranges.txtهر خط میتواند شامل یک IP منفرد یا یک رنج CIDR باشد:
103.21.244.0/22
103.22.200.0/22
104.16.0.0/13
188.114.96.0/20
190.93.240.0/20
197.234.240.0/22
198.41.128.0/17
در nano:
- فایل را باز کنید:
nano config/ip_ranges.txt - برای پاک کردن همه:
Ctrl+Kرا پشت سر هم فشار دهید تا فایل خالی شود - رنجهای جدید را تایپ یا paste کنید (هر رنج در یک خط)
- ذخیره:
Ctrl+O→ Enter - خروج:
Ctrl+X
نکته: ابزار رنجهای CIDR را بهطور خودکار گسترش میدهد و IPهای تکراری را حذف میکند.
توضیح مهم: در حالت Xray، شما یک کانفیگ شخصی تعریف میکنید. ابزار IPهای مختلف را در آن کانفیگ قرار میدهد و تست میکند که کدام IP با کانفیگ شما کار میکند. بنابراین کانفیگی که تعریف میکنید باید از نظر UUID، سرور، و تنظیمات معتبر باشد — تنها چیزی که ممکن است مسدود شده باشد IP آن است.
همخوانی کانفیگ با CDN انتخابی: کانفیگ Xray شما باید با CDNای که IPهای آن را در
ip_ranges.txtقرار دادهاید همخوانی داشته باشد. برای مثال:
- اگر رنج IPهای Cloudflare را اسکن میکنید ← کانفیگ شما باید روی سرور Cloudflare تنظیم شده باشد
- اگر رنج IPهای Akamai را اسکن میکنید ← کانفیگ شما باید روی سرور Akamai تنظیم شده باشد
- اگر رنج IPهای Fastly را اسکن میکنید ← کانفیگ شما باید روی سرور Fastly تنظیم شده باشد
CDN کانفیگ و CDN فایل ip_ranges.txt باید یکی باشند، در غیر این صورت هیچ IP سالمی پیدا نخواهد شد.
برای استفاده از حالت Xray باید یکی از دو فایل زیر را ویرایش کنید.
این روش برای کسانی است که لینک کانفیگ (مثلاً از اشتراک یا دوستان) دارند.
ابتدا باید به پوشهی config بروید:
روش اول (دانلود مستقیم):
ls
cd config
lsروش دوم (ساخت از سورس):
cd ~/Clean-IP-Scanner/config
lsnano xray_config.txtپنجرهی ویرایشگر nano باز میشود. محتوای پیشفرض فایل را میبینید.
پاک کردن کل محتوا و نوشتن کانفیگ جدید:
- کلیدهای
Ctrl+Kرا چند بار فشار دهید تا تمام خطوط پاک شوند - یا از میانبر
Ctrl+A(انتخاب همه) و سپسDeleteاستفاده کنید
نوشتن کانفیگ:
لینک کانفیگ خود را در فایل قرار دهید. مثال:
vless://9b8928b1-5394-4433-bf94-6116fd5656b3@example.com:443?type=ws&security=tls&host=example.com&path=%2Fproxy&sni=example.com#MyConfig
خطوطی که با
#شروع میشوند بهعنوان توضیح نادیده گرفته میشوند.
یادآوری: مطمئن شوید این کانفیگ متعلق به همان CDNای است که IPهای آن را در
ip_ranges.txtقرار دادهاید.
ذخیره و خروج از nano:
Ctrl+O→ فشار Enter (ذخیره)Ctrl+X(خروج)
پروتکلهای پشتیبانیشده: vless:// · vmess:// · trojan:// · ss://
این روش برای کسانی است که فایل کانفیگ کامل JSON دارند.
# روش اول (دانلود مستقیم):
nano config/xray_config.json
# روش دوم (ساخت از سورس):
nano ~/Clean-IP-Scanner/config/xray_config.jsonپاک کردن کل محتوا:
در nano، برای پاک کردن سریع تمام محتوا:
Ctrl+Kرا نگه دارید تا تمام خطوط پاک شوند- سپس کانفیگ JSON خود را paste کنید
نمونه کانفیگ JSON:
{
"log": { "loglevel": "warning" },
"inbounds": [
{
"port": 1080,
"protocol": "socks",
"settings": { "udp": false },
"listen": "127.0.0.1"
}
],
"outbounds": [
{
"protocol": "vless",
"settings": {
"vnext": [
{
"address": "your-server-ip-or-domain",
"port": 443,
"users": [
{
"id": "your-uuid-here",
"encryption": "none"
}
]
}
]
},
"streamSettings": {
"network": "ws",
"security": "tls",
"tlsSettings": {
"serverName": "your-domain.com",
"allowInsecure": false
},
"wsSettings": {
"path": "/proxy",
"headers": {
"Host": "your-domain.com"
}
}
}
}
]
}ذخیره و خروج: Ctrl+O → Enter → Ctrl+X
نکته: اگر هر دو فایل پر باشند، فایل
xray_config.txt(فرمت URL) اولویت دارد.
یادآوری: مطمئن شوید این کانفیگ JSON متعلق به همان CDNای است که IPهای آن را در
ip_ranges.txtقرار دادهاید.
روش اول (دانلود مستقیم) — از پوشهای که دانلود کردید:
./clean-ip-scanner ← فایل اجرایی ابزار
./config/
ip_ranges.txt ← لیست رنجهای IP برای اسکن (قابل تغییر برای هر CDN)
xray_config.txt ← کانفیگ Xray (فرمت URL)
xray_config.json ← کانفیگ Xray (فرمت JSON)
./xray/
xray ← هستهی Xray
./clean_ips.txt ← نتایج کامل آخرین اسکن
./clean_ips_list.txt ← لیست سادهی IPها
روش دوم (ساخت از سورس):
~/Clean-IP-Scanner/
clean-ip-scanner ← فایل اجرایی
config/
ip_ranges.txt
xray_config.txt
xray_config.json
xray/
xray
clean_ips.txt
clean_ips_list.txt
# نتایج کامل:
cat clean_ips.txt
# فقط لیست IPها:
cat clean_ips_list.txtrm -f clean-ip-scanner clean-ip-scanner-arm64.zip
wget https://github.com/m-danaee/Clean-IP-Scanner/releases/latest/download/clean-ip-scanner-arm64.zip
unzip clean-ip-scanner-arm64.zip
chmod +x clean-ip-scannerنکته: بهروزرسانی فایلهای
config/را تغییر نمیدهد. کانفیگهای شما دست نخورده میمانند.
cd ~/Clean-IP-Scanner
git pull
CGO_ENABLED=0 go build -ldflags="-s -w" -o clean-ip-scannerrm -f clean-ip-scanner clean-ip-scanner-arm64.zip clean_ips.txt clean_ips_list.txt
rm -rf config/ xray/rm -rf ~/Clean-IP-Scanner
# Ubuntu (اگر لانچر در /usr/local/bin نصب شده باشد)
sudo rm -f /usr/local/bin/clean-ip-scanner
# Ubuntu (اگر لانچر در ~/.local/bin نصب شده باشد)
rm -f ~/.local/bin/clean-ip-scanner
# Termux
rm -f /data/data/com.termux/files/usr/bin/clean-ip-scannerآیا این ابزار فقط برای Cloudflare است؟
خیر. ابزار بهصورت پیشفرض رنج IPهای Cloudflare را اسکن میکند، اما با تغییر فایل config/ip_ranges.txt میتوانید IPهای هر CDN دیگری مانند Akamai، Fastly، Amazon CloudFront، Microsoft Azure CDN، Google Cloud CDN و غیره را اسکن کنید. تنها کافی است رنجهای CIDR آن CDN را در فایل قرار دهید.
چرا IP پیدا نمیکند؟
در شرایط فیلترینگ شدید، این کاملاً طبیعی است. راهحلها:
- در ساعات کمترافیک (مثلاً شب) دوباره امتحان کنید
- مطمئن شوید هیچ VPN فعالی ندارید (اسکن باید بدون VPN انجام شود)
- از حالت Xray با یک کانفیگ معتبر استفاده کنید
- در حالت Xray، مطمئن شوید کانفیگ شما متعلق به همان CDNای است که IPهای آن را اسکن میکنید
ملاک انتخاب IPها چیست؟
- کمترین Packet Loss (IPهایی که بیشترین پینگها را پاسخ دادهاند)
- کمترین تأخیر (میانگین زمان پاسخ)
- بالاترین سرعت دانلود (در نتیجهی نهایی)
چقدر طول میکشد؟
- حالت Normal:
- مرحلهی تأخیر: ۲ تا ۳ دقیقه
- مرحلهی سرعت: ۱ تا ۲ دقیقه
- حالت Xray (با ۸ worker همزمان):
- سرعت اسکن به میزان قابل توجهی بالاتر از نسخههای قبلی است
- میتوانید هر زمان با Ctrl+C متوقف کنید
تست سرعت صفر نشان میدهد؟
# Ubuntu
sudo apt install -y ca-certificates
# Termux
pkg install ca-certificatesدر شرایط فیلترینگ شدید، ممکن است آدرس تست سرعت مستقیماً در دسترس نباشد. در این حالت از حالت Xray استفاده کنید.
خطا: Permission denied
chmod +x clean-ip-scannerخطا: wget not found یا unzip not found یا curl not found
# Ubuntu
sudo apt install -y wget unzip curl
# Termux
pkg install wget unzip curlخطا: Xray binary not found
در روش دوم نصب، Xray بهطور خودکار دانلود میشود. در روش اول، فایل zip باید شامل Xray باشد. دوباره از مراحل نصب شروع کنید.
خطا: No Xray config found
هیچکدام از فایلهای کانفیگ پر نشدهاند. یکی از این دو فایل را ویرایش کنید:
- برای URL:
config/xray_config.txt - برای JSON:
config/xray_config.json
خطا: unsupported protocol
پروتکل URL شما پشتیبانی نمیشود. پروتکلهای معتبر: vless://، vmess://، trojan://، ss://
خطا: no SOCKS inbound found
کانفیگ JSON شما فاقد بخش inbound از نوع SOCKS است. کانفیگ خود را بر اساس نمونهی بالا اصلاح کنید.
ابزار کرش میکند یا پاسخ نمیدهد
ترمینال را ببندید و دوباره باز کنید:
exitسپس دوباره ابزار را اجرا کنید.
- اسکن را بدون VPN فعال انجام دهید تا نتایج دقیقتری بگیرید
- فایل
clean_ips.txtرا برای استفادهی بعدی نگه دارید - در حالت Xray فقط یکی از دو فایل کانفیگ را پر کنید (اگر هر دو پر باشند، فایل txt اولویت دارد)
- کانفیگ Xray شما باید با CDN مورد نظر همخوانی داشته باشد — اگر IPهای Akamai را اسکن میکنید، کانفیگتان باید روی سرور Akamai باشد
- حداقل ۵۰ مگابایت فضای خالی روی سیستم داشته باشید
- اگر نتیجهی خوبی نگرفتید، در زمان دیگری دوباره امتحان کنید — شرایط شبکه متغیر است
- در هر لحظه با Ctrl+C میتوانید اسکن را متوقف کنید و نتایج تا آن لحظه ذخیره میشوند
این پروژه تحت مجوز MIT منتشر شده است — استفاده آزاد.
طراحی و توسعه توسط: Anonymous
اگر این ابزار برای شما مفید بود:
- یک Star ⭐ به repository بدهید
- آن را با دوستانتان به اشتراک بگذارید