يستخدم Outline إعدادات مستنِدة إلى YAML لتحديد مَعلمات شبكة VPN والتعامل مع زيارات TCP أو UDP. ويمكن استخدام هذه الإعدادات مع إعدادات أخرى على عدة مستويات، ما يتيح عمليات إعداد مرنة وقابلة للتوسيع.
ويُحدِّد الإعداد من المستوى الأعلى إعدادات TunnelConfig.
أمثلة
ستظهر إعدادات Shadowsocks بالشكل التالي:
transport:
$type: tcpudp
tcp:
$type: shadowsocks
endpoint: ss.example.com:80
cipher: chacha20-ietf-poly1305
secret: SECRET
prefix: "POST " # HTTP request
udp:
$type: shadowsocks
endpoint: ss.example.com:53
cipher: chacha20-ietf-poly1305
secret: SECRET
prefix: "\u0097\u00a7\u0001\u0000\u0000\u0001\u0000\u0000\u0000\u0000\u0000\u0000" # DNS query
يمكنك ملاحظة كيف يمكننا حاليًا تشغيل TCP وUDP على منافذ أو نقاط نهاية مختلفة ببادئات مختلفة.
يمكنك استخدام علامات ارتساء YAML ومفتاح دمج <<
لتجنُّب التكرار كالتالي:
transport:
$type: tcpudp
tcp:
<<: &shared
$type: shadowsocks
endpoint: ss.example.com:4321
cipher: chacha20-ietf-poly1305
secret: SECRET
prefix: "POST "
udp: *shared
يمكن حاليًا إنشاء استراتيجيات وتطبيق تقنية الاتصال بعدة خوادم كالتالي:
transport:
$type: tcpudp
tcp:
$type: shadowsocks
endpoint:
$type: dial
address: exit.example.com:4321
dialer:
$type: shadowsocks
address: entry.example.com:4321
cipher: chacha20-ietf-poly1305
secret: ENTRY_SECRET
cipher: chacha20-ietf-poly1305
secret: EXIT_SECRET
udp: *shared
في حال حظر بروتوكولات "التمويه" مثل بروتوكول Shadowsocks، يمكنك استخدام إعدادات Shadowsocks-over-Websocket. ويمكنك الاطّلاع على مثال على إعدادات الخادم لمعرفة كيفية نشره. وستظهر الإعدادات المرتبطة بالعميل كالتالي:
transport:
$type: tcpudp
tcp:
$type: shadowsocks
endpoint:
$type: websocket
url: wss://legendary-faster-packs-und.trycloudflare.com/SECRET_PATH/tcp
cipher: chacha20-ietf-poly1305
secret: SS_SECRET
udp:
$type: shadowsocks
endpoint:
$type: websocket
url: wss://legendary-faster-packs-und.trycloudflare.com/SECRET_PATH/udp
cipher: chacha20-ietf-poly1305
secret: SS_SECRET
يُرجى العِلم بأنّه يمكن استخدام نقطة نهاية Websocket والاستفادة منها في تفادي الحظر استنادًا إلى نظام أسماء النطاقات كالتالي:
transport:
$type: tcpudp
tcp:
$type: shadowsocks
endpoint:
$type: websocket
url: wss://legendary-faster-packs-und.trycloudflare.com/SECRET_PATH/tcp
endpoint: cloudflare.net:443
cipher: chacha20-ietf-poly1305
secret: SS_SECRET
udp:
$type: shadowsocks
endpoint:
$type: websocket
url: wss://legendary-faster-packs-und.trycloudflare.com/SECRET_PATH/udp
endpoint: cloudflare.net:443
cipher: chacha20-ietf-poly1305
secret: SS_SECRET
للتأكّد من التوافق مع مختلف إصدارات "عميل Outline"، يُرجى استخدام
خيار first-supported
في الإعدادات. وتكمُن أهمية هذا الإجراء
عند إضافة استراتيجيات وميزات جديدة إلى Outline؛ لأنّه قد لا يكون كل المستخدمين
حدَّثوا تطبيق "عميل Outline" إلى أحدث إصدار. ومن خلال استخدام first-supported
، يمكنك
توفير إعداد واحد يعمل بسلاسة على كل المنصات
وإصدارات "عميل Outline" مع ضمان التوافق مع الأنظمة القديمة وتوفير تجربة متّسقة
للمستخدم.
transport:
$type: tcpudp
tcp:
$type: shadowsocks
endpoint:
$type: first-supported
options:
- $type: websocket
url: wss://legendary-faster-packs-und.trycloudflare.com/SECRET_PATH/tcp
- ss.example.com:4321
cipher: chacha20-ietf-poly1305
secret: SS_SECRET
udp:
$type: shadowsocks
endpoint:
$type: first-supported
options:
- $type: websocket
url: wss://legendary-faster-packs-und.trycloudflare.com/SECRET_PATH/udp
- ss.example.com:4321
cipher: chacha20-ietf-poly1305
secret: SS_SECRET