Титла: Load balance
Публикувано от: bobibiturboto в Mar 28, 2008, 21:25
След търсене на подобни теми попаднах на тази ТемаПри мен положението е следното имам интернет който е адсл(9Mb/s) и влиза на eth0 lan(служебната мрежа) на eth1 и back-up доставчик който е на eth2 (4Mb/s)но интернета се получава по pptp във вкъщи имам само мрежа (без интернет) от backup доставчика и на работата съм си направил pptp server с който получавам интернет от адсл в къщи (понеже мрежата на back-up доставчика е с подмрежи няма друг вариант да ползвам servera на работата като gw освен pptp)Понеже където живея не се продава по бърз интернет от този на адлс пък той вече не стига целта мие да впрегна в load balance и двата доставчика понеже uploada на ADSL e много слаб но пък да мога през pptpd да имам и нет във вкъщи.Ето това е моята редакция на скрипта Примерен код | #!/bin/bash # # Simple balancing router # author: vvitkov # contact: http://www.getoto.net/az/ # # Licence: CC NC-BY-SA v3 # Disclaimer: i take no responsibility for the consequences of using or not using this. # It is up to you to decide what to do with this stuff. # Please if you use this write me a note and don't remove the author info. ### Settings ISP1_NET="192.168.1.0/24" ISP1_GW="192.168.1.1" ISP1_IF="eth0" ISP1_OUR_HOST="192.168.1.2" ISP2_NET="172.16.12.0/24" ISP2_GW="213.91.167.3" ISP2_IF="ppp0" ISP2_OUR_HOST="172.16.12.67" INT_NET="192.168.7.0/24" INT_NET2="10.0.0.0/8" # Defining routing tables for source routing if ( ip ru ls | grep main | grep 50 ) then ip r f t main else ip ru a prio 50 t main fi if ( ip ru ls | grep isp_rules1 ) then ip r f t isp_rules1 else ip ru a from $ISP1_NET prio 201 t isp_rules1 fi if ( ip ru ls | grep isp_rules2 ) then ip r f t isp_rules2 else ip ru a from $ISP2_NET prio 202 t isp_rules2 fi # Clear all the existing routes ip r f any ip r f t default # Host routes ip r a $ISP1_NET dev $ISP1_IF src $ISP1_OUR_HOST ip r a $ISP2_NET dev $ISP2_IF src $ISP2_OUR_HOST # Local networks ip r a 127.0.0.0/8 dev lo ip r a $INT_NET dev eth1 ip r a $INT_NET2 dev eth2 # Default gateways ip r a 0/0 via $ISP1_GW dev $ISP1_IF table isp_rules1 proto static ip r a prohibit 0/0 table isp_rules1 metric 1 proto static ip r a 0/0 via $ISP2_GW dev $ISP2_IF table isp_rules2 proto static ip r a prohibit 0/0 table isp_rules2 metric 1 proto static # lets shake it :) ip r a 0/0 proto static table default nexthop via $ISP1_GW dev $ISP2_IF nexthop via $ISP2_GW dev $ISP2_IF # Remote networks with static routes #ip r a < NETWORK IN ISP1 > via $ISP1_GW dev $ISP1_IF #ip r a < NETWORK IN ISP2 > via $ISP2_GW dev $ISP2_IF # flush caches ip r f c
|
а това са ми правилата за рутиранe мрежата 145.167.18.0 е виртуалната с която се свързвам от вкъщи
Примерен код | *filter :INPUT ACCEPT [0:0] :FORWARD ACCEPT [0:0] :OUTPUT ACCEPT [0:0] -A FORWARD -s 192.168.7.0/255.255.255.0 -j ACCEPT -A FORWARD -s 145.167.18.0/255.255.255.0 -j ACCEPT COMMIT # Completed on Tue Jun 13 16:51:44 2006 # Generated by iptables-save v1.3.3 on Tue Jun 13 16:51:44 2006 *nat :PREROUTING ACCEPT [0:0] :POSTROUTING ACCEPT [0:0] :OUTPUT ACCEPT [0:0] -A POSTROUTING -s 192.168.7.0/255.255.255.0 -j MASQUERADE -A POSTROUTING -s 145.167.18.0/255.255.255.0 -j MASQUERADE COMMIT # Completed on Tue Jun 13 16:51:44 2006
|
Титла: Load balance
Публикувано от: neter в Mar 28, 2008, 22:53
Титла: Load balance
Публикувано от: bobibiturboto в Mar 29, 2008, 13:32
Прочетох темите за които @neter ми даде линкове но при мен нещо не се получава може би поради това че втория ми доставчик ми пуска нет със pptp. Това са ми интерфейсите ppp1 е връзката ми от вкъщи към сървара а ppp0 е връзката ми към доставчика Примерен код | ifconfig eth0 Link encap:Ethernet HWaddr 00:E0:4C:50:E7:92 inet addr:192.168.1.2 Bcast:192.168.1.255 Mask:255.255.255.0 inet6 addr: fe80::2e0:4cff:fe50:e792/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:13964 errors:0 dropped:0 overruns:0 frame:0 TX packets:12820 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:14836257 (14.1 MiB) TX bytes:1339331 (1.2 MiB) Interrupt:11 Base address:0xf400
eth1 Link encap:Ethernet HWaddr 00:E0:4C:50:E7:94 inet addr:192.168.7.1 Bcast:192.168.7.255 Mask:255.255.255.0 inet6 addr: fe80::2e0:4cff:fe50:e794/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:7583 errors:0 dropped:0 overruns:0 frame:0 TX packets:10713 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:766041 (748.0 KiB) TX bytes:14603638 (13.9 MiB) Interrupt:10 Base address:0xe800
eth2 Link encap:Ethernet HWaddr 00:E0:4C:E2:D6:A7 inet addr:10.31.10.72 Bcast:10.31.10.255 Mask:255.255.255.0 inet6 addr: fe80::2e0:4cff:fee2:d6a7/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:7229 errors:0 dropped:0 overruns:0 frame:0 TX packets:5054 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:1459449 (1.3 MiB) TX bytes:953666 (931.3 KiB) Interrupt:5 Base address:0xe400
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:16436 Metric:1 RX packets:2 errors:0 dropped:0 overruns:0 frame:0 TX packets:2 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:213 (213.0 b) TX bytes:213 (213.0 b)
ppp0 Link encap:Point-to-Point Protocol inet addr:172.16.12.67 P-t-P:213.91.167.3 Mask:255.255.255.255 UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1500 Metric:1 RX packets:549 errors:1 dropped:0 overruns:0 frame:0 TX packets:498 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:3 RX bytes:568483 (555.1 KiB) TX bytes:31581 (30.8 KiB)
ppp1 Link encap:Point-to-Point Protocol inet addr:145.167.18.1 P-t-P:145.167.18.2 Mask:255.255.255.255 UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1490 Metric:1 RX packets:197 errors:0 dropped:0 overruns:0 frame:0 TX packets:90 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:3 RX bytes:16518 (16.1 KiB) TX bytes:6427 (6.2 KiB)
|
Интернет от локалната мрежа навън нямам за balance и рутиране ползвам този скрипт
Примерен код | #! /bin/sh # Load balancing script by mambang # using 4 nics, 2 isp, 2 lan segment # PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin IFCONFIG=/sbin/ifconfig NETWORK=/etc/rc.d/networking IP=/sbin/ip IPTABLES=/sbin/iptables
#Device 1 connected to ISP1 DEV1=eth0 NET1=192.168.1.2 SUB1=192.168.1.0/24 GW1=192.168.1.1
#Device 2 connected to ISP2 DEV2=ppp0 NET2=172.16.12.67 SUB2=172.16.12.0/24 GW2=213.91.167.3
#LAN device connected to LAN group1 DEV3=eth2 LAN1=10.31.10.72 SUB3=10.0.0.0/16
#LAN device connected to LAN group2 DEV4=eth1 LAN2=192.168.7.1 SUB4=192.168.7.0/24
#---------------------DO THIS MANUALLY------------ #echo "1 T1" >> /etc/$IProute2/rt_tables #echo "2 T2" >> /etc/$IProute2/rt_tables #-------------------------------------------------
START_ROUTING(){ #segement1 $IP route add $SUB1 dev $DEV1 src $NET1 table T1 $IP route add $SUB3 dev $DEV3 src $LAN1 table T1 $IP route add default via $GW1 table T1
#segment2 $IP route add $SUB2 dev $DEV2 src $NET2 table T2 $IP route add $SUB4 dev $DEV4 src LAN2 table T1 $IP route add default via $GW2 table T2
#rules for all segment $IP rule add from $NET1 table T1 $IP rule add from $LAN1 table T1 $IP rule add from $NET2 table T2 $IP rule add from $LAN2 table T1
#using iptable to mark packets $IPTABLES -t mangle -A OUTPUT --source $SUB3 -j MARK --set-mark 0x10 $IPTABLES -t mangle -A OUTPUT --source $SUB4 -j MARK --set-mark 0x20 $IPTABLES -t nat -A POSTROUTING -o $DEV1 -j SNAT --to-source=$NET1 $IPTABLES -t nat -A POSTROUTING -o $DEV2 -j SNAT --to-source=$NET2
#default gateway for other $IP route add default via $GW1
#avoids incoming packets from rejected echo 0 > /proc/sys/net/ipv4/conf/$DEV1/rp_filter echo 0 > /proc/sys/net/ipv4/conf/$DEV2/rp_filter
# adding rule for fwmark $IP rule add fwmark 0x10 pri 100 table T1 $IP rule add fwmark 0x20 pri 101 table T2
# make sure packets comes and returns using same route ip rule add from $NET1 pri 200 table T1 ip rule add from $NET2 pri 300 table T2
}
BALANCING(){ #load balancing #$IP route add default scope global nexthop via $GW1 dev $DEV1 weight 1 \ #nexthop via $GW2 dev $DEV2 weight 1 $IP route replace default equalize \ nexthop via $GW1 dev $DEV1 \ nexthop via $GW2 dev $DEV2 }
#-------------flushes all route and rule------------------- REMOVE_TABLE(){ ALLDEV="eth0|eth1|eth2|ppp0|lo" ALLTABLES="T1|T2" keepers="dev ($ALLDEV)" tables="lookup ($ALLTABLES)"
echo echo ***Before echo "Rules..." $IP ru sh echo"" echo "Routes..." $IP ro sh echo "Rules for table T1..." $IP ro sh table T1 echo"" echo "Rules for table T2..." $IP ro sh table T2 echo""
$IP route delete default &>/dev/null $IP route show | awk -v k="$keepers" '$0 !~ k \ { print " $IP route delete " $0 | "bash" }'
for wan in ${ALLTABLES//|/ }; do $IP route flush table $wan &>/dev/null done
$IP rule show | awk -v k="$tables" '$0 ~ k \ { sub(/from all/,""); print "ip rule del " substr($0, 5) | "bash" }' echo "" $IP rule show | awk -v k="$tables" '$0 ~ k \ { sub(/from all/,""); print "ip rule del " substr($0, 7) | "bash" }' echo "" echo "ALL Tables and Rules Deleted"
echo "Adding default gateway ....." $IP route add default via $GW1
$IP route flush cache echo echo "***After" echo "Rules..." $IP ru sh echo "Routes..." $IP ro sh echo "Rules for table T1..." $IP ro sh table T1 echo "Rules for table T2..." $IP ro sh table T2 }
case "$1" in start) echo "Creating new routing tables ....." START_ROUTING echo "Start load balancing rules ....." BALANCING echo "DONE....New routing has been added." #Flush routing cache $IP route flush cache ;; stop) REMOVE_TABLE echo "DONE....Default routing has been restore." echo "" echo "Flushing iptables mangle rules ....: iptables -F -t mangle echo "DONE" ;; *) N=/etc/rc.d/splitgateway echo "Cara Guna: $N {start|stop}" >&2 exit 1 ;; esac
exit 0 |
Като пусна скрипта ми дава само това без други съобщения
Примерен код | sh ./balance.sh ./balance.sh: line 164: unexpected EOF while looking for matching `"' ./balance.sh: line 170: syntax error: unexpected end of file
| Това ми е routing таблицата
Примерен код | route -n Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface 213.91.167.3 0.0.0.0 255.255.255.255 UH 0 0 0 ppp0 192.168.7.0 0.0.0.0 255.255.255.0 U 0 0 0 eth1 10.31.10.0 0.0.0.0 255.255.255.0 U 0 0 0 eth2 192.168.1.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0 10.0.0.0 10.31.10.1 255.224.0.0 UG 0 0 0 eth2 127.0.0.0 0.0.0.0 255.0.0.0 U 0 0 0 lo 0.0.0.0 0.0.0.0 0.0.0.0 U 0 0 0 ppp0 0.0.0.0 192.168.1.1 0.0.0.0 UG 1 0 0 eth0
|
Командата iptables-save не изкарва никакъв изход. За load balance с такава като моята конфигурация нищо не намерих в нета.
Титла: Load balance
Публикувано от: ivo1204 в Mar 29, 2008, 15:06
Цитат | stop) REMOVE_TABLE echo "DONE....Default routing has been restore." echo "" echo "Flushing iptables mangle rules ....: iptables -F -t mangle echo "DONE" ;; |
Начи и темата не съм чел , ама гледам изпуснати затварящи кавички ...
Титла: Load balance
Публикувано от: bobibiturboto в Apr 01, 2008, 15:12
Поправих кавичките но пак нищо не се получи но пък убедих резервния доставчик да ми даде статично IP  eth0 и eth2 са свързани към ISP а на eth1 ми е свързана локалната мрежа. Като се замисля на мен проблема ми е в малкия уплоад от страна на БТК та май ще е най-добре ще е да иползвам бтк за download а др доставчик за уплоад но не успях да намеря обяснение как да стане това ако някой има идея да я подхвърли ?
Титла: Load balance
Публикувано от: bobibiturboto в Apr 02, 2008, 21:14
С помоща на един колега сглобих идея как да стане балансирането на мрежите с ъплоад от единия доставчик а доунлоуд от другия но трябва да се вкарат в скрипта и изчисление по метрика а там нещо се оплитам нека разбиращите да помогнат ако имат желание Примерен код | #!/bin/bash -v IP1=192.168.1.2 IP2=213.X.X.2 P1=192.168.1.1 P2=213.X.X.1
P0_NET=192.168.7.0/24 P1_NET=192.168.1.0/24 P2_NET=213.X.X.0/30
IF1=eth0 IF2=eth2 ip route add $P1_NET dev $IF1 src $IP1 table BTK ip route add default via $P1 table BTK ip route add $P2_NET dev $IF2 src $IP2 table Opti ip route add default via $P2 table Opti ip route add $P1_NET dev $IF1 src $IP1 ip route add $P2_NET dev $IF2 src $IP2 #ip route add default via $P1 ip rule add from $IP1 table BTK ip rule add from $IP2 table Opti ip route add $P0_NET dev $IF0 table BTK ip route add $P2_NET dev $IF2 table BTK ip route add 127.0.0.0/8 dev lo table BTK ip route add $P0_NET dev $IF0 table Opti ip route add $P1_NET dev $IF1 table Opti ip route add 127.0.0.0/8 dev lo table Opti route del -net 0.0.0.0 netmask 0.0.0.0 dev $IF1 ip route add default scope global nexthop via $P1 dev $IF1 weight 1 nexthop via $P2 dev $IF2 weight 1
|
Титла: Load balance
Публикувано от: Slevin_ в Apr 02, 2008, 23:06
Идеята ти за ъплоуд през един адрес и даунлоуд през друг е неосъществима. Ако успееш да ми обясниш как ще се осъществи 3-way handshake-а на TCP в такава ситуация. Ето според "ръкостискането" какво би се получило. Изпращаш SYN до получателя, този пакет пътува по веригата от маршрутизатори и достига до него. Получателя ти връща SYN-ACK, но информацията в IP хедъра за сорс адрес е адреса, от който си изпратил пакета. Ще изпрати SYN-ACK до този адрес естествено.
Дори да речем, че по някакъв начин подмениш сорс адреса на източника в IP хедъра с този, до които трябва да пристигне SYN-ACK(IP на АДСЛ), а после как ще продължи пътя си този пакет? Ако греша, нека някой ме поправи, просто не си обяснявам как би се получил такъв замисъл.
Титла: Load balance
Публикувано от: teleport в Apr 03, 2008, 08:12
Цитат (Slevin_ @ Април 03 2008,00:06) | Идеята ти за ъплоуд през един адрес и даунлоуд през друг е неосъществима. Дори да речем, че по някакъв начин подмениш сорс адреса на източника в IP хедъра с този, до които трябва да пристигне SYN-ACK(IP на АДСЛ), а после как ще продължи пътя си този пакет? Ако греша, нека някой ме поправи, просто не си обяснявам как би се получил такъв замисъл. |
Целия интернет е несиметричен. Пакетите обикновенно не се движат по един и същ път в двете посоки.
Замисъла се получава така: неоходимо е човека да има 2-те публични ip-та на рутера си ( а бтк обикновенно оставят публичното ip в модема! ).
Първия SYN се генерира ( или nat-ти ) със source ip това на бтк ( публичното! ), но се изпраща през интерфейса към втория провайдер. ACK пристига през бтк естествено. Съответно така се праща/получава и останалия трафик на сесията.
Проблема тука е че има негласно правило крайните ISP-та да приемат пакети от клиентите САМО с дадените им IP-та. В противен случай е прекалено лесно да организираш анонимен syn/icmp flood както към някой сървър, така и към друг клиент на ISP. Само транзитните ISP-та приемат пакети със различен source ip за транзит и отново има негласно правило че това става след като се направи консултация със датабазата на съответния RIR ( RIPE в нашия случай ) и се напишат съответните филтри. Към момента обаче в България се филтрират само bgp анонсите, поради липсата на достатъчно сериозни рутери, които могат да налагат хардуерни acl базирани на bgp таблиците заредени след филтриране. А писането на ръка на acl-и на интерфеси е малък ад и се прави само в случай на очакван/доказан flood, все пак acl cam-овете на рутерите са краен брой.
В случая на bobibiturboto оптималното е да си направи nat-а по портове, т.е. да nat-не download трафика ( http/ftp/pop3/imap ) към бтк а ъплоад трафика към другия провайдер, примерно:
iptables -t nat -A POSTROUTING -p tcp --dport http -j SNAT --to-source <adsl_ip> iptables -t nat -A POSTROUTING -p tcp --dport https -j SNAT --to-source <adsl_ip> iptables -t nat -A POSTROUTING -p tcp --dport pop3 -j SNAT --to-source <adsl_ip> iptables -t nat -A POSTROUTING -p tcp --dport imap -j SNAT --to-source <adsl_ip> ... Всичко останало към втория провайдер: iptables -t nat -A POSTROUTING -j SNAT --to-source <second_isp_ip>
За да се праща трафика правилно е необходим и малко policy routing (примерно!):
echo "200 btc" >> /etc/iproute2/rt_tables #(това еднократно!)
ip rule add from 192.168.1.2 table btc #(ip-то което adsl модема е дал) ip route add default via 192.168.1.1 table btc #(ip-то на adsl модема)
Така всичкия трафик nat-нат към btc ще бъде пратен на adsl-а и сътветно ще се върне от там. Всичко останало ще се nat-не към втория провайдер и ще излезе/върне през него. Предполага се че default gw сочи към втория провайдер. Ако няма default gw или не сочи към втория провайдер:
echo "201 isp" >> /etc/iproute2/rt_tables #(това еднократно!) ip rule add from <second_isp_ip> table isp ip route add default via <second_isp_gw> table isp
С наблюдение на трафика и добавяне на nat правила в iptables ще се получи доста добър баланс на двата интерфейса, даже изобщо не са необходими публични ip-та за да работи коректно.
Правилата може да се развият още повече. Примерно ако се знае втория провайдер с кои други isp-та има директна свързаност ( и дава по-висока скорост):
iptables -t nat -I POSTROUTING -d 1.2.3.4/24 -j SNAT --to-source <second_isp_ip>
Така целия трафик насочен към провайдери във същия град ще излиза/влиза през втория провайдер. Ако не е към потребители от същия град, но е http/ftp/pop3/imap/etc към бтк. Във всички останали случаи към втория провайдер.
Подобна схема работи перфектно когато зад рутера има повечко потребители, т.е. има по-разнообразен трафик със сравнително малко правила.
PS: Правилата в iptables може да се направят и по-подредени и прегледни:
iptables -t nat -N MYCITY iptables -t nat -N BTC iptables -t nat -N ISP
iptables -t nat -F POSTROUTING iptables -t nat -A POSTROUTING -j MYCITY iptables -t nat -A POSTROUTING -j BTC iptables -t nat -A POSTROUTING -j ISP iptables -t nat -A POSTROUTING -j MASQUERADE
Съответно за мрежи във същия град:
iptables -t nat -A MYCITY -d 1.2.3.4/24 -j SNAT --to-source <second_isp_ip> ...
За download през бтк:
iptables -t nat -A BTC -p tcp --dport http -j SNAT --to-source 192.168.1.2 ...
За всички останали:
iptables -t nat -А ISP -j SNAT --to-source <second_isp_ip>
Така правилата са подредени и до последното правило в POSTROUTING би трябвало никога да не се стига. С "iptables -t nat -L <MYCITY/BTC/ISP> -nv" може да се гледа къде колко трафик отива.
Титла: Load balance
Публикувано от: Slevin_ в Apr 03, 2008, 09:24
Цитат (teleport @ Април 03 2008,09:12) | Целия интернет е несиметричен. Пакетите обикновенно не се движат по един и същ път в двете посоки.
Замисъла се получава така: неоходимо е човека да има 2-те публични ip-та на рутера си ( а бтк обикновенно оставят публичното ip в модема! ). |
//offtopic
Мерси за разясненията teleport. Иначе, да запознат съм с това, че пакетите е възможно да пътуват по-различни пътища. В зависимост от анонсите по BGP или какъвто и да е друг рутинг протокол. Принципно, ми беше ясно какво трябва да се направи, само напрактика се чудех как би се реализирало(в ситуацията на bobibiturboto как би се получило). А и не бях преценил, че също е възможно да настрои модема в бридж-режим и публичния адрес директно да се назначи по PPPoE на маршрутизатора. Поздрави
Титла: Load balance
Публикувано от: bobibiturboto в Apr 03, 2008, 10:32
@teleport благодаря ти за изчерпанетния отговор но ако може да ми се направи разяснение . Правилата които съм задал по примера посочен от мен да си останат ли така непроменени и просто да допълня с това което @teleport ме съветва В примера трябва ли да задавам нови таблици като btc и isp или да заменя въпросните с моите както е в случая BTK и Opti. Нуждая се от малко по подробно обяснение понеже такъв load balance не съм правил до сега единствено имам опит за балансе със cisco рутер но там нещата бяха други ползваше се RIP и аз правих аналогия че трябва да е подобно и със Linux но се вижда че нещата са съвсем други. А за самата тема мисля че е много актуална понеже в провинцията е така изгоден и с голям download интернет от адсл но със никакъв upload. Пък местните доставчици предлагат по ниска скорост но със симетричен upload при което ако се направи подобна комбинация нещата се получават по истински. И не на последно място искам да изкажа благодарност на всички включили се в темата!!!
Титла: Load balance
Публикувано от: Slevin_ в Apr 03, 2008, 13:10
Цитат (bobibiturboto @ Април 03 2008,11:32) | В примера трябва ли да задавам нови таблици като btc и isp или да заменя въпросните с моите както е в случая BTK и Opti. |
Може да ползваш тези таблици, които си създал в /etc/iproute2/rt_tables. Принципно сигурно си го видял, но: http://lartc.org/howto/lartc.rpdb.multiple-links.html
Титла: Load balance
Публикувано от: teleport в Apr 04, 2008, 00:22
// offtopic Цитат | А и не бях преценил, че също е възможно да настрои модема в бридж-режим и публичния адрес директно да се назначи по PPPoE на маршрутизатора. |
Ако откриеш начин по който се прави и го публикуваш ще получиш тирове с бира от благодарни домашни бтк адсл потребители.
// oftopic
bobibiturboto:
Рутинг възможностите на линукс са значително по-големи отколкото на циско серий по-малки от 7000. Cisco ( и изобщо стандартните протоколи ) рутират само по destination. Дали ще е mac, ipv4, ipv6 няма значение, source адреса в пакета ( mac/ipv4/ipv6 ) се игнорира напълно когато преминава през рутера и не е предназначен за него.
Разгледай внимателно сайта който Slevin_ ти е дал. Но преди това виж това: http://iptables-tutorial.frozentux.net/iptables-tutorial.html Има много хубави картинки които ще ти изяснят напълно какво точно се случва с всеки пакет от стъпването на мрежовата карта до излизането му обратно в мрежата, съответно от генерирането на пакет от локалната машина до излизането през мрежовата карта.
Титла: Load balance
Публикувано от: Slevin_ в Apr 04, 2008, 10:25
Цитат (teleport @ Април 04 2008,01:22) | // offtopic
Ако откриеш начин по който се прави и го публикуваш ще получиш тирове с бира от благодарни домашни бтк адсл потребители. |
//offtopic Принципно, не аз съм открил топлата вода, но има начин стига да се знае паролата за достъп до модема. Ако те интересува нещо, може но на лични.
|