عن المشروع

قائمة النطاقات المجتمعية هي مشروع مُدار من المجتمع يحتفظ بقائمة منسقة من النطاقات لاستخدامها كمواقع جغرافية (geosites) في توجيه Project V (V2Ray). المشروع صريح في كونه غير حكمي، أي أنه لا يؤيد أو يوحي بأن أي نطاق يجب حظره أو تمريره عبر وكيل؛ بدلاً من ذلك، يوفر البنية التحتية للبيانات للمستخدمين لتوليد قواعد التوجيه عند الحاجة. ينتج المشروع عدة ملفات قابلة للتنزيل، بما في ذلك dlc.dat (ملف المواقع الجغرافية المُجمّع)، وdlc.dat_plain.yml (نسخة YAML نصية)، ومجاميع SHA256 المقابلة لها. يمكن استخدام هذه الملفات مباشرة في تكوينات V2Ray أو برامج أخرى متوافقة مع Project V. يحتوي دليل البيانات على ملفات فردية، يمثل كل منها قائمة فرعية من النطاقات مُسمّاة باسم الملف. يدعم تنسيق الملف أنواع قواعد متعددة: domain (مطابقة النطاقات الفرعية)، full (مطابقة النطاق الدقيقة)، keyword (مطابقة السلاسل الفرعية)، وregexp (مطابقة التعبيرات النمطية). يمكن أن تحتوي كل قاعدة على سمات (مسبوقة بـ @) للتجميع الفرعي والتصفية، وانتماءات (مسبوقة بـ &) لإدارة البيانات عبر القوائم. تسمح توجيهات include بالإدراج الانتقائي للقواعد من قوائم أخرى، مع تصفية قائمة على السمات. تقرأ عملية البناء جميع الملفات في دليل البيانات، وتحل الانتماءات والإدراجات إلى قواعد نطاقات فعلية، وتزيل التكرار وترتب القواعد، وتصدر القوائم النصية، وتُنشئ ملف dlc.dat النهائي عن طريق تحويل كل نوع قاعدة إلى تنسيق قاعدة توجيه V2Ray المناسب. يوفر المشروع مثالاً للاستخدام يوضح كيفية تكوين قواعد توجيه V2Ray باستخدام مراجع المواقع الجغرافية مثل geosite:category-ads-all وgeosite:cn وgeosite:private وgeosite:category-anticensorship وgeosite:geolocation-!cn. يمكن للمستخدمين أيضًا توليد ملفات dlc.dat مخصصة عن طريق تشغيل أداة البناء المبنية على Go مع مسار بيانات مخصص. تتطلب إرشادات المساهمة عمل fork للمستودع، وإجراء التعديلات، وتقديم طلبات سحب للمراجعة. يختبر سكربت تحقق كل طلب سحب، ولا يتم دمج سوى الطلبات الناجحة. بعد عدة مساهمات ناجحة، يمكن للمساهمين التقدم للحصول على صلاحيات الإدارة. تشمل التغييرات البارزة إزالة قواعد السمة @!cn من قوائم cn، وإهمال قوائم الإعلانات غير المصنفة المخصصة لصالح التصفية القائمة على السمات (مثل geosite:xxx@ads بدلاً من geosite:xxx-ads).