دليل المطورين nftlb

نُشرت في 30 يوليو 2019

نبذة

nftlb يعتمد على مكدس شبكة الاتصال netfilter / nftables linux. مع هذه المجموعة الجديدة ، يتم توفير مفاهيم وقدرات جديدة نحتاجها لتناسب تصميم موازنة التحميل الحالي.

تهدف هذه المقالة إلى إعطاء نظرة عامة حول كيفية تصميم مسار بيانات موازن تحميل nftables ومسار التحكم.

خطاطيف مسار البيانات

هذه هي خطافات Netfilter التي يستخدمها nftlb ، مع الاستفادة من السلاسل القابلة للتكوين. يجب تضمين مفاهيم جديدة مثل إلغاء تحميل تتبع الاتصال من أجل تسريع الاتصالات المعاد توجيهها المؤخرة إلى الواجهة الخلفية.

                                                                  ------------
                                                                 |    DNSBL   |
                                                                  ------------
                                                                       |
                                                                     queue
                      ingress                                          |  prerouting                      forward         postrouting
      ------------ ------------- --------------                   ------------ -------                 --------------       -------
     |   filter   |    filter   |    filter    |                 |   filter   |  nat  |               |    filter    |     |  nat  |
     |     0      |    50-99    |     100      |                 |    -150    |   0   |               |      0       |     |  100  | 
 --> |            |             | Sec Policies |-( Conntrack )-> | Sec Limits |       |-( Routing )-> |              | --> |       |
     | Clustering | Flow tables | DSR          |           VS{}  | Helpers    | dNAT  |         VS{}  | Flow offload |     |  sNAT |
     |            |             | stless dNAT  |                 | Marks      |       |                --------------       -------
      ------------ ------------- --------------                   ------------ ------- 

دخول

(0) مرشح: محفوظة لإدارة المجموعات. لم تدرج بعد في nftlb.
مرشح (50-99): محفوظة لجداول تدفق التسارع. لم تدرج بعد في nftlb.
(100) مرشح: محفوظة ، بالترتيب ، من أجل: نُهج الأمان (قوائم سوداء وقوائم بيضاء) ، طبولوجيا خدمة Direct Server Return و Stateless dNAT.

prerouting

(-150) مرشح: محجوز لحدود الأمان لكل خدمات افتراضية أو لكل واجهة خلفية مثل: الحد الأقصى لعدد الاتصالات المنشأة ، حد TCP RST في الثانية ، حد TCP SYN في الثانية الواحدة ، انخفاض اتصالات TCP غير الصارمة ، قائمة انتظار لخدمة DNSBL ، الخدمة الافتراضية وعلامات الواجهة الخلفية ، واستخدام المساعدين ، وتسجيل اتصالات المدخلات في الخدمة الافتراضية.
(0) نات: محفوظة للوجهة NAT mangling.

إلى الأمام

(0) مرشح: محفوظة لتفريغ التدفق. لم تدرج بعد في nftlb.

POSTROUTING

(100) نات: محفوظة للوجهة NAT mangling.

مسار التحكم

تم تصميم مسار التحكم nftlb كخفي يوفر خادم http بسيط مع API ، أو ثنائي مستقل يقبل ملف التكوين في تنسيق JSON.

                -------------    traduction     -------------             --------
   JSON API    |             |   objs to nft   |             |  netlink  |        |
 ------------> | http server | --------------> | libnftables | --------> | kernel |
               |             |        |        |             |           |        |
                -------------         |         -------------             --------
                                      |               netlink                |
                                       ---------------------------------------
مشاركة مع :

وثائق بموجب شروط رخصة جنو للوثائق الحرة.

هل كان المقال مساعدا؟!

مقالات ذات صلة