تنظیمات Core
از آن جایی که پنل مرزبان بر پایه هسته Xray
هست، در این داکیومنت سعی میکنیم موارد کاربردی Xray
را که میتوانید در قسمت Core Settings
پنل مورد استفاده قرار بدید را توضیح بدیم تا با بخشهای کاربردی آن آشنایی داشته باشید.
DNS
- برای تعیین
DNS
در قسمتCore Settings
مرزبان کافیه قسمت زیر را در ابتدای آن قرار دهید.
{
"log": {
"loglevel": "info"
},
"dns": {
"servers": [
"1.1.1.1"
],
"queryStrategy": "UseIPv4"
},
"inbounds": [
- در نمونه بالا ما از
DNS
کلودفلر استفاده کردیم، انواعDNS
های مختلف و کاربرد آنها به شرح زیر است.
انواع DNS | سرویس دهنده | کاربرد |
---|---|---|
1.1.1.1 | Cloudflare | سرعت، حریم خصوصی، و امنیت |
1.1.1.3 | Cloudflare | مسدود کردن محتوای بزرگسالان و مناسب برای استفاده خانوادگی |
1.1.1.2 | Cloudflare | مسدود کردن بدافزارها |
1.0.0.2 | Cloudflare | مسدود کردن بدافزارها و محتوای بزرگسالان |
8.8.8.8 | Google | قابل اطمینان به علت خدمات جهانی گسترده گوگل |
8.8.4.4 | Google | پشتیبان DNS اول گوگل |
9.9.9.9 | Quad9 | متمرکز بر امنیت و مسدود کردن دسترسی به دامنههای مخرب |
208.67.222.222 | OpenDNS | حفاظت در برابر فیشینگ، و تنظیمات قابل شخصیسازی |
208.67.222.123 | OpenDNS | مسدود کردن محتوای بزرگسالان و مناسب برای استفاده خانوادگی |
Inbounds
بخش Inbounds
در هسته Xray
مشخص میکند که سرویس پروکسی چگونه اتصالات ورودی را دریافت کند. هر Inbound
یک شنونده (listener) را تعریف میکند که اتصالات را روی پورت مشخصی دریافت کرده و پروتکلها یا قوانین خاصی را برای مدیریت آنها به کار میبرد.
اینباندهایی که در Core Settings
قرار میدهیم پروکسیهای مارو در پنل مرزبان تعیین میکنند و کانکشنهای ورودی ما مربوط به همین بخش است که لیست اینباندهای کاربردی در این داکیومنت اینباندهای Xray قرار داده شدهاند.
- در ادامه بخشهای مختلف یک اینباند را با هم بررسی میکنیم.
VLESS TCP REALITY
{
"tag": "VLESS TCP REALITY",
"listen": "0.0.0.0",
"port": 443,
"protocol": "vless",
"settings": {
"clients": [],
"decryption": "none"
},
"streamSettings": {
"network": "tcp",
"tcpSettings": {},
"security": "reality",
"realitySettings": {
"show": false,
"dest": "google.com:443",
"xver": 0,
"serverNames": [
"example.com",
""
],
"privateKey": "oNDJxLaAiXojgAcdW5gzwuQB_gMYL0DXfRnqswUKvTE",
"publicKey": "oVRY8h7Njgw25j3CNhaJVMUys378tTvecrSRbrB3gyo"
"shortIds": [
"2ebd6e17dec6a5d9"
]
}
},
"sniffing": {
"enabled": true,
"destOverride": [
"http",
"tls",
"quic"
]
}
}
tag
"tag": "VLESS TCP REALITY"
برچسب (Tag) برای شناسایی این اینباند خاص استفاده میشود. این برچسب به شما کمک میکند تا در پیکربندیهای پیچیده و در مواقعی که چندین اینباند مختلف دارید، راحتتر آنها را شناسایی کنید.
listen
"listen": "0.0.0.0"
آدرس IP که Xray-Core
باید به آن گوش دهد. 0.0.0.0
به معنای این است که Xray-Core
به تمامی آدرسهای IP موجود بر روی سرور گوش میدهد.
port
"port": 443
پورت شبکهای که Xray-Core
باید بر روی آن گوش دهد. پورت 443
به طور معمول برای ترافیک HTTPS
استفاده میشود و در اینجا به عنوان ورودی برای پروتکل VLESS
تنظیم شده است.
protocol
"protocol": "vless"
پروتکل مورد استفاده برای اینباند در اینجا، پروتکل vless
است که یکی از پروتکلهای مدرن و امن برای انتقال دادهها است.
settings
"settings": {
"clients": [],
"decryption": "none"
}
این بخش تنظیمات خاص پروتکل vless
هست.
قسمت
clients
لیستی از کاربران مجاز برای اتصالقسمت
decryption
روش رمزگشایی
streamSettings
"streamSettings": {
"network": "tcp",
"tcpSettings": {},
"security": "reality",
"realitySettings": {
"show": false,
"dest": "google.com:443",
"xver": 0,
"serverNames": [
"example.com",
""
],
"privateKey": "oNDJxLaAiXojgAcdW5gzwuQB_gMYL0DXfRnqswUKvTE",
"publicKey": "oVRY8h7Njgw25j3CNhaJVMUys378tTvecrSRbrB3gyo",
"shortIds": [
"2ebd6e17dec6a5d9"
]
}
}
تنظیمات مربوط به استریم و پروتکلهای شبکه
بخش
network
نوع شبکهای که برای انتقال دادهها استفاده میشود. در اینجاtcp
انتخاب شده است.بخش
tcpSettings
تنظیمات خاصTCP
در اینجا خالی است که به معنای استفاده از تنظیمات پیشفرض است.بخش
security
نوع امنیتی که برای این اتصال استفاده میشود کهReality
به معنای استفاده از تکنولوژیReality
برای افزایش امنیت است.بخش
realitySettings
تنظیمات خاص برای تکنولوژیReality
است.بخش
show
مشخص میکند که آیا اطلاعات مربوط به این اتصال باید نمایش داده شود یا خیرfalse
به معنای عدم نمایش است.بخش
dest
مقصد نهایی که برای شبیهسازی یا پنهانسازی استفاده میشود که در اینجاgoogle.com:443
تنظیم شده است.بخش
xver
نسخه پروتکل که 0 به معنای نسخه ابتدایی است.بخش
serverNames
لیستی از نامهای سرور که باید دامنه مورد نطرتون قرار داده شودبخش
privateKey
کلید خصوصی برای رمزنگاری و تأمین امنیت که یک کلید طولانی و تصادفی است.بخش
publicKey
کلید عمومی برای رمزنگاری اطلاعات استفاده میشود که این کلید به صورت عمومی در دسترس است و میتواند برای رمزنگاری دادهها استفاده شود.بخش
shortIds
شناسههای کوتاه برای شناسایی منحصر به فرد که شامل یک شناسه تصادفی است.در خصوص بخش
publickey
در نظر داشته باشین که بودن آن در اینباند لازم نیست و فقط با گذاشتنprivatekey
مرزبان خودشpublickey
را در پروکسی شما ایجاد خواهد کرد و صرفا برای توضیح بخشهای مختلف این اینباند آن را قرار دادیم.
sniffing
"sniffing": {
"enabled": true,
"destOverride": [
"http",
"tls",
"quic"
]
}
تنظیمات مربوط به شناسایی ترافیک (sniffing)
بخش
enabled
فعال یا غیرفعال بودن شناسایی ترافیکtrue
به معنای فعال بودن است.بخش
destOverride
پروتکلهایی که در شناسایی ترافیک نادیده گرفته میشوند شاملhttp
،tls
،quic
.در بخش
destOverride
نادیده گرفتن پروتکلها به این معناست کهXray-Core
به جای تحلیل عمیق و شبیهسازی ترافیک این پروتکلها، مستقیماً آنها را پردازش میکند. این عمل میتواند به بهبود کارایی و سادگی در مدیریت ترافیک کمک کند و در عین حال نیاز به پردازش پیچیدهتر برای برخی پروتکلها را کاهش دهد تا منبع سیستم کمتر مصرف شود.
Outbounds
بخشهای Outbounds
و Routing
بهطور نزدیک به هم متصل هستند تا نحوه مدیریت و هدایت ترافیک را تعریف کنند. بخش Routing
با استفاده از Rules
یا همان قوانین، تعیین میکند که انواع مختلف ترافیک چگونه باید مدیریت شود، در حالی که بخش Outbounds
مقصدها یا پروکسیهای واقعی که ترافیک به آنها هدایت میشود را مشخص میکند.
این رویکرد یکپارچه به شما امکان مدیریت ترافیک بهصورت انعطافپذیر و پویا را میدهد و کنترل دقیق بر نحوه و محل هدایت ترافیک را فراهم میآورد. بخش Outbounds
مقاصد یا پروکسیهای موجود را تعریف میکند که شامل جزئیات پروتکل و پیکربندی آنها است، هر Outbound
با یک برچسب منحصر به فرد شناسایی میشود.
freedom
پروتکل freedom
یا همان پروتکل آزادی برای دور زدن سانسور یا محدودیتهای مسیریابی در محیطهای شبکه خاص طراحی شده است، ابزار مفیدی در Xray-core است که با اجازه دادن به جریان آزاد ترافیک بدون مداخله لایههای میانی شبکه به اطمینان از دسترسی بدون محدودیت به اینترنت کمک میکند.
{
"protocol": "freedom",
"settings": {},
"tag": "DIRECT"
},
blackhole
پروتکل blackhole
در واقع بهعنوان یک "سیاهچاله" برای پکتها عمل میکند که بهطور مؤثر ترافیک را بدون پردازش یا پاسخ حذف میکند، که میتوانید برای مقاصد خاص از آن استفاده کنید.
{
"protocol": "blackhole",
"settings": {},
"tag": "BLOCK"
},
IPv4
به عنوان مثال با قرار دادن Outbound
زیر میتوانید استفاده از IPv4
را در اولیت قرار بدین تا از ارور 403
در پلتفرمهای مختلف جلوگیری کنید. احتمالا پروتکل freedom
از قبل در اوتباند شما قرار دارد، در این صورت فقط قسمت settings
را به آن اضافه کنید.
"outbounds": [
{
"protocol": "freedom",
"settings": {
"domainStrategy": "ForceIPv4"
},
"tag": "direct"
},
Routing & Rules
همان طور که قبلا گفته شد، در هسته Xray
، بخش Routing
یا همان مسیریابی و قوانین شامل تنظیمات مختلفی است که تعیین میکند چگونه ترافیک ورودی باید مدیریت شود و به کدام مقصد ارسال شود.
- اگر به نمونه زیر دقت کنید، با استفاده از
Routing
دامنههای دلخواه را به اوتباند با تگBLOCK
فرستادیم که این اوتباند پروتکلblackhole
داره و در نهایت درخواستها به این سایتها به مقصد نخواهند رسید.
{
"domain": [
"www.speedtest.net",
"fast.com"
],
"outboundTag": "BLOCK",
"type": "field"
},