nftlb डेवलपर्स गाइड

द्वारा प्रकाशित किया गया था Zevenet | 30 जुलाई, 2019

अवलोकन

nftlb netfilter / nftables linux नेटवर्किंग स्टैक पर निर्भर करता है। इस नए स्टैक के साथ इसे नई अवधारणाएं और क्षमताएं प्रदान की जाती हैं जिन्हें हमें वर्तमान लोड संतुलन डिजाइन में फिट करने की आवश्यकता है।

इस लेख का उद्देश्य यह समझना है कि कैसे नफ्टीबल बैलेंसर डेटा पथ और नियंत्रण पथ को लोड करते हैं।

डेटा पथ हुक

ये नेटफिल्टर हुक हैं जो कि 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) फ़िल्टर करें: आरक्षित, क्रम में, के लिए: सुरक्षा नीतियां (ब्लैकलिस्ट और श्वेतसूची), डायरेक्ट सर्वर रिटर्न और स्टेटलेस डीएनएटी टोपोलॉजी।

prerouting

(-150) फ़िल्टर: प्रति वर्चुअल सेवाओं या प्रति बैकएंड की सुरक्षा सीमाओं के लिए आरक्षित जैसे: स्थापित कनेक्शन की अधिकतम संख्या, प्रति सेकंड टीसीपी आरएसटी की सीमा, प्रति सेकंड टीसीपी SYN की सीमा, गैर सख्त टीसीपी कनेक्शन की गिरावट, DNSBL सेवा की कतार, आभासी सेवा और बैकएंड के निशान , सहायकों का उपयोग, वर्चुअल सेवा प्रति इनपुट कनेक्शन की लॉगिंग।
(0) एनएटी: एनएटी गंतव्य के लिए आरक्षित।

आगे

(0) फ़िल्टर करें: फ्लो ऑफ लोड के लिए आरक्षित। अभी तक nftlb में शामिल नहीं है।

postrouting

(100) एनएटी: एनएटी गंतव्य के लिए आरक्षित।

नियंत्रण पथ

Nftlb नियंत्रण पथ को डेमन के रूप में डिज़ाइन किया गया है जो एपीआई, या स्टैंडअलोन बाइनरी के साथ एक सरल http सर्वर प्रदान करता है जो JSON प्रारूप में कॉन्फ़िगरेशन फ़ाइल को स्वीकार करता है।

                -------------    traduction     -------------             --------
   JSON API    |             |   objs to nft   |             |  netlink  |        |
 ------------> | http server | --------------> | libnftables | --------> | kernel |
               |             |        |        |             |           |        |
                -------------         |         -------------             --------
                                      |               netlink                |
                                       ---------------------------------------
पर साझा करें:

GNU फ्री डॉक्यूमेंटेशन लाइसेंस की शर्तों के तहत प्रलेखन।

क्या यह लेख सहायक था?

संबंधित आलेख