ورودیها
inbounds آرایهٔ سرویسهای شنونده است. هر مدخل یک InboundDetourConfig است: نام پروتکل، محل شنود، شیء settings مخصوص پروتکل، و بلوکهای اختیاری ترابرد (streamSettings) و تشخیص ترافیک (sniffing). بار settings بهصورت JSON خام نگه داشته میشود و هندلری که protocol انتخاب میکند آن را رمزگشایی میکند.
گزینهها
| فیلد | نوع | پیشفرض | مقادیر مجاز | توضیحات |
|---|---|---|---|---|
protocol | string | — | dokodemo-door | tunnel | http | socks | mixed | shadowsocks | vless | vmess | trojan | wireguard | hysteria | tun | کدام هندلر ورودی اجرا شود. نام پیش از جستجو در رجیستری به حروف کوچک تبدیل میشود، پس تطبیق به بزرگی/کوچکی حروف حساس نیست. `tunnel` نام دیگر `dokodemo-door` است و `mixed` از هندلر SOCKS استفاده میکند (HTTP + SOCKS روی یک پورت). |
port | *PortList | — | <int> | "<from>-<to>" | "port,port,..." | پورت(های) شنود: یک عدد صحیح، رشتهٔ بازه، یا فهرست جداشده با ویرگول از هر دو. برای پروتکلهای مبتنی بر سوکت الزامی است؛ `tun` آن را نادیده میگیرد و بهجایش از یک رابط شبکه میخواند. |
listen | *Address | 0.0.0.0 | — | آدرس اتصال. بهطور پیشفرض به همهٔ رابطها متصل میشود؛ برای ورودی صرفاً محلی 127.0.0.1 بگذارید. |
settings | *json.RawMessage | — | — | شیء تنظیمات مخصوص پروتکل که هندلر انتخابشده توسط protocol آن را رمزگشایی میکند. شکل هر پروتکل را در صفحهٔ همان پروتکل ببینید. |
tag | string | — | — | نام یکتای این ورودی. قواعد مسیریابی (inboundTag) به آن ارجاع میدهند و برچسب شمارندههای آمار است. |
streamSettings | *StreamConfig | — | — | ترابرد و امنیت شنونده (raw / ws / grpc / xhttp…، tls / reality). صفحات ترابرد و TLS را ببینید. |
sniffing | *SniffingConfig | — | — | تشخیص نوع ترافیک روی اتصالهای پذیرفتهشده. فیلدها در جدول زیر. |
منبع: infra/conf/xray.go:126-134 · ثابتشده در v26.7.28 (5ca6f4b)
اسنیف (sniffing)
| فیلد | نوع | پیشفرض | مقادیر مجاز | توضیحات |
|---|---|---|---|---|
enabled | bool | false | true | false | اسنیف را برای این ورودی روشن میکند. |
destOverride | StringList | — | "http" | "tls" | "quic" | "fakedns" | "fakedns+others" | فهرست پروتکلهایی که مقصد اسنیفشده جایگزین آدرس مقصد اصلی میشود. `https` و `ssl` بهعنوان نام دیگر `tls` پذیرفته میشوند. |
domainsExcluded | StringList | — | — | دامنههایی که حتی با تطبیق اسنیف، مقصد اصلی خود را نگه میدارند. |
ipsExcluded | StringList | — | — | IP / CIDR مقصدهایی که از بازنویسی مقصد مستثنا هستند. |
metadataOnly | bool | false | true | false | فقط از فرادادهٔ اتصال برای تشخیص استفاده شود؛ بایتهای بار بازرسی نشوند. |
routeOnly | bool | false | true | false | دامنهٔ اسنیفشده فقط برای تصمیم مسیریابی به کار رود، بدون بازنویسی مقصد. |
منبع: infra/conf/xray.go:55-62 · ثابتشده در v26.7.28 (5ca6f4b)
مثال حداقلی
json
{
"inbounds": [
{
"tag": "socks-in",
"protocol": "socks",
"listen": "127.0.0.1",
"port": 1080,
"settings": { "udp": true },
"sniffing": {
"enabled": true,
"destOverride": ["http", "tls"]
}
}
]
}نکات
protocolناشناخته در هنگام راهاندازی خطایunknown config idمیدهد؛ جدول جستجو یک رجیستری ثابت است، نه سامانهٔ افزونه.tagباید در میان همهٔ ورودیها یکتا باشد — قواعد مسیریابی و زیرسامانهٔ آمار، ورودیها را با tag آدرسدهی میکنند.tunتنها ورودیای است کهportنمیخواهد: بستهها را از یک رابط شبکه میگیرد. TUN را ببینید.- اسنیف مقصد را پیش از اجرای مسیریابی بازنویسی میکند؛ همین است که میگذارد قواعد دامنه اتصالهایی را که با IP رسیدهاند تطبیق دهند.
routeOnlyاثر را به مسیریابی محدود میکند.
نکات بینهستهای
- sing-box همین مفهوم را با یک شیء تخت در هر مدخل مدل میکند —
type+tag+ فیلدهای مخصوص نوع در یک سطح، بهجای بلوک تو در تویsettings. ورودیهای sing-box را ببینید. - mihomo در سطح ریشه آرایهٔ
inboundsندارد: شنوندههای رایج کلیدهای ریشهٔ جداگانهاند (port،socks-port،mixed-port، …) به همراه فهرستlistenersبرای مدخلهای اضافی. HTTP و SOCKS و Redirect و TProxy را ببینید.
منبع: infra/conf/xray.go:126-134 · v26.7.28 (5ca6f4b)
