2xDSL [gotowiec]

Wiktor R. Braun security w convector.com.pl
Pią, 26 Wrz 2003, 10:04:14 CEST


DreameR napisał(a):
> Czy moze ktos laczyl kiedys 2 lacza DSL w jedno? tak by dynamicznie je
> obciazyc?

To nie muszą być łącza DSL, aby działało. Sprawdzone 'Load Banancing':

Założenia:
==========
LAN  = eth0  (dowolna podsieć: 10.0.0.0/8 172.16.0.0/12 192.168.0.0/16)
DSL1 = eth1  (moim skromnym zdaniem, dobrze na każde łącze dać inną
DSL2 = eth2  (kartę sieciową, ale można to też zrobić na jednej)

DSL1 i DSL2 mają po 512 Kbps i 'niby' cztery ip dla abonenta :D Punkt 10.

DSLx_NW = x.x.x.nw/30 (adres podsieci z maską /30, patrz punkt 8)
DSLx_GW = x.x.x.gw    (modem czyli nasza bramka dla DSL'a)
DSLx_IP = x.x.x.ip    (nasz adres serwera dla danego łącza)
DSLx_IF = ethX        (karta sieciowa do naszego DSL'a)

Maski:
======
/30 = 255.255.255.252  (cztery adresy IP, ale tylko jeden jest dla nas !)
/29 = 255.255.255.248  (osiem, jeden na serwer i cztery do wykorzystania)
Sprawdź jaką masz maskę w punkcie 9.

Zastosowanie:
=============
----->8----- /etc/iproute2/rt_tables (dopisać na końcu)
100	LAN
101	DSL1
102	DSL2

----->8----- /etc/sysconfig/interfaces/ifcfg-eth1 (dopisać na końcu)
run_up()
{
	ip ro add $DSL1_NW dev $DSL1_IF src $DSL1_IP table DSL1
	ip ro add default via $DSL1_GW dev $DSL1_IF table DSL1
	ip ru add prio 101 from $DSL1_IP table DSL1

	route del default >/dev/null 2>&1
	ip ro add default via $DSL1_GW dev $DSL1_IF
	ip ro flush cache
}
run_down()
{
	ip ru del prio 101 from $DSL1_IP table DSL1
}

----->8----- /etc/sysconfig/interfaces/ifcfg-eth2 (dopisać na końcu)
run_up()
{
	ip ro add $DSL2_NW dev $DSL2_IF src $DSL2_IP table DSL2
	ip ro add default via $DSL2_GW dev $DSL2_IF table DSL2
	ip ru add prio 102 from $DSL2_IP table DSL2

	route del default >/dev/null 2>&1
	ip ro add default scope global \
		nexthop via $DSL1_GW dev $DSL1_IF weight 1 \
		nexthop via $DSL2_GW dev $DSL2_IF weight 1
	ip ro flush cache
}
run_down()
{
	ip ru del prio 102 from $DSL2_IP table DSL2
}

Waga (weight):
==============
Przy powyższym obie wagi są równe, ale jeśli DSL1=1Mbps, a DSL2=512Kbps
to należy wpisać dla DSL1 wartość 2, przy DSL2 zostawić 1. Wtedy będzie
równomierne rozłożenie obciążenia na oba łącza.

Uwagi:
======
Jeśli chcesz 'puścić' jakąś usługę przez konkretne łącze, to dopisz
przed 'ip ro flush cache' odpowiednią trasę, dwa przykłady:

# w3cache.tpnet (/32)
route add -host 217.98.20.195 gw $DSL1_GW
# Gadu-Gadu.pl (/29)
route add -net 217.17.41.80   netmask 255.255.255.248 gw $DSL2_GW

lub (iproute2):
ip ro add 217.98.20.195   via $DSL1_GW
ip ro add 217.17.41.80/29 via $DSL2_GW

Trochę humoru:
==============
Nasi konsultanci pod numerem telefonu 0 800 100 000 udzielą Państwu
odpowiedzi na wszelkie pytania dotyczące usługi dostęp do Internetu
DSL TP.

PS: te punkty do których się owołuję, są na danych dostarczonych od
TPSA pod nazwą: 'Parametry usługi - dostęp do Internetu DSL TP'

-- 
Pozdrawiam, Wiktor R. Braun



Więcej informacji o liście dyskusyjnej pld-users-pl