Freesco, NND, CDN, EOS
http://forum.freesco.pl/

load balancing - prawidłowe ustawienia
http://forum.freesco.pl/viewtopic.php?f=22&t=16342
Strona 1 z 1

Autor:  ziolko [ wtorek, 18 grudnia 2007, 03:12 ]
Tytuł:  load balancing - prawidłowe ustawienia

Czy powinien działać prawidłowo podany niżej kod ?
Na jednym łączu jest OK. Po włączeniu drugiego łącze przestaje działać .
Czyli działa na:
ip route add default table T5B \
nexthop via 83.x.xxx.1 dev eth4

nie działa na :
ip route add default table T5B \
nexthop via 83.x.xxx.x dev eth4 \
nexthop via 83.x.xxx.233 dev eth3

Objaw złej pracy:
Strony przestają się ładować po chwili od włączenia. DNS działa.

Proszę o pomoc w rozwiązaniu problemu.

NND 2.4.32-12
: [/] [] ()
#!/bin/sh

PATH="/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin"
# zatrzymujemy niceshapera
echo "NS STOP"
niceshaper stop

echo 0 > /proc/sys/net/ipv4/conf/all/rp_filter

echo "Czyszczenie"

ip route flush table T1
ip route flush table T2
ip route flush table T3
ip route flush table T4
ip route flush table T5B

ip route del default

ip rule del fwmark 4 table T5B

#ip route add default via 83.XX.XXX.129 dev eth0

echo "dsl #1"
ip route add 192.168.0.0/16 dev eth1 table T1 # sieć lokalna 192.168.0.0/16 na interfejsie eth1
ip route add default via 83.XX.XXX.129 table T1 # brama dla DSL #1

echo "dsl #3"
ip route add 192.168.0.0/16 dev eth1 table T3 # sieć lokalna 192.168.0.0/16 na interfejsie eth1
ip route add default via 83.X.XXX.233 table T3 # brama dla DSL #3

echo "dsl #4"
ip route add 192.168.0.0/16 dev eth1 table T4 # sieć lokalna 192.168.0.0/16 na interfejsie eth1
ip route add default via 83.X.XXX.1 table T4 # brama dla DSL #4

ip route del default table T5B

#działa
ip route add default table T5B \
nexthop via 83.X.XXX.1 dev eth4

#nie dziala
#ip route add default table T5B \
#nexthop via 83.X.XXX.1 dev eth4 \
#nexthop via 83.X.XXX.233 dev eth3


echo "ip rule"
ip rule add fwmark 4 table T5B

ip route flush cache
echo "przygotowanie iptables"

iptables -t mangle -F PREROUTING

# markujemy numerkiem 4, wszystko co wpada do eth1 z naszej sieci lokalnej

iptables -t mangle -A PREROUTING -i eth1 -s 192.168.0.0/16 -j MARK --set-mark 4

Autor:  zciech [ wtorek, 18 grudnia 2007, 13:01 ]
Tytuł: 

http://forum.freesco.pl/viewtopic.php?p=68066#68066

Autor:  ziolko [ wtorek, 18 grudnia 2007, 18:29 ]
Tytuł: 

Podane opracowanie znane jest mi.

Czy podany przykład przeze mnie powinien działać ? Co należy zmienić żeby działał prawidłowo?

Zależy mi na zrozumieniu problemu żeby móc samemu wprowadzać potrzebne modyfikacje.

Autor:  zciech [ wtorek, 18 grudnia 2007, 19:59 ]
Tytuł: 

Kto ścieżki prostuje ten w lesie nocuje. :twisted:

Autor:  ziolko [ czwartek, 20 grudnia 2007, 22:21 ]
Tytuł: 

zciech pisze:
http://forum.freesco.pl/viewtopic.php?p=68066#68066


Jak do podanego przykładu zrobić ograniczenie upload’u do każdego łącza ?

W tej chwili mam zrobione ograniczenie uploadu globalnie czyli cały ruch z sieci lokalnej kierowany jest do imq . Kontrolę nad pasmem trzyma NS (htb) . Upload ustawiony mam jako sume uploadu. Sterowanie takie nie jest precyzyjne i w przypadku dls'a powoduje chwilowe przeciążenia.

Autor:  ziolko [ wtorek, 25 grudnia 2007, 13:59 ]
Tytuł: 

Zrobione działa OK.

Autor:  khun [ wtorek, 25 grudnia 2007, 14:43 ]
Tytuł: 

Ziolko możesz opisać w jaki sposób to rozwiązałeś ??

Autor:  ziolko [ wtorek, 25 grudnia 2007, 23:45 ]
Tytuł: 

Dodałem kolejki na interfejsy wyjściowe. Nie działało mi jak zrobione miałem przez filtr u32. Teraz filtr mam z mark'ami i myślę że bardziej elastyczne zarządzanie będzie .
p2p - mark 4
pozostałe - mark 2
Jeszcze testuję wszystko i dostrajam działanie ograniczenia.

Kod wyjściowy dla interfejsu eth0.
: [/] [] ()
TC="/sbin/tc"
ul=57
ulp2p=20
uld=20
uls=5
echo " wyjście  eth0 "
$TC qdisc add dev eth0 root handle 6:0 htb default 103 r2q 1
$TC class add dev eth0 parent 6:0 classid 6:1 htb rate $((ul*8))kbit quantum 1500 burst 0k cburst 0k
$TC class add dev eth0 parent 6:1 classid 6:101 htb rate $((ulp2p*8))kbit ceil $((ul*8))kbit prio 7 quantum 1500 burst 0k cburst 0k
$TC class add dev eth0 parent 6:1 classid 6:102 htb rate $((uld*8))kbit ceil $((ul*8))kbit prio 2 quantum 1500 burst 0k cburst 0k
$TC class add dev eth0 parent 6:1 classid 6:103 htb rate $((uls*8))kbit ceil $((ul*8))kbit prio 7 quantum 1500 burst 0k cburst 0k
$TC filter add dev eth0 parent 6:0 protocol ip handle 4 fw flowid 6:101
$TC filter add dev eth0 parent 6:0 protocol ip handle 2 fw flowid 6:102
$TC qdisc add dev eth0 parent 6:101 esfq perturb 10 quantum 1500 hash src
$TC qdisc add dev eth0 parent 6:102 esfq perturb 10 quantum 1500 hash src
$TC qdisc add dev eth0 parent 6:103 esfq perturb 10 quantum 1500 hash src

Link do tematu class z ns - jeszcze nikt się nie wypowiedział :( :
http://forum.niceshaper.jedwabny.net/viewtopic.php?t=682
class z ns
: [/] [] ()
############### 192.168.0.3 ###
class download eth1 192.168.0.3
        match dstip 192.168.0.3
        ceil 400kb/s
class upload imq0 192.168.0.3
        match srcip 192.168.0.3 mark 4 prio 7
        match srcip 192.168.0.3 mark 2 prio 2
        ceil 152kb/s

Strona 1 z 1 Strefa czasowa UTC+2godz.
Powered by phpBB® Forum Software © phpBB Group
https://www.phpbb.com/