mihomo — چینش پیکربندی
mihomo در زمان راهاندازی یک سند YAML واحد را میخواند. سند ریشه به ساختار Go با نام RawConfig در config/config.go:392 نگاشته میشود. برخلاف Xray و sing-box، هیچ بلوک سطح-بالای log وجود ندارد — بیشتر سوییچهای عملیاتی، کلیدهای صاف در ریشهٔ سند هستند، با تعداد اندکی بلوک تو در تو برای حوزههای ویژگی (dns, tun, profile, …).
کلیدهای صاف سطح بالا
اینها فیلدهای اسکالر در ریشهٔ سند هستند.
| کلید | فیلد Go | نوع | صفحه | توضیح |
|---|---|---|---|---|
port | Port | int | مبانی | پورت پراکسی HTTP. |
socks-port | SocksPort | int | مبانی | پورت پراکسی SOCKS. |
redir-port | RedirPort | int | مبانی | پورت ورودی Linux REDIRECT. |
tproxy-port | TProxyPort | int | مبانی | پورت ورودی Linux TPROXY. |
mixed-port | MixedPort | int | مبانی | پورت مالتیپلکس HTTP + SOCKS. |
ss-config | ShadowSocksConfig | string | فاز ۳ | URI ورودی Shadowsocks. |
vmess-config | VmessConfig | string | فاز ۳ | URI ورودی VMess. |
inbound-tfo | InboundTfo | bool | مبانی | TCP Fast Open برای ورودیها. |
inbound-mptcp | InboundMPTCP | bool | مبانی | Multipath TCP برای ورودیها. |
authentication | Authentication | []string | مبانی | فهرست user:pass برای احراز هویت HTTP/SOCKS. |
skip-auth-prefixes | SkipAuthPrefixes | []netip.Prefix | مبانی | CIDRهای مبدأ که از احراز هویت رد میشوند. |
lan-allowed-ips | LanAllowedIPs | []netip.Prefix | مبانی | فهرست مجاز وقتی allow-lan فعال است. |
lan-disallowed-ips | LanDisAllowedIPs | []netip.Prefix | مبانی | فهرست ممنوع وقتی allow-lan فعال است. |
allow-lan | AllowLan | bool | مبانی | مقیّد کردن شنوندهها به 0.0.0.0/:: به جای localhost. |
bind-address | BindAddress | string | مبانی | بازنویسی آدرس bind (به همراه allow-lan). |
mode | Mode | T.TunnelMode | مبانی | rule / global / direct. |
unified-delay | UnifiedDelay | bool | مبانی | حذف تورّش دستدهی در آزمون URL پراکسی. |
log-level | LogLevel | log.LogLevel | گزارش | debug / info / warning / error / silent. |
ipv6 | IPv6 | bool | مبانی | فعالسازی IPv6 در کل پشته. |
external-controller | ExternalController | string | کنترلر خارجی | آدرس گوش دادن API RESTful. |
external-controller-pipe | ExternalControllerPipe | string | کنترلر خارجی | مسیر named-pipe ویندوز برای API. |
external-controller-unix | ExternalControllerUnix | string | کنترلر خارجی | مسیر سوکت Unix برای API. |
external-controller-tls | ExternalControllerTLS | string | کنترلر خارجی | آدرس گوش دادن TLS. |
external-controller-cors | ExternalControllerCors | RawCors | کنترلر خارجی | فهرست مجاز CORS. |
external-ui | ExternalUI | string | کنترلر خارجی | دایرکتوری دارایی ایستا برای داشبورد. |
external-ui-url | ExternalUIURL | string | کنترلر خارجی | URL دانلود خودکار آرشیو داشبورد. |
external-ui-name | ExternalUIName | string | کنترلر خارجی | زیرشاخه زیر external-ui. |
external-doh-server | ExternalDohServer | string | کنترلر خارجی | نقطه پایانی سرور DoH میزبانیشده توسط mihomo. |
secret | Secret | string | کنترلر خارجی | توکن Bearer برای API. |
interface-name | Interface | string | مبانی | مقیّد کردن رابط خروجی. |
routing-mark | RoutingMark | int | مبانی | Linux SO_MARK برای سوکتهای خروجی. |
tunnels | Tunnels | []LC.Tunnel | فاز ۶ | تونلهای ایستای پورت-به-هدف. |
geo-auto-update | GeoAutoUpdate | bool | دادههای Geo | تازهسازی خودکار داراییهای geoip/geosite. |
geo-update-interval | GeoUpdateInterval | int | دادههای Geo | بازهٔ تازهسازی خودکار (ساعت). |
geodata-mode | GeodataMode | bool | دادههای Geo | استفاده از geoip.dat به جای Country.mmdb. |
geodata-loader | GeodataLoader | string | دادههای Geo | انتخاب لودر (memconservative در برابر standard). |
geosite-matcher | GeositeMatcher | string | دادههای Geo | پیادهسازی تطبیقدهنده. |
tcp-concurrent | TCPConcurrent | bool | مبانی | مسابقهٔ شمارهگیری A/AAAA. |
find-process-mode | FindProcessMode | process.FindProcessMode | مبانی | strict / always / off. |
global-client-fingerprint | GlobalClientFingerprint | string | مبانی | اثرانگشت پیشفرض uTLS برای خروجیها. |
global-ua | GlobalUA | string | مبانی | پیشفرض User-Agent در HTTP. |
etag-support | ETagSupport | bool | مبانی | احترام به ETag هنگام واکشی اشتراکها. |
keep-alive-idle | KeepAliveIdle | int | مبانی | زمان بیکاری keepalive در TCP (ثانیه). |
keep-alive-interval | KeepAliveInterval | int | مبانی | بازهٔ keepalive در TCP (ثانیه). |
disable-keep-alive | DisableKeepAlive | bool | مبانی | غیرفعالسازی keepalive در TCP. |
بلوکها و فهرستهای تو در تو
| کلید | فیلد Go | نوع | صفحه | توضیح |
|---|---|---|---|---|
proxy-providers | ProxyProvider | map[string]map[string]any | فاز ۶ | فهرست پراکسیهای راه دور. |
rule-providers | RuleProvider | map[string]map[string]any | فاز ۵ | مجموعه قواعد راه دور. |
proxies | Proxy | []map[string]any | فاز ۳ | تعریف پراکسیهای خروجی. |
proxy-groups | ProxyGroup | []map[string]any | فاز ۵ | انتخابگرهای گروه / آزمون URL / جایگزین / توازن بار / بازپخش. |
rules | Rule | []string | فاز ۵ | قواعد مسیریابی (شکل رشتهٔ فشرده). |
sub-rules | SubRules | map[string][]string | فاز ۵ | گروههای نامگذاریشدهٔ زیرقواعد. |
listeners | Listeners | []map[string]any | فاز ۳ | شنوندههای ورودی با شکل آزاد. |
hosts | Hosts | map[string]any | فاز ۵ | بازنویسیهای ایستای DNS. |
dns | DNS | RawDNS | فاز ۵ | بلوک زیرسیستم DNS. |
ntp | NTP | RawNTP | NTP | کلاینت تعبیهشدهٔ NTP. |
tun | Tun | RawTun | فاز ۶ | ورودی TUN. |
tuic-server | TuicServer | RawTuicServer | فاز ۳ | ورودی TUIC. |
iptables | IPTables | RawIPTables | iptables | پیکربندی خودکار iptables در لینوکس. |
experimental | Experimental | RawExperimental | آزمایشی | اثرانگشتها، تنظیم QUIC، تبدیل IPv4-در-IPv6. |
profile | Profile | RawProfile | نمایه | وضعیت ذخیرهشده (پراکسی انتخابشده، حافظهٔ fake-ip). |
geox-url | GeoXUrl | RawGeoXUrl | دادههای Geo | URLهای دانلود برای چهار فایل دارایی Geo. |
sniffer | Sniffer | RawSniffer | اسنیفر | اسنیف اتصال (SNI در TLS، Host در HTTP، QUIC). |
tls | TLS | RawTLS | TLS | مواد پیشفرض TLS برای ورودیها. |
clash-for-android | ClashForAndroid | RawClashForAndroid | Clash for Android | تنظیمات اختصاصی اپلیکیشن اندروید. |
یک نگاه
yaml
mode: rule
mixed-port: 7890
allow-lan: false
log-level: info
external-controller: 127.0.0.1:9090
dns:
enable: true
nameserver:
- https://1.1.1.1/dns-query
proxies: []
proxy-groups: []
rules: []منبع: config/config.go:392-459 · v1.19.24 (a847246)
