ये व्यावहारिक मामले यह समझने के लिए एक प्रशिक्षण मार्गदर्शिका हैं कि नेटवर्किंग, सुरक्षा और उच्च उपलब्धता प्रौद्योगिकियां कैसे काम करती हैं।
सबसे पहले, निम्नलिखित अभ्यास का प्रयास करें:
Step 1. Install Zevenet CE from GIT, SF or Docker https://www.zevenet.com/community Step 2. Create L4xNAT farm with 2 backends and NAT or DNAT mode https://www.zevenet.com/knowledge-base/ Step 3. Execute in a console of Zevenet CE and try to understand the result of: root# iptables -t mangle -n -L root# iptables -t nat -n -L
अधिकारी में संदेह और टिप्पणी मेलिंग सूची!
उत्तर
लोड बैलेंसर क्लाइंट और बैकएंड या रियल सर्वर के बीच ट्रैफिक फ्लो सुनिश्चित करने के लिए एक नेटवर्क डिवाइस है, इसलिए 4 पर कनेक्शन के पैकेट, प्रवाह सुनिश्चित करने के लिए 4 चरणों का ध्यान रखा जाएगा
1. क्लाइंट से पैकेट को लोड बैलेंसर के लिए क्लाइंट से भेजा जाता है
2. पैकेट को लोड बैलेंसर से एक चयनित असली सर्वर या बैकएंड पर भेजा जाता है
3. पैकेट सर्वर से लोड बैलेंसर के लिए उत्तर देता है
4. पैकेट ग्राहक को प्रतिक्रिया के रूप में वापस भेजा जाता है
Zevenet लेयर 4 (LSLB - L4xNAT प्रोफाइल) इन सभी पैकेट का उपयोग करके संभालती है नेटफिल्टर उप के माध्यम से iptables और नेटवर्क रूटिंग सिस्टम।
इस कारण से, जब कॉन्फ़िगर करना ए DNAT मोड खेत और iptables कमांड निष्पादित करें हम तालिकाओं में उत्पन्न नियमों को पा सकते हैं वध करना और नेट नेटफिल्टर का। आगे की जानकारी यहां नेटफिल्टर टेबल .
में PREROUTING की श्रृंखला वध करना तालिका से मेल खाने वाले नियमों को दिखाया गया है:
- सभी स्रोतों या ग्राहकों से आने वाले सभी पैकेट जो कि गंतव्य का वर्चुअल एड्रेस और पोर्ट है (उदाहरण में होगा) 192.168.101.250: 443)
- फिर एक निश्चित एल्गोरिथम के अनुसार पैकेट को चिह्नित करें, इस मामले में एक संभावना विधि के आधार पर एक वजन है।
root@zevenet:~# iptables -L -t mangle -n Chain PREROUTING (policy ACCEPT) target prot opt source destination CONNMARK all -- 0.0.0.0/0 0.0.0.0/0 CONNMARK restore MARK tcp -- 0.0.0.0/0 192.168.101.250 statistic mode random probability 1.00000000000 multiport dports 443 /* FARM_app_1_ */ MARK set 0x20d MARK tcp -- 0.0.0.0/0 192.168.101.250 statistic mode random probability 0.50000000000 multiport dports 443 /* FARM_app_0_ */ MARK set 0x20c CONNMARK all -- 0.0.0.0/0 0.0.0.0/0 state NEW CONNMARK save Chain INPUT (policy ACCEPT) target prot opt source destination Chain FORWARD (policy ACCEPT) target prot opt source destination Chain OUTPUT (policy ACCEPT) target prot opt source destination Chain POSTROUTING (policy ACCEPT) target prot opt source destination
अब जब आने वाले पैकेट चिह्नित हैं, में PREROUTING की श्रृंखला नेट टेबल हम पैकेट के गंतव्य पते का उपयोग एक बैकएंड या किसी अन्य के लिए गंतव्य पते को बदलने के लिए करते हैं। इस उदाहरण के लिए, आईपी पते 192.168.1.10 और 192.168.1.11 असली सर्वर हैं।
root@zevenet:~# iptables -L -t nat -n Chain PREROUTING (policy ACCEPT) target prot opt source destination DNAT tcp -- 0.0.0.0/0 0.0.0.0/0 mark match 0x20c /* FARM_app_0_ */ to:192.168.1.10:443 DNAT tcp -- 0.0.0.0/0 0.0.0.0/0 mark match 0x20d /* FARM_app_1_ */ to:192.168.1.11:443 Chain INPUT (policy ACCEPT) target prot opt source destination Chain OUTPUT (policy ACCEPT) target prot opt source destination Chain POSTROUTING (policy ACCEPT) target prot opt source destination
RSI conntrack तालिका गंतव्य पता अनुवाद और में प्रबंधित करता है DNAT मोड, रिटर्न पैकेट को मार्गों द्वारा प्रबंधित किया जाता है क्योंकि लोड बैलेंसर बैकएंड का डिफ़ॉल्ट गेटवे होगा।
की दशा में NATया, SNAT जैसा कि यह आमतौर पर जाना जाता है, कन्करेट न केवल गंतव्य पते का अनुवाद करता है, बल्कि स्रोत पते का अनुवाद भी करता है। इस मामले में, केवल अंतर के साथ DNAT इसका मतलब यह है कि यह पैकेट पैकेट है जो राउटिंग सिस्टम द्वारा प्रबंधित नहीं किया जाता है, लेकिन कंवर्टर टेबल द्वारा। तो हम सिर्फ 2 नए नियमों में पा सकते हैं POSTROUTING प्रदर्शन करने के लिए नेट टेबल की श्रृंखला मुखौटा धारण कर लिया खेत के वर्चुअल आईपी पते के साथ।
root@zevenet:~# iptables -L -t nat -n Chain PREROUTING (policy ACCEPT) target prot opt source destination DNAT tcp -- 0.0.0.0/0 0.0.0.0/0 mark match 0x20c /* FARM_app_0_ */ to:192.168.1.10:443 DNAT tcp -- 0.0.0.0/0 0.0.0.0/0 mark match 0x20d /* FARM_app_1_ */ to:192.168.1.11:443 Chain INPUT (policy ACCEPT) target prot opt source destination Chain OUTPUT (policy ACCEPT) target prot opt source destination Chain POSTROUTING (policy ACCEPT) target prot opt source destination SNAT tcp -- 0.0.0.0/0 0.0.0.0/0 mark match 0x20c /* FARM_app_0_ */ to:192.168.101.250 SNAT tcp -- 0.0.0.0/0 0.0.0.0/0 mark match 0x20d /* FARM_app_1_ */ to:192.168.101.250
आगे की शंका? से पूछो मेलिंग सूची!