दो इंटरनेट कनेक्शन और एक लैन कनेक्शन के साथ एक बहु-स्तरीय लिनक्स लोड बैलेंसर बनाएं


11

ठीक है, ... इसका उत्तर संभवतः दिया गया है, दुर्भाग्य से, मुझे ऐसा कुछ भी नहीं मिला है जो दिखता है कि यह संकल्प हो सकता है।

Ive ने इन पृष्ठों को देखा और उनके पास कुछ उपयोगी जानकारी है, लेकिन पूर्ण संकल्प नहीं:

  1. लोड संतुलन और नेट-आईएनजी कई आईएसपी कनेक्शन लिनक्स पर
  2. दो इंटरनेट कनेक्शन और 1 एनआईसी, संभव?
  3. लिनक्स स्प्लिट एक्सेस (कई इंटरनेट कनेक्शन w / लोड बैलेंसिंग)
  4. लिनक्स फ़ायरवॉल + लोड संतुलन आईएसपी कनेक्शन

मैं या तो डेबियन 8, उबंटू 16.04 डेस्कटॉप या उबंटू 16.04 सर्वर (ईमानदारी से, सबसे अधिक संभावना डेबियन) का उपयोग कर रहा हूं।

ठीक है, इसलिए मेरे पास तीन एनआईसी होंगे, जिसमें दो गीगाबिट और ऑनबोर्ड 100 एमबीपीएस लैन कनेक्शन स्थापित होगा। ISP कनेक्शन दोनों nics पर PPPoE प्रमाणीकरण के माध्यम से गीगाबिट लैन कार्ड का उपयोग करेगा (यदि यह अन्यथा संभव है, तो मैं DSL मोडेम पर गैर ब्रिजिंग मोड के लिए व्यवस्थित करूंगा)। और दोनों नेटवर्कों के पास एक स्थिर आईपी उन्हें सौंपा जाएगा। वर्तमान में (जो बदल जाएगा) प्राथमिक कनेक्शन में पांच का एक समूह है। मुझे ट्रैफ़िक को रूट करने की आवश्यकता है जो उन आईपी पते में से एक पर नेटवर्क पर उचित सर्वर पर आता है।

यहाँ मेरे सवाल हैं:

  1. मैं इसे कैसे सेट करूँ? क्या मैं नेटिंग, आईपी चैन, आईपी मैसेजिंग, रूटिंग, आदि का उपयोग करता हूं ...?
  2. मैं बाहर से सिस्टम में आने वाले ट्रैफ़िक को नेटवर्क पर एक विशिष्ट आईपी पते पर कैसे रूट करूं?

कृपया सौम्य रहें, यह पहली बार है जब मैंने इस तरह से कुछ भी करने का प्रयास किया है :)।

EDIT 1

नेटवर्क टोपोलॉजी जोड़ना भूल गया:

आंतरिक नेटवर्क लेआउट

EDIT 2

बस कुछ एहसास हुआ ... PPPoE प्रमाणीकरण करने के लिए, मुझे एक विशिष्ट इंटरफ़ेस पर क्रेडेंशियल्स के प्रमाणीकरण के लिए मजबूर करना होगा। यह कैसे किया जाता है?

मैंने उस प्रश्न को यहाँ पोस्ट किया है:

दो इंटरनेट कनेक्शन और एक लैन कनेक्शन के साथ एक बहु-स्तरीय लिनक्स लोड बैलेंसर बनाएं

अद्यतन १

अभी भी काम करने के लिए मल्टीपोट राउंड रॉबिन प्राप्त करने में असमर्थ है। मैंने निम्नलिखित साइटों में बिना किसी भाग्य के उल्लिखित चरणों का पालन करने की कोशिश की:

  1. लोड संतुलन और नेट-आईएनजी कई आईएसपी कनेक्शन लिनक्स पर
  2. लिनक्स - दोहरी इंटरनेट कनेक्शन / लोड संतुलन
  3. HOWTO: लिनक्स के साथ मल्टीरूटिंग

मैं या तो यह कहते हुए संदेश प्राप्त करता रहता हूं कि फ़ाइल पहले से मौजूद है या अमान्य डिवाइस है। यहाँ मेरी सेटिंग्स / जानकारी दी गई है

ifconfig

eth0      Link encap:Ethernet  HWaddr ec:08:6b:04:8e:ac  
          inet addr:172.16.0.2  Bcast:172.16.0.255  Mask:255.255.255.0
          inet6 addr: fe80::ee08:6bff:fe04:8eac/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:9525 errors:0 dropped:0 overruns:0 frame:0
          TX packets:7722 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:9306973 (8.8 MiB)  TX bytes:949815 (927.5 KiB)

eth1      Link encap:Ethernet  HWaddr ec:08:6b:04:8c:95  
          inet addr:172.16.1.2  Bcast:172.16.1.255  Mask:255.255.255.0
          inet6 addr: fe80::ee08:6bff:fe04:8c95/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:9 errors:0 dropped:0 overruns:0 frame:0
          TX packets:42 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:558 (558.0 B)  TX bytes:6344 (6.1 KiB)

eth2      Link encap:Ethernet  HWaddr 00:16:76:90:49:b7  
          inet addr:172.16.2.1  Bcast:172.16.2.255  Mask:255.255.255.0
          inet6 addr: fe80::216:76ff:fe90:49b7/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:3793 errors:0 dropped:0 overruns:0 frame:0
          TX packets:79 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:283119 (276.4 KiB)  TX bytes:10338 (10.0 KiB)

lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:65536  Metric:1
          RX packets:32 errors:0 dropped:0 overruns:0 frame:0
          TX packets:32 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1 
          RX bytes:1858 (1.8 KiB)  TX bytes:1858 (1.8 KiB)

INTERFACES कॉन्फ़िगरेशन

# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).

source /etc/network/interfaces.d/*

# The loopback network interface
auto lo
iface lo inet loopback

auto eth0
allow-hotplug eth0
iface eth0 inet static
    address 172.16.0.2
    netmask 255.255.255.0
    gateway 172.16.0.1
    network 172.16.0.0
    broadcast 172.16.0.255

auto eth1
allow-hotplug eth1
iface eth1 inet static
    address 172.16.1.2
    netmask 255.255.255.0
    gateway 172.16.1.1
    network 172.16.1.0
    broadcast 172.16.1.255

auto eth2
allow-hotplug eth2
iface eth2 inet static
    address 172.16.2.1
    netmask 255.255.255.0
    network 172.16.2.0
    broadcast 172.16.2.255

ETH0

यह मेरा प्राथमिक वान कनेक्शन है।

eth1

यह मेरा द्वितीयक WAN कनेक्शन है।

eth2

यह मेरा आंतरिक LAN कनेक्शन है।

मैं एक वैन इंटरफ़ेस पर काम करने के लिए रूटिंग प्राप्त करने में सक्षम था और आंतरिक लैन से जुड़ा हुआ था, हालांकि, मैं इसे दोहरा नहीं सकता और न ही मुझे पता है कि क्यों।


मुझे लगता है कि आपके द्वारा पोस्ट की गई पहली कड़ी में आपका जवाब होगा। यदि सर्वर आपके LAN पर हैं और आपके निजी पते हैं, तो आपको NAT की आवश्यकता है। मूल रूप से आपको अपनी समस्या को दो समस्याओं में विभाजित करने की आवश्यकता है: 1) ट्रैफ़िक आने वाली आईएन, 2) ट्रैफ़िक बाहर आ रहा है। फिर ... क्या आपको केवल लोड संतुलन के लिए या उच्च उपलब्धता के लिए भी इसकी आवश्यकता है? आपको अलग-अलग प्रदाताओं (आईपी नियम) के लिए अलग-अलग रूटिंग टेबल रखने की आवश्यकता है, फिर आने वाले पैकेटों को चिह्नित करें ताकि वे एक ही प्रदाता को वापस जाएंगे। आउटगोइंग ट्रैफ़िक के लिए आप इसे संतुलित कर सकते हैं।
जुरे

ठीक है, ... हाँ, यह सोचने के लिए आओ, मुझे तदनुसार (नैटिंग) ट्रैफ़िक को रूट करने में सक्षम होने की आवश्यकता होगी और मुझे निश्चित रूप से दो आने वाले कनेक्शन लोड को संतुलित करने की आवश्यकता होगी। तो प्रभावी रूप से एकल गति के बजाय दोगुनी गति है। क्या मैं इस बारे में सही ढंग से सोच रहा हूं?
जॉन शुल्त्

क्या आपके पास बाहर की तरफ बीजीपी है? यदि आपके पास अलग-अलग इंटरनेट लिंक हैं, तो आप केवल आउटगोइंग की तरफ "गति दोगुना" कर सकते हैं। आने वाले पक्ष केवल आने वाले पैकेटों को ट्रैक करेंगे और सुनिश्चित करेंगे कि वे उसी लाइन पर बाहर जाएं जैसे वे अंदर आए थे।
Jure1873

मुझे पता चला कि ऐसा ही होगा। नहीं, मेरे पास इस स्थान के बाहर बीजीपी नहीं है :( न भी पता है कि यह क्या है)।
जॉन शुल्त्

जवाबों:


4

कुछ दोस्तों की मदद से मुझे इस पर शोध करने में मदद मिली, मैं इसे काम करने में सक्षम था।

टीसीपी / आईपी यातायात को ठीक से आगे बढ़ाने के लिए इस स्क्रिप्ट को चलाना था:

#!/bin/sh

PATH=/usr/sbin:/sbin:/bin:/usr/bin

# Primary Connection - 2085426230
   IF1=eth0
   IP1=172.16.0.2
    P1=172.16.0.1
P1_NET=172.16.0.0

# Secondary Connection - 2085420213
   IF2=eth1
   IP2=172.16.1.2
    P2=172.16.1.1
P2_NET=172.16.1.0

# Local Network
   IF3=eth2
   IP3=172.16.2.2
    P3=172.16.2.1
P3_NET=172.16.2.0

T1=WAN1
T2=WAN2

# delete all existing rules.
iptables -F
iptables -t nat -F
iptables -t mangle -F
iptables -X

# Always accept loopback and WAN traffic
iptables -A INPUT -i lo -j ACCEPT
iptables -A INPUT -i ${IF1} -j ACCEPT

# Allow established connections, and those not coming from the outside
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A FORWARD -i ${IF1} -o ${IF3} -m state --state ESTABLISHED,RELATED -j ACCEPT

# Allow outgoing connections from the LAN side.
iptables -A FORWARD -i ${IF3} -o ${IF1} -j ACCEPT

# Masquerade.
iptables -t nat -A POSTROUTING -o ${IF1} -j MASQUERADE

# Enable routing.
echo 1 > /proc/sys/net/ipv4/ip_forward

फिर मैंने नेट-आईएसपी-बैलेंस स्थापित किया । एक बार स्क्रिप्ट चलने और इंस्टॉल होने के बाद, मैं दो बार व्हाट्सएप पर गया और पर्याप्त रूप से सुनिश्चित किया, दोनों इंटरफेस ट्रैफिक को रूट कर रहे हैं क्योंकि व्हाट्सएप ने रिफ्रेश मारने के बाद दोनों आईपी एड्रेस दिखाए।

अस्वीकरण यह मेरे विशेष नेटवर्क लेआउट, कॉन्फ़िगरेशन और सेटिंग्स के लिए काम करता है। आपके परिणाम अलग-अलग हो सकते हैं।


क्या गति परीक्षण किया गया .... मैंने अपने डोड ट्रैफिक में 24% की वृद्धि की और मेरे uload ट्रैफिक में 90% की वृद्धि हुई।
जॉन शुल्त्स
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.