برنامهٔ WhiteDNS Android کلاینت اختصاصی و قدرتمند برای اتصال به تونل‌های مبتنی بر DNS و پروتکل‌های پیشرفته است. این راهنمای جامع بر اساس نسخهٔ 1.6.12-beta1 به زبان ساده، تصویری و گام‌به‌گام طراحی شده تا از اولین بار باز کردن برنامه تا انتخاب موتور، ساخت کانفیگ، اسکن ریزالورها و رفع خطاهای اتصال همراه شما باشد.

📱 نکته اولیه پیش از شروع

نصب برنامه به تنهایی شامل سرور فعال نیست. برای اتصال باید از قبل لینک اشتراک، کد QR یا اطلاعات دامنه و کلید اختصاصی را از مدیر سرور یا ارائه‌دهندهٔ خود دریافت کرده باشید.

۱. سه مفهوم کلیدی که مدام می‌بینید

در تمام محیط برنامهٔ وایت‌دی‌ان‌اس با سه اصطلاح اصلی مواجه می‌شوید که درک تفاوت آن‌ها شما را از سردرگمی نجات می‌دهد:

مفهومتعریف به زبان سادهنکته مهم
کانفیگ / پروفایل
(Profile / Config)
مجموعه اطلاعات اتصال شامل دامنه، کلید رمزنگاری و نوع موتور که برای ارتباط با یک سرور مشخص تعریف می‌شود. انتخاب یا فعال کردن یک کانفیگ به تنهایی اینترنت را متصل نمی‌کند؛ باید در تب Connect دکمهٔ اتصال را بزنید.
ریزالور
(Resolver)
سرور واسط DNS عمومی است که درخواست‌های رمزنگاری‌شدهٔ برنامه از مسیر آن عبور داده می‌شود تا به مقصد برسد. داشتن هزاران ریزالور لزوماً بهتر از چند ریزالور فعال و پایدار نیست؛ کیفیت و پینگ روی اینترنت شما تعیین‌کننده است.
موتور اتصال
(Client Engine)
پروتکل فنی نحوهٔ تعامل کلاینت با سرور (مثل CottenDNS، Soar، StormDNS یا MasterDNS). نوع موتور در برنامه باید دقیقاً با نوع سرور شما هماهنگ باشد؛ فقط تغییر دادن نام پروفایل کارساز نیست.

۲. شناخت و مقایسهٔ موتورهای اتصال (Engines)

قبل از پر کردن هر فرمی، باید بدانید سرور شما بر پایهٔ کدام فناوری راه‌اندازی شده است:

نام موتورنوع پروتکل و رفتاروضعیتپیش‌نیاز سرور
CottenDNS موتور تونل DNS اختصاصی و پایدار؛ دارای تنظیمات ساده شامل دامنه، کلید و روش رمزنگاری. پایدار سرور اختصاصی CottenDNS
CottenMax حالت آزمایشی ارتقایافتهٔ CottenDNS با سرعت بالاتر و رفتار بهینه‌تر بسته‌ها. یک پروفایل جداگانه نیست بلکه از داخل فرم CottenDNS فعال می‌شود. بتا (آزمایشی) سرور آپدیت‌شدهٔ CottenDNS که از Max پشتیبانی کند
Soar موتور مستقل طراحی‌شده توسط Lantern برای عبور ترافیک از بستر DNS. بر پایهٔ ترافیک TCP و کلید عمومی (Public Key) سرور کار می‌کند. آزمایشی سرور Soar-Server با پورت‌های فعال ۸۰ و ۴۴۳
StormDNS موتور مستقل دیگر در فهرست برنامه با دامنه، کلید مشترک و روش‌های رمزنگاری اختصاصی. مستقل سرور سازگار با پروتکل StormDNS
MasterDNS پروتکل شناخته‌شدهٔ تونل‌سازی اینترنت از بستر پرس‌وجوهای DNS. فرم سازگار با تنظیمات MasterDnsVPN. پایدار سرورهای مبتنی بر MasterDNS
💡 کدام موتور برای من بهتر است؟

هیچ موتوری برای تمام اینترنت‌ها و اپراتورها بهترین مطلق نیست! نوع موتور را همیشه بر اساس کانفیگی که ارائه‌دهنده داده انتخاب کنید. اگر حق انتخاب دارید، برای شروع از CottenDNS با تنظیمات پیش‌فرض استفاده کنید که بیشترین سازگاری را دارد.

۳. سه روش افزودن کانفیگ (QR، لینک و فرم دستی)

برای اضافه کردن هر کانفیگ، مسیر اصلی در برنامه به شکل زیر است:

تب پایین: Profiles ← بخش: Connection ← دکمه بالای صفحه: Add +

روش اول: اسکن کد QR (سریع‌ترین روش)

  1. پس از زدن + Add، گزینهٔ Scan QR را انتخاب کنید.
  2. دسترسی دوربین را تایید کرده و کادر را روی بارکد مربعی بگیرید تا مشخصات به صورت خودکار ذخیره شود.

روش دوم: وارد کردن با لینک یا سابسکریپشن (Import)

  1. روی دکمهٔ + Add بزنید و گزینهٔ Import را انتخاب کنید.
  2. در پنجرهٔ بازشده، لینک اتصال یا لینک اشتراک خود را در کادر Profile Links جای‌گذاری (Paste) کنید.
  3. دکمهٔ Import را بزنید تا کانفیگ‌های پشتیبانی‌شده به لیست افزوده شوند.

روش سوم: ساخت دستی (Create)

اگر مشخصات را به صورت متن خام دارید، گزینهٔ Create را انتخاب کنید. بسته به نوع موتور، فیلدهای فرم به شرح زیر است:

فیلدتوضیح و مقدار مورد نیاز
Client Engineموتور سرور (مثلاً StormDNS یا CottenDNS). حتماً دقیق انتخاب شود.
Nameنام دلخواه برای شناسایی در لیست شما (مثلاً «اینترنت همراه اول» یا «سرور آلمان»).
Domainsدامنه یا دامنه‌های سرور داده‌شده توسط مدیر سرور.
Encryption Keyکلید رمزنگاری مشترک با سرور؛ باید بدون کوچک‌ترین فاصله یا غلط املایی وارد شود.
Encryption Methodروش رمزنگاری سرور (مانند AES-128-GCM، ChaCha20 یا XOR).
⚠️ نکته امنیتی در مورد رمزنگاری XOR

روش XOR در برخی گزینه‌ها دیده می‌شود اما از نظر امنیتی در برابر تحلیل بسته‌ها مقاوم نیست. اگر سرور شما از AES یا ChaCha20 پشتیبانی می‌کند، حتماً گزینهٔ امن سازگار را انتخاب کنید.

۴. مدیریت، ویرایش و تست سرور در پروفایل‌ها

در صفحهٔ Profiles → Connection، در کنار هر کانفیگ یک منوی سه‌نقطه وجود دارد که دسترسی‌های مهمی به شما می‌دهد:

  • Use profile: این کانفیگ را به عنوان کانفیگ پیش‌فرض برای اتصال فعال می‌کند (کنار آن نشان سبز ظاهر می‌شود).
  • Test server: یک پینگ و آزمایش اولیه ارتباط شبکه با سرور ارسال می‌کند تا از در دسترس بودن هاست مطمئن شوید.
  • Edit profile: باز کردن مجدد فرم برای اصلاح دامنه، کلید، نام یا تغییر متد رمزنگاری.
  • Export profile: گرفتن خروجی به صورت متن یا لینک برای انتقال به دستگاه دیگر یا پشتیبان‌گیری.
  • Delete profile: حذف دائم کانفیگ از لیست برنامه.
🔒 حریم خصوصی و امنیت کلیدها

لینک‌های اشتراک، کدهای QR و کلیدهای رمزنگاری را هرگز در گروه‌ها یا کانال‌های عمومی ارسال نکنید؛ هر کسی که این اطلاعات را داشته باشد می‌تواند از ترافیک سرور شما استفاده کند یا سهمیهٔ شما را به پایان برساند.

۵. فعال‌سازی CottenMax و تنظیمات پیشرفته

اگر از کانفیگ CottenDNS استفاده می‌کنید و مدیر سرور اعلام کرده که سرور به نسخهٔ دارای CottenMax ارتقا یافته، می‌توانید حالت پرسرعت‌تر آزمایشی را فعال کنید:

  1. از منوی سه‌نقطهٔ کنار پروفایل CottenDNS، گزینهٔ Edit profile را انتخاب کنید.
  2. نام، دامنه و کلید را دست‌نخورده باقی بگذارید.
  3. در بخش CottenDNS mode، گزینهٔ CottenMax (beta) را انتخاب کنید.
  4. دکمهٔ Save را بزنید. اگر متصل بودید، ابتدا دکمهٔ قطع (Stop) و سپس اتصال مجدد را بزنید.

معنی گزینه‌های بخش Advanced CottenMax

اگر کلید تنظیمات پیشرفته را روشن کنید، گزینه‌های زیر در دسترس قرار می‌گیرند (برای کاربران عادی پیش‌فرض بهترین حالت است):

گزینهکاربرد فنیتوصیه برای تنظیم
Background Scan Resolvers تعداد ریزالورهایی که همزمان در پس‌زمینه بعد از برقراری تونل برای یافتن مسیر بهتر پایش می‌شوند. مقدار پیش‌فرض 1 یا مقادیر کم، فشار کمتری به پردازنده و باتری گوشی می‌آورد.
Query rate limit سرعت ارسال بسته‌های DNS در ثانیه را محدود می‌کند تا از بلاک شدن توسط فایروال اپراتور جلوگیری شود. اگر اپراتور درخواست‌های پرشمار را قطع می‌کند، روی مقادیری مثل ۳ یا ۶ بر ثانیه تست کنید.
Timing mask فواصل زمانی ارسال درخواست‌ها را تصادفی می‌کند تا الگوی ثابت ماشینی نداشته باشد. در شبکه‌های به شدت حساس به DPI می‌تواند به پایداری تونل کمک کند.
Transport / Delivery تعیین نوع پاسخ DNS و نحوهٔ ترنسپورت (مثلاً AAAA یا TXT). برای شروع حتماً روی From preset باقی بماند.
IP mode / QNAME Reshaping جزئیات بسته‌بندی نام دامنه برای سازگاری با سیستم‌های میانی شبکه. معمولاً دست‌نخورده نگه دارید مگر به توصیهٔ مدیر سرور.
⚠️ قانون طلایی تغییر تنظیمات

هرگز چند گزینه را همزمان تغییر ندهید! در صورت بروز مشکل، هر بار فقط یک گزینه را تغییر داده، ذخیره کنید و نتیجهٔ اتصال را بسنجید تا بفهمید کدام متغیر روی اپراتور شما اثرگذار بوده است.

۶. راه‌اندازی و تنظیم موتور Soar

اگر سرور شما بر پایهٔ پروژهٔ Soar راه‌اندازی شده است، فرم ساخت و تنظیم آن فیلدهای متفاوتی دارد:

  1. در فرم ساخت، فیلد Client Engine را روی Soar (experimental) بگذارید.
  2. در فیلد Tunnel domain، دامنهٔ اختصاصی تونل سرور را وارد کنید.
  3. در فیلد Server PUBLIC key، فقط کلید عمومی سرور را وارد کنید (کلید خصوصی هرگز نباید در کلاینت وارد شود!).
  4. گزینهٔ Soar preset را در شروع روی Balanced (recommended) بگذارید.
  5. گزینهٔ DNS resolver transport را روی Auto UDP with TCP fallback تنظیم کنید.
  6. گزینهٔ User network country را روی کشور اینترنت خودتان (مثلاً Iran) تنظیم کنید (این گزینه کشور سیم‌کارت شماست، نه موقعیت سرور خارج).
ℹ️ محدودیت ترافیک Soar

موتور Soar به طور اختصاصی برای انتقال ترافیک پروتکل TCP طراحی شده است. روشن کردن حالت Full VPN لزوماً ترافیک‌های UDP نظیر تماس‌های صوتی برخی پیام‌رسان‌ها یا پروتکل QUIC را از آن عبور نمی‌دهد.

۷. مفهوم ریزالور (Resolver)، لیست شخصی و اسکن

ریزالورها قلب تپندهٔ تونل‌های DNS هستند. برنامهٔ وایت‌دی‌ان‌اس دارای یک فهرست آماده به نام Default Resolver شامل بیش از ۴۷۰۰ سرور DNS است.

آیا ریزالور بیشتر یعنی سرعت بالاتر؟

خیر! وجود هزاران ریزالور به معنی پایداری نیست. آن‌چه اهمیت دارد، وجود چند ده یا صد ریزالور باکیفیت است که از طرف اپراتور شما فیلتر یا مسدود نشده باشند و کمترین تاخیر (Ping) را داشته باشند.

ساخت فهرست Resolver شخصی

  1. از تب پایین وارد Profiles شده و زبانهٔ Resolver را باز کنید.
  2. روی دکمهٔ + Add بزنید و یک نام دلخواه (مثلاً «لیست شاتل» یا «دی‌ان‌اس پرسرعت») تعیین کنید.
  3. در کادر Resolvers، آی‌پی‌ها را وارد کنید (هر IP در یک خط مجزا)؛ یا با دکمهٔ Import file فایل متنی را بارگذاری نمایید.
  4. دکمهٔ Save را برای ذخیره بزنید.

آموزش اسکن در صفحهٔ Scan

صفحهٔ Scan در نوار پایین برای این است که بفهمید کدام ریزالورها هم‌اکنون روی اینترنت شما پاسخ می‌دهند:

تب پایین: Scan ← انتخاب فهرست: Default list یا Select file ← تنظیم Workers ← انتخاب Scan Profile و زدن Start
  • تعداد Workers: مشخص می‌کند چند ریزالور به صورت همزمان تست شوند. مقدار ۴ یا مقادیر متعادل توصیه می‌شود؛ انتخاب اعداد خیلی بالا باعث درگیری شدید پردازنده، داغ شدن گوشی و مصرف باتری می‌شود.
  • آمار Scan status: پس از شروع، تعداد کل (Total)، معتبرها (Valid) و ناموفق‌ها (Rejected) را به همراه نوار پیشرفت می‌بینید.
  • ذخیرهٔ خروجی: پس از اتمام اسکن، با دکمهٔ Save as می‌توانید ریزالورهای سالم را در یک فهرست اختصاصی ذخیره کنید.
💡 چه زمانی باید اسکن کنیم؟

لازم نیست هر روز یا قبل از هر اتصال اسکن کنید! اسکن فقط زمانی ضروری است که اتصال قبلی شما ناپایدار شده باشد یا به نظر برسد ریزالورهای قبلی از کار افتاده‌اند.

۸. اتصال به اینترنت: تفاوت Proxy Mode و Full VPN

در صفحهٔ Connect دکمهٔ بزرگ اتصال قرار دارد. اما قبل از زدن آن، باید تفاوت این دو حالت را بدانید:

ویژگیحالت Proxy Modeحالت Full VPN
نحوه عملکرد برنامه یک پروکسی محلی روی گوشی شما باز می‌کند:
SOCKS5: 127.0.0.1:10886
HTTP: 127.0.0.1:10887
برنامه از سرویس داخلی VpnService اندروید استفاده کرده و کل ترافیک گوشی را به داخل تونل می‌برد.
نیاز به تنظیم اپ‌ها بله؛ تلگرام، واتساپ یا مرورگر باید دستی با پروکسی محلی بالا تنظیم شوند. خیر؛ تمام نرم‌افزارهای گوشی به صورت خودکار از تونل عبور می‌کنند.
مصرف منابع بسیار سبک، بدون ایجاد کارت شبکهٔ مجازی. مصرف معمولی سرویس‌های VPN اندروید.
مناسب برای استفادهٔ گزینشی در تلگرام یا یک مرورگر بدون تأثیر روی سایر نرم‌افزارهای بانکی و داخلی. وب‌گردی آزاد و استفادهٔ سراسری در تمام نرم‌افزارها.
⚠️ چرا در Proxy Mode هیچ برنامه‌ای اینترنت ندارد؟

این یکی از رایج‌ترین ابهامات کاربران است! اگر برنامه روی Proxy Mode باشد، با زدن دکمهٔ اتصال، اینترنت کلی گوشی تونل نمی‌شود؛ بلکه باید در تنظیمات پروکسی برنامهٔ مورد نظرتان (مثلاً بخش Proxy در تنظیمات تلگرام)، هاست را 127.0.0.1 و پورت ساکس را 10886 قرار دهید. اگر می‌خواهید همه چیز خودکار کار کند، حالت را روی Full VPN بگذارید.

نشانه‌های یک اتصال موفق

هنگامی که دکمهٔ بزرگ را می‌زنید، وضعیت‌های زیر را بررسی کنید:

  • دکمه به حالت قرمز رنگ با عنوان Stop درمی‌آید.
  • تگ سبز Verified با پیام «Connection verified: proxy tunnel can reach the internet» نشان داده می‌شود؛ این به این معنی است که تونل واقعاً به اینترنت جهانی دسترسی دارد.
  • کارت‌های آماری Down، Up و Total Usage ترافیک زندهٔ مبادله‌شده را نمایش می‌دهند.

۹. راهنمای عیب‌یابی: وقتی اتصال کار نمی‌کند

اگر در هر مرحله با مشکل روبرو شدید، جدول زیر را برای رفع سریع مطالعه کنید:

نشانه یا مشکلعلت محتملاقدام و راه‌حل
کانفیگ اضافه شد اما وصل نمی‌شود اشتباه بودن کلید، اشتباه بودن دامنه، خاموش بودن سرور یا هماهنگ نبودن نوع Client Engine. موتور را چک کنید؛ دامنه و کلید را بررسی کنید؛ از مدیر سرور بپرسید سرور فعال است یا خیر.
CottenMax وصل نمی‌شود سرور هنوز نسخهٔ جدید CottenMax را نصب نکرده است. به بخش ویرایش پروفایل رفته، گزینه را موقتاً به Normal CottenDNS بازگردانید و وصل شوید (نیازی به حذف کانفیگ نیست).
برنامه Verified نوشته ولی سایتی باز نمی‌شود استفاده از Proxy Mode به جای Full VPN، یا تداخل تنظیمات MTU. بررسی کنید حالت روی Full VPN باشد. زبانهٔ Setting را روی Default بگذارید.
لاگ‌های خطا را از کجا ببینم؟ نیاز به بررسی گزارش دقیق خطاهای اتصال. از نوار پایین برنامه وارد زبانهٔ Logs شوید تا خطاهای دقیق ثبت‌شده را مشاهده کنید.
اتصال Soar ناپایدار است یا UDP عبور نمی‌کند موتور Soar ماهیت ترافیک TCP دارد. در فیلد DNS Transport گزینهٔ Auto UDP with TCP fallback را بررسی کنید؛ در برنامه‌های نیازمند UDP از CottenDNS استفاده نمایید.
🎯 چک‌لیست طلایی ۳ مرحله‌ای برای تازه‌کارها

هنگام بروز مشکل، دقیقاً این سه مرحله را به ترتیب بررسی کنید و سراغ گزینه‌های دیگر نروید:
۱. نوع موتور اتصال: آیا موتور دقیقاً همانی است که سرور دارد؟
۲. دامنه و کلید: آیا حتی یک حرف کوچک یا بزرگ اشتباه تایپ نشده؟
۳. لیست ریزالورها: آیا فهرست ریزالورها تست شده و پاسخگو است؟
هرگز از دستکاری تنظیمات پیشرفته یا MTU در زبانهٔ Setting شروع نکنید!

۱۰. مسیر ۵ مرحله‌ای برای هر بار اتصال و چک‌لیست امنیت

هر بار که می‌خواهید از برنامه استفاده کنید، این الگوی ساده را طی کنید:

  1. انتخاب پروفایل: در بخش Profiles، مطمئن شوید کانفیگ مورد نظرتان دارای تیک فعال است.
  2. رفتن به صفحه Connect: از نوار پایین به تب Connect بروید.
  3. تعیین حالت: بسته به نیاز خود بین Full VPN یا Proxy Mode سوییچ کنید.
  4. فشردن دکمه اتصال: دکمهٔ بزرگ را بزنید و منتظر ظاهر شدن نشان Verified و ترافیک زنده بمانید.
  5. در صورت بروز مشکل: فقط یک پارامتر را عوض کنید و از بخش Logs وضعیت را بررسی کنید.

منابع و مراجع رسمی