[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"project-77458":3},{"id":4,"name":5,"fullName":6,"owner":7,"repo":5,"description":8,"homepage":9,"htmlUrl":9,"language":10,"languages":9,"totalLinesOfCode":9,"stars":11,"forks":12,"watchers":13,"openIssues":14,"contributorsCount":15,"subscribersCount":15,"size":15,"stars1d":16,"stars7d":17,"stars30d":18,"stars90d":15,"forks30d":15,"starsTrendScore":19,"compositeScore":20,"rankGlobal":9,"rankLanguage":9,"license":9,"archived":21,"fork":21,"defaultBranch":22,"hasWiki":23,"hasPages":21,"topics":24,"createdAt":9,"pushedAt":9,"updatedAt":25,"readmeContent":26,"aiSummary":27,"trendingCount":15,"starSnapshotCount":15,"syncStatus":17,"lastSyncTime":28,"discoverSource":29},77458,"cdn-ip-finder","hossein8360\u002Fcdn-ip-finder","hossein8360","CDN IP finder for ShirOKhorshid domain fronting",null,"HTML",159,65,5,3,0,1,2,52,4,5.46,false,"main",true,[],"2026-06-12 02:03:43","# 🌐 CDN IP Scanner for ShirOKhorshid\n\n\u003Cdiv align=\"center\">\n\n![Version](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002Fversion-2.0-brightgreen)\n![License](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002Flicense-GPL--3.0-blue)\n![Language](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002Ftools-Bash%20%2B%20HTML-orange)\n![Iran](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002Ftested%20from-Iran-red)\n![Serverless](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002Fweb%20app-serverless-9b5cff)\n\n**[English](#english) | [فارسی](#فارسی)**\n\n\u003C\u002Fdiv>\n\n---\n\n## English\n\n### What is This?\n\nA set of tools to **find, test, and export CDN edge IPs** that are not blocked in Iran, for use in the **CDN Fronting** feature of [ShirOKhorshid](https:\u002F\u002Fgithub.com\u002Fshirokhorshid\u002Fshirokhorshid-android) — a community fork of the Psiphon Android client.\n\nSupports: **Akamai · Google CDN · Amazon CloudFront · Microsoft Azure CDN**\n\n---\n\n## 📸 Screenshots\n\n![Hero](assets\u002Fscreenshot-hero.png)\n*Header and CDN selector*\n\n![Scanner](assets\u002Fscreenshot-scanner.png)\n*Full scanner with IP ranges and settings*\n\n![Results](assets\u002Fscreenshot-results.png)\n*Results table with working IPs and copy bar*\n\n![Dashboard](assets\u002Fscreenshot-dashboard.png)\n*Dashboard — latency chart and CDN health bars*\n\n![History](assets\u002Fscreenshot-history.png)\n*Scan history saved in browser*\n\n---\n\n## 🖥️ `index.html` — Web Scanner (Main Tool)\n\n> The most important file in this project.\n> **Open it directly in your browser inside Iran — no installation needed.**\n\n`index.html` is a fully **serverless, single-file web application** that scans CDN IPs directly from your browser. Because the test runs inside your own browser, the results are **100% accurate for your specific ISP and network** — no proxy, no middleman.\n\n### How to Use\n\n**Option A — GitHub Pages (recommended):**\n```\nhttps:\u002F\u002FYOUR_USERNAME.github.io\u002Fcdn-ip-finder\u002F\n```\nOpen this URL inside Iran without VPN for accurate results.\n\n**Option B — Local file:**\n```bash\n# Just download index.html and open it\nopen index.html       # Mac\nxdg-open index.html   # Linux\n# Or double-click the file on Windows\n```\n\nNo server, no npm, no installation. Pure HTML + JS.\n\n---\n\n### `index.html` Features\n\n| Feature | Description |\n|---------|-------------|\n| 🔍 **Direct browser scan** | Tests each IP with `fetch()` in `no-cors` mode — fast TCP check from your device |\n| 🇮🇷 **ISP auto-detection** | Detects your operator (MCI \u002F Irancell \u002F Rightel \u002F Shatel) via ipapi.co |\n| ⭐ **ISP profile** | Shows pre-tested IPs known to work on your specific operator |\n| ⚡ **Scan presets** | Quick (50 IPs) · Standard (250) · Deep (1000) · Recheck alive IPs |\n| 🏢 **CDN selector** | Choose Akamai, Google, Amazon, Azure — or all at once |\n| 🔒 **SNI selector** | Pick the right SNI hostname per CDN with one click |\n| 📋 **Range chips** | Click IP ranges to add them — CIDR, range, or single IP supported |\n| 📊 **Live dashboard** | Latency distribution chart + CDN health bars (loads Chart.js lazily) |\n| 🕐 **Scan history** | Auto-saves last 20 scans to `localStorage` — no server needed |\n| ⭐ **Stable IP detection** | Highlights IPs that appeared alive in multiple scans |\n| 📋 **Copy for ShirOKhorshid** | One-click comma-separated output ready to paste |\n| 📱 **QR code** | Instant transfer of working IPs to your phone |\n| 💾 **Export** | Download results as TXT or CSV |\n| ♻️ **Stability score** | Tests each IP multiple times to detect flaky connections |\n\n---\n\n### How the Browser Test Works\n\n```\nIranian user opens index.html in browser\n        ↓\nBrowser sends HEAD request to each CDN IP:\n  fetch(`https:\u002F\u002F${ip}\u002F`, { mode: 'no-cors' })\n        ↓\nFast response (\u003C 85% of timeout)\n  → TCP connected → IP is REACHABLE on your ISP ✅\nSlow \u002F no response (≥ 85% of timeout)\n  → Connection timed out → IP is BLOCKED on your ISP ❌\n```\n\nEven a TLS or CORS error counts as reachable — it means the IP responded.\n\n---\n\n### Tabs in `index.html`\n\n| Tab | What It Does |\n|-----|-------------|\n| 🔍 **اسکنر** | Main scanner — CDN select, IP ranges, settings, results table |\n| 📊 **داشبورد** | Latency chart + CDN health bars after scan |\n| 🕐 **تاریخچه** | Scan history from localStorage + stable IP suggestions |\n| 📱 **راهنما** | Step-by-step guide for using results in ShirOKhorshid |\n| ℹ️ **درباره** | Explanation of how CDN Fronting works |\n\n---\n\n### SNI Hostnames Available in `index.html`\n\n| CDN | SNI Options |\n|-----|------------|\n| ⚡ Akamai | `a248.e.akamai.net` · `a77.net.akamai.net` · `ds-aksb.akamaized.net` |\n| 🔵 Google | `fonts.googleapis.com` · `ajax.googleapis.com` · `storage.googleapis.com` |\n| 🟠 Amazon | `d1.cloudfront.net` · `d2.cloudfront.net` · `aws.cloudfront.net` |\n| 🔷 Azure | `ajax.aspnetcdn.com` · `az416426.vo.msecnd.net` · `cdn.office.net` |\n\n---\n\n### IP Ranges Included in `index.html`\n\n| CDN | Ranges | Coverage |\n|-----|--------|----------|\n| Akamai | 26 ranges (\u002F24) | EU, US, Global |\n| Google | 12 ranges (\u002F24) | Cloud Run, Core |\n| Amazon | 10 ranges (\u002F24) | US, Global |\n| Azure | 7 ranges (\u002F24) | US, Global |\n\n---\n\n### Technical Details\n\n- **No external dependencies** at load time — Chart.js loads lazily only when Dashboard tab is opened\n- **QR code** generated via `api.qrserver.com` (free, no API key)\n- **History** stored in browser `localStorage` — private, never sent anywhere\n- **ISP detection** via `ipapi.co\u002Fjson\u002F` — only used to show your operator name\n- Works as a **static file** — can be served from GitHub Pages, any web host, or opened locally\n\n---\n\n## 🖥️ Bash Scripts (Server-side Testing)\n\nFor testing via real Iranian network nodes, run these on a Linux server **outside Iran**.\n\n#### `scripts\u002Fakamai_finder.sh` — Quick Akamai IP Finder\n\nResolves 20+ major Akamai-hosted domains and tests IPs from your machine.\n\n```bash\nchmod +x scripts\u002Fakamai_finder.sh\n.\u002Fscripts\u002Fakamai_finder.sh\n```\n\n- ✅ Fast (~2 minutes)\n- ✅ Good for a quick initial list\n- ❌ Tests from your machine, not from inside Iran\n\n---\n\n#### `scripts\u002Fakamai_iran_checker.sh` — Akamai Iran Tester\n\nTests Akamai IPs from real Iranian nodes via check-host.net API.\n\n```bash\nchmod +x scripts\u002Fakamai_iran_checker.sh\n.\u002Fscripts\u002Fakamai_iran_checker.sh\n```\n\n- ✅ Uses ir1, ir2, ir3, ir4 Iranian nodes (Tehran, Isfahan, Mashhad)\n- ✅ More accurate for Iran\n- ❌ Slower (~10–15 min)\n\n---\n\n#### `scripts\u002Fcdn_iran_checker.sh` — Full CDN Iran Checker ⭐\n\nTests all CDNs from Iranian nodes. Most comprehensive tool.\n\n```bash\nchmod +x scripts\u002Fcdn_iran_checker.sh\n.\u002Fscripts\u002Fcdn_iran_checker.sh\n```\n\n- ✅ Tests Akamai, Google, Amazon, Azure\n- ✅ First checks which CDNs are accessible in Iran\n- ✅ Tests each IP from 4 Iranian nodes\n- ✅ Outputs comma-separated list ready for ShirOKhorshid\n- ❌ Takes 15–30 minutes\n\n---\n\n## How to Use Results in ShirOKhorshid\n\n1. Run the web scanner (`index.html`) or a bash script\n2. Copy the comma-separated IP list\n3. Open **ShirOKhorshid** → Settings → CDN Fronting\n4. Tap **CDN edge IPs** → paste the list\n5. Tap **CDN SNI hostname** → enter one of:\n\n```\nAkamai  →  a248.e.akamai.net\nGoogle  →  fonts.googleapis.com\nAmazon  →  d1.cloudfront.net\nAzure   →  ajax.aspnetcdn.com\n```\n\n6. Set **Connection Protocol** → **CDN Fronting** → Connect! 🎉\n\n---\n\n## How CDN Fronting Works\n\n```\n[User in Iran]\n      ↓  connects to CDN IP (not blocked)\n[CDN Edge IP]  ← firewall sees safe SNI, allows it\n      ↓  CDN forwards traffic internally (Host header is encrypted)\n[Psiphon Server]\n      ↓\n[Free Internet 🌍]\n```\n\nIran's firewall cannot block Akamai or Google without also breaking\nthousands of Iranian banking, news, and government websites.\n\n---\n\n## Project Structure\n\n```\ncdn-ip-finder\u002F\n├── index.html                    # ⭐ Web scanner — open in browser\n├── scripts\u002F\n│   ├── akamai_finder.sh          # Quick Akamai IP finder\n│   ├── akamai_iran_checker.sh    # Akamai tester via Iranian nodes\n│   └── cdn_iran_checker.sh       # Full CDN checker ⭐\n├── docs\u002F\n│   └── how-it-works.md           # Technical explanation\n├── results\u002F\n│   └── .gitkeep                  # Save your results here\n├── README.md\n└── LICENSE\n```\n\n---\n\n## Requirements\n\n**For `index.html`:** just a browser — no installation needed.\n\n**For bash scripts:**\n```bash\n# Ubuntu \u002F Debian\nsudo apt install curl dnsutils python3 -y\n\n# CentOS \u002F RHEL\nsudo yum install curl bind-utils python3 -y\n```\n\n---\n\n## Contributing\n\nIf you have tested IPs from inside Iran, open an Issue and share:\n\n- Which **ISP** (MCI \u002F Irancell \u002F Rightel \u002F Shatel \u002F other)\n- Which **IPs** worked\n- **Date** of testing (IPs rotate frequently!)\n- Your **city** (filtering can differ by region)\n\n---\n\n## Related Projects\n\n- [ShirOKhorshid Android](https:\u002F\u002Fgithub.com\u002Fshirokhorshid\u002Fshirokhorshid-android)\n- [Psiphon](https:\u002F\u002Fpsiphon.ca)\n\n---\n\n## License\n\nGPL-3.0 — same as ShirOKhorshid and Psiphon\n\n---\n---\n\n## فارسی\n\n### این پروژه چیست؟\n\nمجموعه‌ای از ابزارها برای **پیدا کردن، تست و خروجی گرفتن از آی‌پی‌های CDN** که در ایران فیلتر نشده‌اند، جهت استفاده در قابلیت **CDN Fronting** اپلیکیشن [شیروخورشید](https:\u002F\u002Fgithub.com\u002Fshirokhorshid\u002Fshirokhorshid-android).\n\nپشتیبانی از: **Akamai · Google CDN · Amazon CloudFront · Microsoft Azure CDN**\n\n---\n\n## 📸 تصاویر\n\n![Hero](assets\u002Fscreenshot-hero.png)\n*هدر و انتخاب CDN*\n\n![Scanner](assets\u002Fscreenshot-scanner.png)\n*اسکنر کامل با رنج‌های IP و تنظیمات*\n\n![Results](assets\u002Fscreenshot-results.png)\n*جدول نتایج با آی‌پی‌های زنده و کپی بار*\n\n![Dashboard](assets\u002Fscreenshot-dashboard.png)\n*داشبورد — نمودار تأخیر و سلامت CDN*\n\n![History](assets\u002Fscreenshot-history.png)\n*تاریخچه اسکن‌ها در مرورگر*\n\n---\n\n## 🖥️ فایل `index.html` — اسکنر وب (ابزار اصلی)\n\n> مهم‌ترین فایل این پروژه.\n> **مستقیماً در مرورگر خود داخل ایران باز کنید — نیازی به نصب ندارد.**\n\n`index.html` یک **وب‌اپلیکیشن تک‌فایلی و بدون سرور** است که آی‌پی‌های CDN را مستقیماً از مرورگر شما اسکن می‌کند. چون تست داخل مرورگر خود شما اجرا می‌شود، نتایج **دقیقاً بر اساس اپراتور و شبکه شما** است — بدون پروکسی، بدون واسطه.\n\n### نحوه استفاده\n\n**روش الف — GitHub Pages (توصیه‌شده):**\n```\nhttps:\u002F\u002FYOUR_USERNAME.github.io\u002Fcdn-ip-finder\u002F\n```\nاین لینک را از داخل ایران و بدون VPN باز کنید تا نتایج دقیق باشد.\n\n**روش ب — فایل محلی:**\n```bash\n# فقط index.html را دانلود کنید و باز کنید\nopen index.html       # Mac\nxdg-open index.html   # Linux\n# یا روی ویندوز دابل‌کلیک کنید\n```\n\nبدون سرور، بدون npm، بدون نصب. فقط HTML + JS خالص.\n\n---\n\n### امکانات `index.html`\n\n| امکان | توضیح |\n|-------|-------|\n| 🔍 **اسکن مستقیم از مرورگر** | هر آی‌پی را با `fetch()` در حالت `no-cors` تست می‌کند |\n| 🇮🇷 **شناسایی اپراتور** | اپراتور شما را تشخیص می‌دهد (همراه اول \u002F ایرانسل \u002F رایتل \u002F شاتل) |\n| ⭐ **پروفایل اپراتور** | آی‌پی‌های تأییدشده برای اپراتور شما را نشان می‌دهد |\n| ⚡ **پریست‌های اسکن** | سریع (۵۰) · استاندارد (۲۵۰) · عمیق (۱۰۰۰) · بررسی مجدد |\n| 🏢 **انتخاب CDN** | Akamai، Google، Amazon، Azure — یا همه با هم |\n| 🔒 **انتخاب SNI** | انتخاب SNI Hostname مناسب با یک کلیک |\n| 📋 **چیپ‌های رنج IP** | کلیک روی رنج‌ها برای افزودن — CIDR، بازه یا IP تکی |\n| 📊 **داشبورد زنده** | نمودار تأخیر + نوارهای سلامت CDN |\n| 🕐 **تاریخچه اسکن** | ذخیره خودکار ۲۰ اسکن آخر در `localStorage` |\n| ⭐ **تشخیص آی‌پی پایدار** | آی‌پی‌هایی که در چندین اسکن زنده بودند را برجسته می‌کند |\n| 📋 **کپی برای شیروخورشید** | خروجی comma-separated آماده paste |\n| 📱 **QR کد** | انتقال فوری آی‌پی‌های زنده به گوشی |\n| 💾 **خروجی** | دانلود نتایج به فرمت TXT یا CSV |\n| ♻️ **امتیاز ثبات** | هر آی‌پی را چندین بار تست می‌کند تا اتصالات ناپایدار شناسایی شوند |\n\n---\n\n### تب‌های `index.html`\n\n| تب | کارکرد |\n|----|--------|\n| 🔍 **اسکنر** | اسکنر اصلی — انتخاب CDN، رنج‌های IP، تنظیمات، جدول نتایج |\n| 📊 **داشبورد** | نمودار تأخیر + نوارهای سلامت CDN بعد از اسکن |\n| 🕐 **تاریخچه** | تاریخچه اسکن‌ها + پیشنهاد آی‌پی‌های پایدار |\n| 📱 **راهنما** | راهنمای گام‌به‌گام استفاده از نتایج در شیروخورشید |\n| ℹ️ **درباره** | توضیح نحوه کار CDN Fronting |\n\n---\n\n### SNI Hostname‌های موجود در `index.html`\n\n| CDN | گزینه‌های SNI |\n|-----|--------------|\n| ⚡ Akamai | `a248.e.akamai.net` · `a77.net.akamai.net` · `ds-aksb.akamaized.net` |\n| 🔵 Google | `fonts.googleapis.com` · `ajax.googleapis.com` · `storage.googleapis.com` |\n| 🟠 Amazon | `d1.cloudfront.net` · `d2.cloudfront.net` · `aws.cloudfront.net` |\n| 🔷 Azure | `ajax.aspnetcdn.com` · `az416426.vo.msecnd.net` · `cdn.office.net` |\n\n---\n\n## اسکریپت‌های Bash (تست سمت سرور)\n\nبرای تست دقیق‌تر از طریق نودهای ایرانی، این اسکریپت‌ها را روی یک سرور لینوکس **خارج از ایران** اجرا کنید.\n\n#### `scripts\u002Fakamai_finder.sh` — جستجوگر سریع Akamai\n\n```bash\nchmod +x scripts\u002Fakamai_finder.sh\n.\u002Fscripts\u002Fakamai_finder.sh\n```\n\n#### `scripts\u002Fakamai_iran_checker.sh` — تستر ایرانی Akamai\n\n```bash\nchmod +x scripts\u002Fakamai_iran_checker.sh\n.\u002Fscripts\u002Fakamai_iran_checker.sh\n```\n\n#### `scripts\u002Fcdn_iran_checker.sh` — چکر کامل CDN ⭐\n\n```bash\nchmod +x scripts\u002Fcdn_iran_checker.sh\n.\u002Fscripts\u002Fcdn_iran_checker.sh\n```\n\n---\n\n## نحوه استفاده از نتایج در شیروخورشید\n\n۱. اسکنر وب یا اسکریپت bash را اجرا کنید\n۲. لیست آی‌پی‌های comma-separated را کپی کنید\n۳. شیروخورشید → تنظیمات → CDN Fronting\n۴. روی **CDN edge IPs** بزنید → لیست را paste کنید\n۵. روی **CDN SNI hostname** بزنید:\n\n```\nAkamai  →  a248.e.akamai.net\nGoogle  →  fonts.googleapis.com\nAmazon  →  d1.cloudfront.net\nAzure   →  ajax.aspnetcdn.com\n```\n\n۶. Connection Protocol → **CDN Fronting** → وصل شوید! 🎉\n\n---\n\n## ساختار پروژه\n\n```\ncdn-ip-finder\u002F\n├── index.html                    # ⭐ اسکنر وب — در مرورگر باز کنید\n├── scripts\u002F\n│   ├── akamai_finder.sh          # جستجوگر سریع Akamai\n│   ├── akamai_iran_checker.sh    # تستر از نودهای ایرانی\n│   └── cdn_iran_checker.sh       # چکر کامل CDN ⭐\n├── docs\u002F\n│   └── how-it-works.md           # توضیح فنی\n├── results\u002F\n│   └── .gitkeep\n├── README.md\n└── LICENSE\n```\n\n---\n\n## مشارکت\n\nاگر از داخل ایران آی‌پی‌ها را تست کرده‌اید، یک Issue باز کنید:\n\n- کدام **اپراتور** (همراه اول \u002F ایرانسل \u002F رایتل \u002F شاتل \u002F دیگران)\n- کدام **آی‌پی‌ها** کار کردند\n- **تاریخ** تست\n- **شهر** شما\n\n---\n\n## پروژه‌های مرتبط\n\n- [شیروخورشید اندروید](https:\u002F\u002Fgithub.com\u002Fshirokhorshid\u002Fshirokhorshid-android)\n- [سایفون](https:\u002F\u002Fpsiphon.ca)\n\n---\n\n## لایسنس\n\nGPL-3.0 — مثل شیروخورشید و سایفون\n","该项目是一个用于ShirOKhorshid域名前置的CDN IP查找工具。其核心功能包括直接从浏览器进行CDN边缘IP的查找、测试和导出，支持Akamai、Google CDN、Amazon CloudFront和Microsoft Azure CDN等主流CDN服务。技术特点上，它采用纯HTML加JavaScript构建，无需安装任何依赖即可运行，且能在伊朗本地网络环境下准确检测到未被封锁的IP地址。此外，该工具还具备ISP自动识别、预设扫描模式、实时监控面板及历史记录保存等功能。适用于需要绕过互联网审查机制访问受限内容的用户或开发者。","2026-06-11 03:55:30","CREATED_QUERY"]