mihomo چیست؟ تفاوت هسته و کلاینت گرافیکی
فهرست مطلب
- هسته mihomo دقیقاً چه کاری انجام میدهد
- چرا mihomo رابط گرافیکی ندارد
- کلاینتهای گرافیکی چگونه از هسته استفاده میکنند
- کاربر عادی چه چیزی باید دانلود کند
- پرسشهای پرتکرار
- mihomo و Clash یک چیز هستند؟
- اگر Clash Verge Rev نصب کردهام، باید هسته را جدا نصب کنم؟
- آیا اشتراک Clash من با mihomo کار میکند؟
mihomo یک هسته پراکسی شبکه متنباز است؛ برنامهای که ترافیک برنامههای شما را میگیرد، بر اساس قوانین تصمیم میگیرد هر درخواست از کدام مسیر برود و آن را به سرور مقصد تحویل میدهد. این پروژه تا سال 2023 با نام Clash.Meta شناخته میشد؛ انشعابی از Clash اصلی که جامعه MetaCubeX پس از توقف پروژه مادر به توسعه آن ادامه داد و سپس نامش را به mihomo تغییر داد.
بیشترین سردرگمی کاربران تازهکار از رابطه میان هسته mihomo و برنامههایی میآید که پنجره و دکمه دارند. در این نوشته دقیقاً مشخص میکنیم هسته چه کاری انجام میدهد، چرا رابط گرافیکی ندارد و چرا در بیشتر موارد اصلاً نیازی به دانلود جداگانه آن ندارید.
هسته mihomo دقیقاً چه کاری انجام میدهد
اگر جزئیات را کنار بگذاریم، وظیفه هسته چهار چیز است:
- خواندن پیکربندی. mihomo فایل
config.yamlرا میخواند؛ فایلی که سرورها، گروههای پراکسی، قوانین و تنظیمات DNS در آن تعریف شدهاند. این قالب با Clash کلاسیک سازگار است و آن را گسترش میدهد. - دریافت و انتقال ترافیک. هسته پورتهای محلی (HTTP، SOCKS یا پورت ترکیبی) را باز میکند و اتصالهای ورودی را با پروتکل موردنظر به بیرون میفرستد.
- مسیریابی بر اساس قوانین. هر درخواست با فهرست قوانین مقایسه میشود: این دامنه از پراکسی، آن یکی مستقیم و دیگری مسدود.
- مدیریت DNS. ماژول DNS داخلی با دو حالت fake-ip و redir-host از نشت درخواستها جلوگیری میکند و پاسخدهی را سریعتر میکند.
چرا mihomo رابط گرافیکی ندارد
mihomo یک برنامه خط فرمان است. پس از اجرا بیسروصدا در پسزمینه کار میکند و لاگ مینویسد؛ کل کنترل آن از طریق پارامترهای خط فرمان و فایل پیکربندی انجام میشود. این یک تصمیم معمارانه آگاهانه است: هسته بهعنوان موتوری طراحی شده که قرار است داخل برنامههای دیگر جاسازی شود. همان کد روی لپتاپ ویندوزی، روی یک سرور لینوکسی و درون یک اپلیکیشن اندرویدی اجرا میشود. کد منبع پروژه در مخزن MetaCubeX/mihomo در دسترس است.
کلاینتهای گرافیکی چگونه از هسته استفاده میکنند
کلاینت گرافیکی پوستهای است که هسته را اجرا میکند، پیکربندی را از روی اشتراک شما میسازد و وضعیت را به شکل قابلفهم نشان میدهد. کلاینتهای اصلی هسته را از پیش درون خود دارند:
| کلاینت | پلتفرمها | هسته |
|---|---|---|
| Clash Verge Rev | Windows، macOS، Linux | mihomo داخلی |
| FlClash | Android، Windows، macOS، Linux | mihomo داخلی |
| Clash Meta for Android | Android | mihomo داخلی |
وقتی در رابط برنامه سرور را عوض میکنید یا پراکسی سیستمی را روشن میکنید، کلاینت در عمل پیکربندی هسته را تغییر میدهد یا با رابط کنترلی آن گفتوگو میکند. تفاوت این پوستهها با یکدیگر را در مقایسه کلاینتهای محبوب بررسی کردهایم.
کاربر عادی چه چیزی باید دانلود کند
پاسخ کوتاه: فقط یک کلاینت گرافیکی از مرکز دانلود. نصب جداگانه هسته mihomo تنها در موقعیتهای خاص منطقی است: روی سروری بدون محیط دسکتاپ، داخل یک کانتینر، یا وقتی میخواهید پیکربندی را دستی بنویسید و اشکالزدایی کنید. اگر مطمئن نیستید کدام فایل به سیستم و پردازنده شما میخورد، راهنمای انتخاب نسخه کار را ساده میکند.
نکته: نسخه هسته داخلی معمولاً در تنظیمات کلاینت نمایش داده میشود؛ هنگام درخواست کمک از دیگران، آن را همراه نسخه خود کلاینت ذکر کنید.
پرسشهای پرتکرار
mihomo و Clash یک چیز هستند؟
کاملاً نه. Clash پروژه اصلی بود که توسعهاش در سال 2023 متوقف شد. mihomo جانشین فعال آن است که از انشعاب Clash.Meta رشد کرد. چون قالب پیکربندی سازگار است، در گفتوگوهای روزمره این نامها را بهجای هم به کار میبرند، اما پروژهای که امروز نگهداری میشود mihomo است.
اگر Clash Verge Rev نصب کردهام، باید هسته را جدا نصب کنم؟
خیر. کلاینت نسخهای از mihomo را همراه خود دارد و آن را در انتشارهای بعدی بهروز میکند. هسته جداگانه فقط زمانی لازم است که بخواهید بدون کلاینت و از خط فرمان کار کنید.
آیا اشتراک Clash من با mihomo کار میکند؟
در اکثر قریببهاتفاق موارد بله. mihomo پیکربندیهای Clash کلاسیک را میفهمد و سرویسدهندهها هم سالهاست اشتراکهایشان را بر همین قالب ارائه میکنند.