قاعدة HTTP
هناك 4 أنواع من القواعد على مستوى HTTP. تتطلب USER-AGENT و URL-REGEX ترويسة طلب HTTP، لذا فهي لا تطابق إلا طلبات HTTP (أو طلبات HTTPS مع فك تشفير MitM). أما PROTOCOL فلا يطابق إلا جلسات الوارد عبر TUN، حيث يعمل استكشاف البروتوكول. و SCRIPT يتم تقييمه لأي اتصال.
USER-AGENT
USER-AGENT,Instagram*,DIRECT
تطابق القاعدة إذا تطابق user agent للطلب. العلامات النجمية * و ? مدعومة.
URL-REGEX
URL-REGEX,^http://google\.com.*,DIRECT
تطابق القاعدة إذا تطابق الرابط مع التعبير النمطي. يجب أن يطابق التعبير النمطي الرابط الكامل، وليس جزءاً منه فقط: فـ ^http://google\.com وحده لن يطابق إلا http://google.com بالضبط.
PROTOCOL
PROTOCOL,TLS,Proxy
تطابق القاعدة إذا تطابق البروتوكول المكتشف للاتصال. استخدم مع sniffing-enabled للحصول على أفضل النتائج. يُقبل NETWORK كاسم بديل لـ PROTOCOL.
قيم البروتوكول المقبولة: HTTP, HTTPS, TLS, TCP, UDP, QUIC, STUN, DNS, DOH, DOQ.
ملاحظة: لا يُملأ البروتوكول المكتشف إلا لجلسات الوارد عبر TUN: ينتج الاستكشاف
HTTPوTLS(أي اتصال TLS، بما في ذلك HTTPS) لـ TCP، وQUICلـ UDP. أما الاتصالات الواردة عبر بروكسي HTTP أو SOCKS5 فلا تطابق قواعد PROTOCOL أبداً. القيم المقبولة الأخرى محجوزة — لا يوجد كاشف ينتجها بعد، لذا لن تطابق القواعد التي تستخدمها. على وجه الخصوص، استخدمPROTOCOL,TLSبدلاً منPROTOCOL,HTTPSلمطابقة حركة HTTPS.
SCRIPT
SCRIPT,MyRuleScript,DIRECT
تقييم القاعدة لسكريبت JavaScript لمنطق مطابقة مخصص. يجب أن يتطابق اسم السكريبت مع سكريبت معرف في القسم [Script] بـ type=rule.
[Rule]
SCRIPT,CheckInternal,PROXY
[Script]
CheckInternal = type=rule, script-path=internal-check.js
يستقبل سكريبت القاعدة $request ويجب أن يستدعي $done({matched: true}) أو $done({matched: false}). لاحظ أن $request.dnsResult يتوفر فقط عندما تكون الجلسة قد حُلّت بالفعل (على سبيل المثال، الطلبات الموجهة مباشرة إلى عنوان IP، أو مرحلة المطابقة الثانية بعد تحليل DNS).
هذه الصفحة ترجمة للنسخة الإنجليزية. في حال وجود اختلاف، يُعتمد على النسخة الإنجليزية.
ملاحظة: التطبيق لا يدعم اللغة العربية حاليًا.