nftlb سجل التغيير
nftlb 1.1.0 (15 يناير 2025) #
https://github.com/relianoid/nftlb/releases/tag/v1.1.0
- السماح لعدة مزارع بنفس المساعدين
- إصلاح الاختبارات
- تجاهل التقارير
- إعادة تسمية zcutils إلى utils
– الخادم: تمكين واجهة الحلقة الراجعة فقط بشكل افتراضي
nftlb 1.0.9 (13 سبتمبر 2023) #
https://github.com/relianoid/nftlb/releases/tag/v1.0.9
- حماية مفتاح مصادقة الديمون ضد هجوم التوقيت
- إصلاح التطبيق الشامل لسياسات المزرعة باستخدام PATCH
nftlb 0.6 (31 مارس 2020) #
https://github.com/relianoid/nftlb/releases/tag/v0.6
– المزارع: تعطيل حذف الجلسات الثابتة بعد إغلاق المزرعة
– الجلسات: حذف الجلسات الثابتة عند تعديل بنية الثبات
– المزارع: إصلاح حد المزرعة وإعادة تحميل الكائنات
– الواجهات الخلفية: إصلاح أولوية الواجهة الخلفية المنخفضة باستخدام كائنات ذات حالة
– nft: إصلاح حذف عناصر الفلتر عندما لا تكون هناك حاجة إليها
– الخادم: إصلاح خطأ الإشارة أثناء الطلب السيئ
– الخادم: لم يتم العثور على الإرجاع أثناء الحصول على مزرعة غير موجودة
– السياسات: استرجاع المزارع المستخدمة في عداد json dump
– الجلسات: إصلاح علامات الواجهة الخلفية المستخدمة في استمرار الجلسة
– الجلسات: دعم حذف الجلسات المحددة بوقت عبر واجهة برمجة التطبيقات
- الاختبارات: أضف نصًا قبل وبعد كل حالة اختبار
– المزارع: إصلاح إعادة تحميل tcpstrict و nfqueue
– الخادم: توحيد رسائل خطأ API وإضافة تفاصيل الخطأ
– الخادم: إصلاح sigsegv بعد طلب مفتاح URI غير موجود
– المزارع: إصلاح إنشاء قواعد المساعدة
– nft: إصلاح إعادة تحميل الخريطة الأمامية استنادًا إلى الواجهات الخلفية
– src: تطبيق الإجراءات السابقة والمستقبلية عند تغيير السمة
– nft: استخدم علامات الخلفية في السلسلة الأمامية
– الخوادم الخلفية: إعادة تحميل المزرعة في حالة تحديث أولوية الخادم الخلفي المعطل
– الواجهات الخلفية: حذف مؤشر المزرعة غير المستخدم في الواجهات الخلفية وتعيين الأولوية
– الواجهات الخلفية: إعادة حساب الواجهات الخلفية المتاحة عند تغيير أولوية الواجهة الخلفية
– src: إزالة رسائل التصحيح غير الضرورية
- السياسات: تعطيل طباعة المعلمات التلقائية وتجنب الأولوية -1
– الواجهات الخلفية: إصلاح إجراء الواجهة الخلفية عندما لا يكون متاحًا
– الاختبارات: تحسين نظام اختبار API وإزالة معلمات DESC القديمة
- التكوين: تجنب طباعة المفتاح غير المعروف على أنه فارغ
– nft: تحسين قواعد الجلسات الثابتة لتجنب الدخول إلى الخريطة الديناميكية
– المزارع: لا تُرجع خطأً عندما لا تحتاج المزرعة إلى التسطير
– الخادم: إصلاح sigsegv عند إرجاع خطأ إنشاء القواعد
– التكوين: تحسين تحليل رسائل الخطأ
– main: تبسيط التحقق من جداول nftlb السابقة
– الرئيسي: اكتشاف وتنظيف أي جداول nftlb سابقة
– nft: تجنب مسح مجموعة قواعد nft بالكامل عند حذف جميع المزارع
– التكوين: تحسين رسائل استجابة واجهة برمجة التطبيقات
– nft: إصلاح قواعد الثبات الديناميكي
– المزارع: إصلاح مصدر الحمض النووي عديم الجنسية MAC لضمان حركة مرور متسقة
– الخادم: تعديل الكود المصدر لدعم IPv6 بشكل كامل
- الجلسات: تقديم دعم الجلسات الثابتة والديناميكية لـ DSR و DNAT عديمة الجنسية
– الواجهات الخلفية: استخدم عنوان مصدر المزرعة عندما يكون متاحًا
– المزارع: تعطيل اكتشاف الشبكة عند تكوين أجهزة الشبكة ذات الحلقة الراجعة
– الاختبارات: إعادة تسمية أدلة اختبارات واجهة برمجة التطبيقات إلى تنسيق يمكن قراءته بواسطة الإنسان
– الاختبارات: إصلاح الاختبارات من أجل فرض عنوان الأثير المحدد
– الواجهات الخلفية: إصلاح "فرض الحالة عند تكوين خطأ التكوين"
– الشبكة: إصلاح اكتشاف عنوان الأثير لـ IPv4 و IPv6
– المزارع: إصلاح مستوى السجل لبعض رسائل التصحيح
– الواجهات الخلفية: فرض الحالة عند تكوين خطأ التكوين
– السياسات: إضافة دعم لسمة _family_ لتقديم سياسات IPv6
- الواجهات الخلفية: تأكد من التحقق من صحة الواجهات الخلفية أثناء إنشاء الخريطة
– العناصر: ابدأ العنصر عند إنشائه
– المزارع: تجنب تكوين حالة config_err
– المزارع: تجنب تعيين الأولوية 0
- السياسات: عدم تخزين العناصر
– nft: إصلاح قواعد الثبات الديناميكي
- الشبكة: تقديم دعم المكدس المزدوج في طبقة الشبكات
– nft: إصلاح إنشاء سلسلة مرشح IPv6
– nft: إضافة خيار لتسلسل أوامر nft
– nft: إصلاح حالات اختبار تفريغ التدفق
– nft: إعادة صياغة قواعد بادئة سجل المزرعة
– الاختبارات: إصلاح مخرجات اختبار تدفق التحميل
- المزارع: تقديم دعم لتفريغ التدفق
– الواجهات الخلفية: حذف المعلمة غير المستخدمة في مفتاح الواجهة الخلفية
– nft: تجنب تسجيل الدخول لكل خدمة افتراضية مرتين
– الجلسات: حذف رسائل التصحيح
– الجلسات: إضافة دعم الجلسة الثابتة والديناميكية
– المزارع: إضافة دعم للخدمات المحلية
– nft: إعادة بناء قاعدة سلسلة التوليد لإضافة دعم السلسلة الأمامية
– الاختبارات: إصلاح ملفات الاختبار
– nft: تبسيط عملية إنشاء أسماء السلسلة والخدمات
– المزارع: تمكين العديد من الواجهات الصادرة لـ dnat عديم الجنسية
– المزارع: لن يتم إصلاح مشكلة عدم القدرة على التحكم في الحمض النووي عديم الجنسية بدون واجهات خلفية
– المزارع: دعم العملاء المباشرين عديمي الجنسية
– المزارع: إصلاح جزء التنكر باستخدام التنكر
– المزارع: إزالة التوليد المزدوج لمؤشر واجهة الشبكة
– الواجهة الخلفية: استخدم واجهة إخراج الواجهة الخلفية كلما أمكن ذلك
- الواجهة الخلفية: دعم واجهة الإخراج لكل واجهة خلفية
– readme: حذف معلمات إدخال الشبكات منخفضة المستوى
– الواجهات الخلفية: إصلاح استدعاء واجهة الإخراج عند تعيين عنوان IP جديد
– المزارع: إصلاح خطأ التجزئة عند تكوين dnat بدون حالة
– الواجهات الخلفية: فرض عنصر واحد إذا تم تحديد الواجهة الخلفية بشكل فريد
– nft: إصلاح تعيين عنوان المصدر في منفذ المزرعة الفردي
– العناصر: إصلاح عناصر التنظيف في السياسات
– المزارع: إصلاح تعيين عنوان المصدر باستخدام خدمات افتراضية متعددة المنافذ
– nft: تجنب sprintf على نفس المخزن المؤقت
– المزارع: إصلاح مشكلة إيقاف المزرعة أثناء حذف الخدمة
- الاختبارات: تسمح بالتوقف في استدعاء API
– الخوادم الخلفية: إصلاح حالة الخوادم الخلفية أثناء إزالة جميع المزارع
– الواجهات الخلفية: تمكين التهيئة المختلطة للمصادر لكل واجهة خلفية
- الاختبارات: إعادة تصميم نظام الاختبار لتحسين الصيانة
- السياسات: إنشاء مجموعات مع الدمج التلقائي بشكل افتراضي
– السياسات: تحميل العناصر إذا لم تكن السياسة فارغة
- السياسات: تحسين حوكمة السياسات
– nft: تجنب علامات الصفر
– الواجهة الخلفية: إصلاح الواجهة الخلفية بالعلامة 0x0
– الواجهات الخلفية: إصلاح إعادة تحميل الواجهات الخلفية باستخدام عنوان المصدر
– المزارع: إصلاح خطأ تحليل الكائن في المستوى -1 مع الحدود
– الخادم: إضافة معلومات سجل طلب العميل
– الرئيسي: استرداد وطباعة إشارات خطأ التجزئة
- الاختبارات: إضافة اختبار API لتغيير المنفذ لكل واجهة خلفية
– الاختبارات: تحسين اختبار واجهة برمجة التطبيقات من خلال عدم إزالة ملفات التقارير عندما تكون غير معروفة
– الواجهات الخلفية: تمكين التنكر وعنوان المصدر القابل للتكوين لكل واجهة خلفية
– المزارع: إصلاح مسطرة الكائنات
- السياسات: إصلاح قواعد إنشاء السياسات وحذفها
- الاختبارات: إضافة اختبارات API للسياسات
– المزارع: إصلاح توقف كل شيء بعد عدم التحكم في كل شيء
– المزارع: إضافة حالة اختبار واجهة برمجة التطبيقات لحذف المزارع
– الواجهات الخلفية: إصلاح توليد الأولوية بعد حذف العقدة
– الاختبارات: إنشاء المزيد من اختبارات API
– المزارع: اجعل المزارع آمنة في حلقة المسطرة
– الواجهات الخلفية: إصلاح توليد الأولوية
– الرئيسي: تنفيذ وضع الديمون
- الاختبارات: تصنيف نظام اختبار API
– nft: إصلاح تجديد جدول التصفية بعد مسح المزارع
– الاختبارات: نظام اختبار جديد خاص بواجهة برمجة التطبيقات
– الخادم: إصلاح حذف القواعد عند حذف الواجهة الخلفية
– الواجهات الخلفية: إصلاح بادئة السجل المحددة للماكرو الافتراضية
– nft: إصلاح علامة طباعة الإخراج في خريطة الواجهة الخلفية
– src: إضافة دعم لبادئة السجل
– الاختبارات: إصلاح مخرجات اختبار NFT باستخدام أحدث التغييرات
– الواجهات الخلفية: إضافة دعم لعنوان المصدر لكل واجهة خلفية
– readme: تحديث خيار rst rtlimit burst
nftlb 0.5 (4 يونيو 2019) #
https://github.com/relianoid/nftlb/releases/tag/v0.5
– المزارع: دعم سياسات الأمان لأوضاع الدخول
– الواجهات الخلفية: دعم تحديد منفذ الواجهة الخلفية
- الواجهات الخلفية: دعم حدود الاتصال لكل واجهة خلفية
– nft: إعادة كتابة العدادات بمجموعات حالة للحدود
– الخادم: دعم Expect 100-Continue في طلبات PUT
- الخادم: إصلاح إدارة طول المحتوى لجمع الطلب
- تحسين محاسبة توفر الواجهة الخلفية
nftlb 0.4 (18 مارس 2019) #
https://github.com/relianoid/nftlb/releases/tag/v0.4
ميزات جديدة
– المزارع: إضافة استمرارية بين العميل والجزء الخلفي أثناء انتهاء المهلة
- السياسات: دعم سياسات الأمان لكل خدمة افتراضية
- المزارع: دعم حزم الانتظار إلى مساحة المستخدم لكل خدمة
– المزارع: دعم التحقق من تدفق TCP لكل خدمة
- المزارع: دعم الحد الأقصى من الاتصالات المنشأة لكل خدمة افتراضية لكل عنوان مصدر
– المزارع: يُسمح بدعم إعادة تعيين TCP في الثانية لكل خدمة افتراضية لكل عنوان مصدر
- المزارع: دعم حد الاتصالات الجديدة في الثانية لكل خدمة افتراضية والاندفاع الاختياري
– المزارع: إضافة معلمات التجزئة القابلة للتكوين
– src: دعم حذف جميع المزارع مرة واحدة
إدخال التحسينات
– nft: إعادة بناء كود إنشاء قواعد المزرعة
– الخادم: إضافة دعم للجسم الطويل
– التكوين: تحليل قيم json وتقويتها
– nft: إصلاح قواعد المساعدين وفقًا للبروتوكول
– readme: تحديث المعلمة الجديدة tcp-strict لتجنب هجمات tcp الزائفة
– المزارع: تمكين اكتشاف نظام التشغيل Mac للـ DNAT عديم الجنسية
– main: إخفاء معلمة المفتاح عند تشغيل العملية لأسباب أمنية
– nft: فصل الخدمات حسب اسم الواجهة لأوضاع الدخول
– المزارع: فرض إعادة تحميل بيانات الشبكة عند تغيير عنوان IP الافتراضي
– المزرعة: قم بتعيين التنكر إذا كان عنوان المصدر فارغًا
– nft: إضافة سلسلة مرشح التوجيه المسبق للعلامات والمساعدين
– المخزن المؤقت: إزالة رسائل التصحيح
– المزرعة: تعيين معلمة الجدولة الافتراضية لخوارزمية التجزئة فقط
– التكوين: استخدم مفاتيح السلسلة قدر الإمكان
– readme: إضافة خيار وضع NAT بدون جنسية
- الاختبارات: تسمح بتشغيل اختبار واحد فقط دون خدمة
– المخزن المؤقت: إصلاح مسافة بادئة الكود
- الواجهات الخلفية: يمكن اتخاذ إجراء فقط إذا كانت الواجهة الخلفية متاحة
- الواجهات الخلفية: إعلان عن الوظائف القابلة للتنفيذ
– المخزن المؤقت: دعم المخزن المؤقت القابل للتطوير
– الخوادم الخلفية: تمكين إعادة تشغيل الخوادم الخلفية بعد التكوين
– nft: تطبيق إجراء إعادة الضبط لكل مزرعة وواجهة خلفية
– nft: تعميم الإجراءات لإضافة أو حذف عناصر ما بعد التوجيه
– المزارع: إعادة تسمية سمة عنوان المصدر للمزرعة بدلاً من عنوان المصدر
– التكوين: طباعة العلامات بتنسيق سداسي عشري
- الاختبارات: دعم إطلاق الاختبارات من خلال واجهة برمجة تطبيقات الويب
– البناء: نقل -lev إلى LDADD
– البناء: نقل علامات المعالج المسبق إلى CPPFLAGS
اصلاحات الشوائب
– التكوين: إرجاع خطأ عندما لا يتم تحديد كائن
– الواجهات الخلفية: تجنب الانتقال إلى خطأ التكوين بعد تعيين عناوين IP الخاصة بـ DNAT
– nft: إصلاح قواعد dnat عديمة الجنسية عندما تكون واجهات الإدخال والإخراج مختلفة
– nft: إصلاح اسم الخدمة لـ nat عديم الجنسية
– الواجهة الخلفية: إصلاح التحقق من صحة الواجهة الخلفية أثناء طلب عنوان MAC التلقائي
- الشبكة: حماية مزدوجة مجانية في المقبض
– الخادم: إصلاح خطأ التجزئة المجاني المزدوج
– الواجهات الخلفية: إصلاح التحقق من صحة الواجهة الخلفية عند تطبيق وضع dsr
– المزارع: واجهات افتراضية لسلاسل الدخول
– nft: إصلاح قواعد تصفية إضافة العناصر في إعادة التحميل
– nft: إصلاح إجراءات قواعد dnat عديمة الجنسية
- nft: تجنب استخدام سلسلة التصفية وعلامات الواجهة الخلفية للدخول
– nft: تجنب القواعد الفارغة في سلسلة التصفية عندما لا توجد واجهات خلفية
– الواجهات الخلفية: تطبيق إعادة التحميل في حالة تغيير حالة الواجهة الخلفية
– nft: إصلاح إدراج علامة skb من علامة ct في سلسلة التصفية
– nft: إصلاح فلتر التنظيف والحذف للسلسلة
– nft: إصلاح خدمة حذف الفلتر والسلسلة
– nft: إصلاح حذف العناصر من سلسلة التصفية
– nft: تجنب إنشاء القواعد إذا لم يكن هناك واجهة خلفية متاحة
– الواجهات الخلفية: إصلاح توفر الواجهة الخلفية لأوضاع الدخول
– السجلات: إصلاح مستوى السجل المحدد عند بدء التشغيل
– الكائنات: تجنب تداخل نسخ المخزن المؤقت
– المخزن المؤقت: إصلاح الخطأ المطبعي في رسالة الخطأ
– الخوادم الخلفية: إصلاح مشكلة تعطل الخوادم الخلفية
- قم بإزالة ملف config.h من .gitignore
– src: إصلاح أحجام نسخ السلسلة
– src: إضافة هيكل تحليل التنظيف لتجنب مراجع الكائنات الفارغة
– التكوين: إصلاح تفريغ علامة المزرعة json
– الخادم: إصلاح نص إدخال التحليل الذي ينتج عنه خطأ في تحليل المخزن المؤقت
nftlb 0.3 (15 نوفمبر 2018) #
https://github.com/relianoid/nftlb/releases/tag/v0.3
تم دمج هذا الإصدار في Kubernetes باسم kube-nftlb https://github.com/relianoid/kube-nftlb
ميزات جديدة
- الشبكة: تعميم طلب الارتباط الشبكي لطلب بيانات التوجيه
– المزارع: وضع جديد بدون جنسية dnat
– المزارع: إضافة دعم مساعدي المستوى 7
– المزارع: إضافة دعم تسجيل الإدخال
– المزارع: دعم إعادة تسمية المزرعة باستخدام السمة "newname"
– المزارع: إضافة دعم تدفق العلامات لكل خدمة افتراضية
– nft: إضافة علامة تدفق لكل واجهة خلفية ومزرعة باستخدام الأقنعة
– src: إضافة تكوين عنوان IP المصدر المخصص بدلاً من التنكر
إدخال التحسينات
– الأحداث: تعميم حلقة الحدث
– المزارع: تتضمن سمات جديدة لإدارة الواجهة وعناوين Mac
- الشبكة: إضافة الدعم للتفاعل مع بعض وظائف اكتشاف الشبكة
– src: إعادة الهيكلة وتبسيط واجهة برمجة التطبيقات
– الأحداث: تعميم حدث netlink لـ dsr
– المزارع: جعل عداد dsr عالميًا
– الواجهات الخلفية: تضمين حالة الواجهة الخلفية الجديدة config_error
– src: تحذير من السقوط الصامت
– الواجهات الخلفية: تأكد من أن قائمة الواجهات الخلفية فارغة عند تكوين
واجهة الانتاج
– المزارع: التحقق من صحة البيانات وتسويتها لكل مزرعة
- التكوين: تجنب طباعة المعلومات المولدة تلقائيًا للمزرعة
- المزارع: التحقق من صحة حالة المزرعة قبل السيطرة عليها
– الخادم: توسيع بيانات مخزن الخادم المؤقت
– readme: إضافة أمثلة جديدة
– الاختبارات: تحسين تنسيق إخراج الاختلاف
– nft: تحسين وحدات إنشاء قواعد nft
– الخادم: تعيين علم المقبس SO_REUSEADDR
– الرئيسي: هيكل معالج الإشارة الأولي
– الخادم: إضافة هيكل nftlb_client
– الخادم: إضافة هيكل nftlb_http_state
– الخادم: أضف nftlb_http_send_response()
– الخادم: إضافة حقل استجابة الجسم إلى هيكل nftlb_http_state
– src: لا تستخدم EXIT_{SUCCESS,FAILURE}
– الخادم: تحديد الكائنات التي يتم استخدامها فقط من server.c
– الخادم: إزالة التعريفات غير الضرورية
اصلاحات الشوائب
– التكوين: تفريغ التكوين باستخدام JSON المساف البادئة
– nft: إصلاح قواعد dsr لتعيين عنوان mac بدلاً من المطابقة
– الخلفية: إصلاح حالة تحديث الخلفية عند التبديل من الأسفل إلى الأعلى
– nft: تجنب قواعد الإضافة إذا لم تكن هناك واجهات خلفية متاحة
– الكائنات: تعيين الحالة الأولية الصحيحة للمزارع والخوادم الخلفية
– المزارع: إصلاح إجراءات البدء والإيقاف
– الواجهات الخلفية: التحقق من صحة الإدخال لـ net_get_neigh_ether()
– nft: إصلاح قاعدة العميل الخلفية NAT عديمة الجنسية
– nft: إصلاح اسم خدمات UDP IPv6
– الخادم: إصلاح بعض تسريبات ذاكرة خادم الويب
– الاختبارات: إصلاح بعض حالات الاختبار
nftlb 0.2 (14 مايو 2018) #
https://github.com/relianoid/nftlb/releases/tag/v0.2
- 3 طوبولوجيات مدعومة: NAT الوجهة، NAT المصدر والمباشر
عودة الخادم. يتيح هذا إعداد موازن التحميل في
هندسة الشبكات ذات الذراع الواحدة والذراعين.
- دعم لعائلتي IPv4 و IPv6.
- إمكانيات متعددة الطبقات: LB المستند إلى MAC في الطبقة 2، LB المستند إلى IP
مع عدم الاعتماد على بروتوكول في الطبقة 3، ودعم UDP وTCP و
SCTP LB في الطبقة 4.
- دعم متعدد المنافذ للنطاقات وقوائم المنافذ.
- دعم إعداد الخدمات الافتراضية المتعددة.
- المجدولون المتاحون: الوزن، والجدول الدوري، والتجزئة، والمتماثل
التجزئة.
- دعم الأولوية لكل واجهة خلفية.
- خدمة JSON API للمراقبة والأتمتة والإدارة.
- مصادقة خدمة الويب باستخدام مفتاح الأمان.
- منصة اختبار آلية.
nftlb 0.1 (27 فبراير 2018) #
- النسخة الأولية