|
от zazzko(12-12-2003)
рейтинг (15)
[ добре ]
[ зле ]
Вариант за отпечатване
Ограничаване на трафика
Оригинал : Tomasz Chmielewski
Превод : Динко Белчевски
Този документ обяснява как да ограничим скоростта на трансфер на една Linux машина.Той
е превод (със съкращения) на Bandwith-Limiting-HOWTO разпространяван
със Slackware.Трябва да отбележа, че този документ е писан края на 2001 г.
и до момента не е променен в дистрибуцията на Slackware. Поради това
версиите на програмите може да не са съвсем актуални, както и част от
информацията. Затова използвайте този документ като основа, но не и
като решение на всички проблеми.
Съдържание
1. Въведение
1.1. Преди да започнем.
1.2. От какво се нуждаем.
1.3. Как работи всичко това?
2. Инсталиране и конфигуриране на необходимите програми
2.1. Инсталиране на Squid с активирани delay pools(а преведи го де)
2.2. Конфигуриране на Squid
2.3. Разрешаване на възникнали проблеми
3. Ограничаване на трафика на останалите протоколи чрез CBQ
3.1. FTP
3.2. Napster(то май не се използва вече),Realaudio,Windows Media и т.н.
4. FAQ
4.1. Възможно ли е ограничаване на скоростта за всеки потребител чрез използването на delay pools?
4.2. Как да накарам Wget да работи със Squid?
4.3. Настроих си собствения SOCKS сървър да слуша на порт 1080, и сега не мога да се вържа към който и да било IRC сървър.
4.4. Не ми харесва когато Kazaa или Audiogalaxy използват цялата лента при upload.
4.5. Моя изходящ mail сървър изяжда целия канал.
4.6. Мога ли да огранича моя собствен FTP или WWW сървър подобно на показаното във въпроса по-горе?
4.7. Мога ли да огранича скоростта по потребители чрез CBQ?
4.8. Когато стартирам cbq.init, той съобщава за липсващ sch_cbq.
4.9. CBQ понякога не работи без основателна причина.
4.10. Delay pools са тъпи;не може ли да си свалям на пълната скорост когато само аз използвам мрежата?
4.11. Моят download спира в 23:59 със съобщение "acl day time 09:00-23:59" в squid.conf.Какво да направя?
4.12. Журналите на Squid растат много бързо, какво да направя?
4.13. CBQ е тъпо;не може ли да си свалям на пълната скорост когато само аз използвам мрежата?
5. Допълнителна информация
5.1. Полезни връзки
1. Въведение
Целта на този документ е да запознае читателя с начините за ограничаване на
скоростта на входящия и изходящия трафик, така че да се избегне използването на
цялата скорост на Интернет връзката от потребителите на вашата мрежа.
Това е важно когато вашата Интернет връзка е бавна, а пък потребителите ви
свалят тонове MP3-ки и последните Linux дистрибуции.
Последната версия на този документ може да бъде намерена в Интернет на адрес
http://www.linuxdoc.org.
1.1. Преди да започнем
Нека си представим следната ситуация:
* Имаме 115,2 kbit/s ppp(модем) връзка към Интернет (115,2/10 = 11,5 kbytes/
s).Забележка: за eth връзка (мрежова карта), бихме разделили 115,2 на 8, но
за ppp връзка се дели на 10, поради старт и стоп битовете.
* Имаме няколко LAN свързани компютъра, чийто потребители правят голям
трафик.
* Желаем страниците да се отварят бързо, независимо от това колко
потребители свалят в момента.
* Предполага се, че Интернет връзката е ppp0.
* Мрежовия интерфейс е eth0.
* Мрежовия адрес е 192.168.1.0/24.
1.2. От какво се нуждаем
За да накараме всичко да работи се нуждаем от Squid прокси сървър, малко познания
по ipchains или iptables и CBQ. Това е :). Ако желаете можете да инсталирате IPTraf, за да следите скоростта и трафика.
1.3. Как работи всичко това
Squid е може би най-добрия прокси сървър за Linux. Той може да ни помогне да спестим
трафик и скорост по два начина:
* Първият е основната черта на прокси сървърите - те пазят свалените страници,
картинки и други обекти в своя кеш (в паметта или на локалния диск). Когато
те се заявят за сваляне от двама потребителя, вече не се свалят от Интернет,
а от локалния кеш.
* Отделно от основния кеш, Squid притежава специална особеност наречена delay
pools. Благодарение на delay pools,е възможно да се ограничи скоростта на
Интернет трафика, чрез т.н. 'magic words'(от тук нататък ще ги наричам шаблони),
които съществуват във всеки един URL адрес. Например такъв шаблон може да е
'.mp3','.exe' или '.avi'. Всяка специална част от адреса (като .avi) може да
бъде дефинирана като шаблон.
Така ние може да накараме Squid да сваля тези адреси със зададена от нас скорост
(да кажем с 5 kbytes/s). Ако вашите потребители започнат да свалят файлове
едновременно, то те ще свалят тези файлове всичко на всичко с 5 kbytes/s, оставяйки
останалите за Интернет страници, електронна поща, IRC и др.
Разбира се Интернет не се използва само за сваляне на файлове през http и ftp. На
по-късен етап ние ще разгледаме и ограничаване на скороста на Napster,Realaudio и
др.
2. Инсталиране и конфигуриране на необходимите програми
2.1. Инсталиране на Squid с активирани delay pools
Както бе отбелязано Squid притежава една особеност наречена delay pools, която
ни позволява да ограничим скоростта. За съжаление в повечето дистрибуции тази
възможност не е активирана.
Ако вече имате инсталиран Squid, ще не наложи да ви разочаровам - ще трябва да го
деинсталирате и да го инсталирате отново, но вече с включени delay pools.
1. За да вземете максималното от вашия Squid, ще трябва да го инсталирате на
отделен дял, за неговия кеш (например наречен /cache). Неговия размер трябва
да е около 300МВ, в зависимост от нуждите ви.
Разбира се може да се използва и директория ( /cache) на главния дял.
2. Сега ще добавим 'squid' потребител:
# useradd -d /cache/ -r -s /dev/null squid >/dev/null 2>&1
Никой няма да може да се регистрира като 'squid', включително и 'root'.
3. Ще свалим изходния код на Squid от http://www.squid-cache.org
По време на писане на статията последната версия е Squid 2.4.
4. Разархивираме кода в /var/tmp:
# tar xzpf squid-2.4.STABLE-src.tar.gz
5. Компилираме и инсталираме Squid (всичко едновременно):
# ./configure --prefix=/opt/squid --exec-prefix=/opt/squid
--enable-delay-pools --enable-cache-digests --enable-poll
-- disable-ident-lookups --enable-truncate --enable-removal-policies
# make all
# make install
2.2. Конфигуриране на Squid
1. Конфигуриране на squid.conf
#squid.conf
#Всяка една от опциите е добре документирана в оригиналния squid.conf и на
#адрес http://www.visolve.com/squidman/Configuration%20Guide.html
#
#Портовете на които ще 'слуша' Squid.
http_port 8080
icp_port 3130
#cgi-bins няма да се кешира.
acl QUERY urlpath_regex cgi-bin \?
no_cache deny QUERY
#Паметта, която ще използва Squid. Всъщност тя е малко повече от зададената.
cache_mem 16 MB
#205 означава, че Squid ще използва 250МВ от диска.
cache_dir ufs /cache 250 16 256
#Местоположение на журналните файлове на Squid.
cache_log /var/log/squid/cache.log
cache_access_log /var/log/squid/access.log
cache_store_log /var/log/squid/store.log
cache_swap_log /var/log/squid/swap.log
#Колко пъти ще се презапишат журналите преди да бъдат изтрити.
#Вижте FAQ за повече информация.
logfile_rotate 10
redirect_rewrites_host_header off
cache_replacement_policy GDSF
acl localnet src 192.168.1.0/255.255.255.0
acl localhost src 127.0.0.1/255.255.255.255
acl Safe_ports port 80 443 210 119 70 20 21 1025-65535
acl CONNECT method CONNECT
acl all src 0.0.0.0/0.0.0.0
http_access allow localnet
http_access allow localhost
http_access deny !Safe_ports
http_access deny CONNECT
http_access deny all
maximum_object_size 3000 KB
store_avg_object_size 50 KB
#Настройте тук ако желаете Squid да работи в 'прозрачен' режим.
#Това означава, че няма да се наложи да се настройват всички клиенти,
#но се получават някои усложнения.
#Оставяне на коментарите е добра идея.
httpd_accel_host virtual
httpd_accel_port 80
httpd_accel_with_proxy on
httpd_accel_uses_host_header on
#всички ваши потребите ще идентифицират пред сървърите
#като използващи Mozilla под Linux. :)
anonymize_headers deny User-Agent
fake_user_agent Mozilla/5.0 (X11; U; Linux i686; en-US; rv:0.9.6+) Gecko/20011122
#To make our connection even faster, we put two lines similar
#to the ones below. They will point a parent proxy server our own Squid
#will use. Don't forget to change the server to the one that will
#be fastest for you!
#Measure pings, traceroutes and so on.
#Make sure that http and icp ports are correct.
#Премахнете коментарите на "cache_peer" ако е необходимо.
#Това е проксито, което ще използвате за всички връзки...
#cache_peer w3cache.icm.edu.pl parent 8080 3130 no-digest default
#...освен връзките от IP адреси започващи с "!".
#Добра идея е да не се използва по-високо
#cache_peer_domain w3cache.icm.edu.pl !.pl !7thguard.net !192.168.1.1
#Това е полезно когато искате да използвате Cache Manager.
#Копирайте cachemgr.cgi в cgi-bin директорията на вашия WWW сървър.
#Може да го използвате чрез написване на следния адрес в браузъра:
#http://your-web-server/cgi-bin/cachemgr.cgi
cache_mgr your@email
cachemgr_passwd secret_password all
#Това е името под което ще работи Squid.
cache_effective_user squid
cache_effective_group squid
log_icp_queries off
buffered_logs on
#####DELAY POOLS
#Това е най-важната част от ограничаването на входящия трафик чрез Squid
#За подробна информация вижте squid.conf или http://www.squid-cache.org
#Не желаем да ограничаваме скороста във вътрешната мрежа.
acl magic_words1 url_regex -i 192.168
#Чрез долният ред се дефинират типовете.
#Сложете всички тях в един ред.
acl magic_words2 url_regex -i ftp .exe .mp3 .vqf .tar.gz .gz .rpm .zip .rar .avi .mpeg .mpe .mpg .qt
.ram .rm .iso .raw .wav .mov
#Няма да ограничаване файлове с разширения .html,.gif,.jpg и подобни,
#защото те не консумират много скорост.
#Сега ще разграничим деня на две зони.
#През нощта сваляме ограниченията.
#Внимание! Използването на този подход ще прекъсни всички сваляния
#в 23:59. Прочетете FAQ за повече информация.
acl day time 09:00-23:59
#Ние имаме две различни delay_pools
#Разгледайте документацията на Squid, за да се запознаете
#с delay_pools и delay_class.
delay_pools 2
#Първият delay pool
#Не искаме да забавяме локалния трафик.
#Има три pool класа; тук работим само с втория.
#Първият delay class (1) от втори тип (2).
delay_class 1 2
#-1/-1 означава, че няма ограничения.
delay_parameters 1 -1/-1 -1/-1
#magic_words1: 192.168 която я настроихме по-рано
delay_access 1 allow magic_words1
#Вторият delay pool.
#чрез него забавяме трафика дефиниран с magic_words2.
#Втория delay class (2) от втори тип (2).
delay_class 2 2
#Всичко е в байтове;
#Трябва да запомним, че Squid не взема под внимание start/stop битовете
#5000/150000 са стойностите за цялата мрежа
#5000/120000 са стойностите за единично IP
#когато размерът на прехвърлената информация стане над 150000 байта,
#те ще продължат да свалят с 5000 bytes/s
delay_parameters 2 5000/150000 5000/120000
#Часовия диапазон, който дефинирахме по-рано 09:00-23:59.
delay_access 2 allow day
delay_access 2 deny !day
delay_access 2 allow magic_words2
#EOF
Когато всичко е конфигурирано е време да бъде изпробвано.
# mkdir /var/log/squid/
# chown squid:squid /var/log/squid/
# chmod 770 /var/log/squid/
# chown -R squid:squid /opt/squid
# chown -R squid:squid /cache/
#/opt/squid/bin/squid -z
Сега вече може да се стартира прокси сървъра. Добра програма за следене на
трафика е IPTraf. Чрез нея може да проверим и работоспособността на така
стартираното прокси. Може да го свалите от http://freshmeat.net. Не забравяйте
да конфигурирате всички браузъри към правилното прокси(например 192.168.1.1
порт 8080 например).Сега вече може да стартираме Squid:
# /opt/squid/bin/squid
Ако всичко работи може да добавим /opt/squid/bin/squid във вашия инициализиращ
скрипт. Обикновено това е /etc/rc.d/rc.local.
Други полезни опции са:
# /opt/squid/bin/squid -k reconfigure (това ще преконфигурира Squid с новите
промени в squid.conf)
# /opt/squid/bin/squid -help (без коментар)
2.3. Разрешаване на възникнали проблеми
Инсталирахме и конфигурирахме Squid с използване на delay pools. Това обаче не е
достатъчно. Предполага се, че използвате IP-masquerade, което ще позволи на вашите
потребители да използват IRC, ICQ, електронна поща и др. Това добре, обаче трябва
сме сигурни, че вашите потребители ще използват Squid за достъп до web страници
и ftp. За тази цел ще използваме ipchains (за ядра 2.2.х) или iptable ( за ядра
2.4.х).
2.3.1. Използване на ipchains ( за ядра 2.2.х)
Ще опитаме да забраним достъпа до публични прокси сървъри, така че вашите
потребители да не ги използват вместо локалния. Повечето от тях работят на
портове 3128 и 8080:
#/sbin/ipchains -A input -s 192.168.1.1/24 -d ! 192.168.1.1 3128 -p TCP -j REJECT
#/sbin/ipchains -A input -s 192.168.1.1/24 -d ! 192.168.1.1 8080 -p TCP -j REJECT
Трябва да сме сигурни, че никой няма да се върже директно с Интернет:
#/sbin/ipchains -A input -s 192.168.1.1/24 -d ! 192.168.1.1 80 -p TCP -j REDIRECT 8080
Когато сте сигурни, че всичко работи правилно, добавете тези редове във вашите
инициализиращи скриптове.Обикновено това е /etc/rc.d/rc.local.
Ако мислите да блокирате достъпа да FTP (портове 20 и 21),така че да се
преминава през Squid, то това не е добра идея поради най-малко две причини:
* Squid е http прокси, а не ftp прокси.Той може да сваля и до известна степен
да качва на ftp, но не може да изтрива или преименува файлове.
* IE 5.5 има бъг - той не използва прокси, за да сваля от ftp, вместо това
той използва IP-masquerade. Поради тази причина ако блокираме портове 20 и
21 няма да може да използваме IE 5.5 за достъп до ftp.
2.3.2. Използване на iptables ( за ядра 2.4.х )
#/sbin/iptables -A FORWARD -s 192.168.1.1/24 -d 192.168.1.1 --dport 3128 -p TCP -j DROP
#/sbin/iptables -A FORWARD -s 192.168.1.1/24 -d 192.168.1.1 --dport 8080 -p TCP -j DROP
#/sbin/iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 8080
За повече информация, защо правим това по този начин прочетете горната глава.
3. Ограничаване на трафика на останалите протоколи чрез CBQ
Трябва да запомним, че вашите LAN потребители могат да развалят вашите усилия
просто използвайки Kazaa или нещо от този род, пък и все още не сме ограничили
скоростта на сваляне от ftp.
Това ще направим не директно, а индиректно. Ако вашата връзка към Интернет се
осъществява през ppp0, а LAN интерфейса ви е eth0, ние ще ограничим скоростта
на изхода на eth0, и по този начин ще ограничим скоростта на входа на ppp0.
За да направим това трябва да използваме CBQ и cbq.init. Може да ги намерите на
ftp://ftp.equinox.gu.net/pub/linux/cbq/. Свалете го и го копирайте в /etc/rc.d/.
Освен това трябва да инсталирате iproute2 ако го нямате инсталиран.
Сега погледнете в /etc/sysconfig/cbq/. Там трябва да имате примерен файл, който
би трябвало да работи със cbq.init. Ако такъв липсва, то или не сте го компилирали
в ядрото или не е представен като модул. Във всички случаи трябва да сложите
примерните файлове в тази директория и да проверите дали ще проработи.
3.1. FTP
Трябва да създадете файл cbq-10.ftp-network в /etc/sysconfig/cbq/
#touch /etc/sysconfig/cbq/cbq-10.ftp-network
Добавете следните редове в него:
DEVICE=eth0,10Mbit,1Mbit
RATE=15Kbit
WEIGHT=1Kbit
PRIO=5
RULE=:20,192.168.1.0/24
RULE=:21,192.168.1.0/24
Стартирайте CBQ и ако всичко е наред го добавете в скриптовете за автоматично
стартиране ( тук е показана работата с версия 0.6.2 ):
#/etc/rc.d/cbq.init-v0.6.2 start
Сега вече вашия сървър няма да изпраща информация с повече от 15Kbit през eth0
и по такъв начин няма да може да сваля информация с повече от 15Kbit от Интернет.
3.2. Napster(то май не се използва вече),Realaudio,Windows Media и т.н
Идеята на това което ще направим е подобна на тази при ftp.
Създайте файл cbq-50.naster-network в /etc/sysconfig/cbq и добавете следните
редове:
DEVICE=eth0,10Mbit,1Mbit
RATE=35Kbit
WEIGHT=3Kbit
PRIO=5
#Window Media Player
RULE=:1755,192.168.1.0/24
#Real Player
RULE=:554,192.168.1.0/24
RULE=:7070,192.168.1.0/24
#Naster
RULE=:6699,192.168.1.0/24
RULE=:6700,192.168.1.0/24
#Audiogalaxy използва портове от 41000 до 41900.Изброяването им ще е
#най-малко досадно.Затова отрязваме портове от 41031-41900 и ще
#опишем само портове от 41000-41031.
RULE=:41000,192.168.1.0/24
RULE=:41001,192.168.1.0/24
#и т.н. до порт 41031
RULE=:41030,192.168.1.0/24
#Някой по хитри потребители могат да се свържат към SOCKS
#сървъри когато използват Napster,Kazaa и т.н. Затова е добра идея да
#се направи нещо по въпроса, когато стартирате собствено SOCKS прокси.
RULE=:1080,192.168.1.0/24
#Може да добавите собствени правила, следейки кои портове се използват
#чрез IPTraf по аналогичен начин.
#RULE=:port,192.168.1.0/24
Сега ще отрежем портовете използвани от Audiogalaxy:
За ядра 2.2.х:
#/sbin/ipchains -A input -s 192.168.1.1/24 -d ! 192.168.1.1 41031:41900 -p TCP
-j REJECT
За ядра 2.4.х
#/sbin/iptables -A FORWARD -s 192.168.1.1/24 -d ! 192.168.1.1 --dport 41031:
41900 -p TCP -j REJECT
Добавете тези редове в инициализиращите скриптове.
4. FAQ
4.1. Възможно ли е ограничаване на скоростта за всеки потребител чрез използването на delay pools?
Да.Погледнете документацията на squid.conf или проверете документацията на адрес http://www.squid-cache.org.
4.2. Как да накарам Wget да работи със Squid?
Просто е.Създайте файл .wgetrc в собствената си директория и добавете следните
редове там:
HTTP_PROXY=192.168.1.1:8080
FTP_PROXY=192.168.1.1:8080
Ако искате да направите тези настройки глобални напишете man wget :).
4.3. Настроих си собствения SOCKS сървър да слуша на порт 1080, и сега не мога да се вържа към който и да било IRC сървър.
Възможни са две причини.
Ако той е отворен, което означава, че всеки може да го използва от всяко място.
Това е дупка в сигурността, който трябва да премахнете.Освен това повечето
IRC сървъри не позволяват такива сървъри да се свързват с тях.
Даже да сте сигурни, че вашия SOCKS е затворен, то някои IRC сървъри отново
могат да откажат връзка с тях - те просто проверяват дали SOCKS сървъра
работи на порт 1080. Решението е да промените порта.
4.4. Не ми харесва когато Kazaa или Audiogalaxy използват цялата лента при upload.
Действително това не е приятно, но е лесно разрешимо.
Създайте файл с име /etc/sysconfig/cbq/cbq-15.ppp и напишете следните редове
(предполага се, че вашия изходящ интерфейс е ppp0).
DEVICE=ppp0,115Kbit,11Kbit
RATE=15Kbit
WEIGHT=2Kbit
PRIO=5
TIME=01:00-07:59;110Kbit/11Kbit
RULE=,:21
RULE=,213.25.25.101
RULE=,:1214
RULE=,:41000
RULE=,:41001
#И така до 41030
RULE=,:41030
4.5. Моя изходящ mail сървър изяжда целия канал .
Просто добавете реда:
RULE=,:25
4.6. Мога ли да огранича моя собствен FTP или WWW сървър подобно на показаното във въпроса по-горе?
По принцип, да. Обаче всички те си имат собствени начини за ограничаване
на скоростта, които са за предпочитане.
Ядра 2.4.х
/sbin/iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 25 -j REDIRECT
--to-port 25
Ядра 2.2.х
/sbin/ipchains -A input -s 192.168.1.1/24 -d ! 192.168.1.1 25 -p TCP -j
REDIRECT 25
4.7. Мога ли да огранича скороста по потребители чрез CBQ?
Да, възможно е. Разгледайте скрипта cbq.init, там има някои примери.
4.8. Когато стартирам cbq.init, той съобщава за липсващ sch_cbq.
Вероятно нямате инсталирани CBQ модулите. Ако сте компилирали CBQ в ядрото
сложете в коментар следните редове:
# if ! modprobe $module; then
# echo "**CBQ: could not load module $module"
# exit
# fi
4.9. CBQ понякога не работи без основателна причина. Това не трябва да се случва. Понякога може да наблюдавате голям трафик,
въпреки че сте ограничили необходимите портове. В този случай може да
използвате IPTraf, за да разберете кой порт е бил използван. Обаче
възможните портове са много, затова е по лесно да инсталирате собствено
SOCKS прокси - много по-лесно е да наблюдавате един единствен порт. Не
забравяйте обаче да затворите всички портове и да оставите отворени
портове 25 и 110.
4.10. Delay pools са тъпи;не може ли да си свалям на пълната скорост когато само аз използвам мрежата?
За съжаление не можете да направите много по този въпрос.
Единственото което може да се направи е да се конфигурира cron да изключва
delay pools в 1:00 и да ги включва отново в 7:30 часа.
За да направите това създайте два файла squid.conf-day и squid.conf-night и
ги поставете в /opt/squid/etc/.
Файла squid.conf-day е копие на оригиналния файл, а файла squid.conf-night
е отново копие на оригиналния, но в него премахнати редовете за delay pools.
Сега вече трябва да се конфигурира crond чрез добавяне на следните редове
в /etc/crontab
#SQUID
01 9 * * * root /bin/cp -f /opt/squid/etc/squid.conf-day /opt/squid/etc/squid.conf;
/opt/squid/bin/squid -k reconfigure
59 23 * * * root /bin/cp -f /opt/squid/etc/squid.conf-night /opt/squid/etc/squid.conf;
/opt/squid/bin/squid -k reconfigure
4.11. Моят download спира в 23:59 със съобщение "acl day time 09:00-23:59" в squid.conf.Какво да направя?
Вие може да постигнете това премахвайки редовете acl от squid.conf и също
"delay_access 2 allow dzien delay_access 2 deny !dzien".
4.12. Журналите на Squid растат много бързо, какво да направя?
Най-добрия начин е да използвате logrotate, обаче трябва да използвате малък
трик, за да работи със squid. Сложете следните редове в /etc/crontab:
#SQUID - logrotate
01 4 * * * root /opt/squid/bin/squid -k rotate; /usr/sbin/logrotate /etc/logrotate.conf;
/bin/rm -f /var/log/squid/*.log.0
Сега трябва да се конфигурира logrotate да се стартира в 04:01, така че
премахнете всички стартиращи файлове на logrotate, например в /etc/cron.daily/.
/etc/logrotate.d/syslog:
#SQUID logrotate - ще пази журналите 40 дена
/var/log/squid/*.log.0 {
rotate 40
compress
daily
postrotate
/usr/bin/killall -HUP syslogd
endscript
}
4.13. CBQ е тъпо;не може ли да си свалям на пълната скорост когато само аз използвам мрежата?
Възможно е.Има два начина да постигнете това.
Първия и по-лесен е подобен на решението, което направихме със Squid.
Добавете следния ред в /etc/sysconfig/cbq/:
TIME=00:00-07:59;110Kbit/11Kbit
Можете да имате множество TIME декларации в конфигурационните файлoве на CBQ.
Обаче бъдете внимателни, поради малка грешка в cbq.init-v0.6.2 скрипта,
не може задавате някои времена като 00:00-08:00 например. За да проверите
дали всичко е наред изпълнете следната команда:
/etc/rc.d/cbq.init-v0.6.2 timecheck.
Това е пример на коректен изход:
[root@mangoo rc.d]#./cbq.init start; ./cbq.init timecheck **CBQ: 3:44: class
10 on eth0 changed rate (20Kbit -> 110Kbit) **CBQ: 3:44: class 40 on ppp0
changed rate (15Kbit -> 110Kbit) **CBQ: 3:44: class 50 on eth0 changed rate
(35Kbit -> 110Kbit)
А това за грешен изход:
[root@mangoo rc.d]#./cbq.init start; ./cbq.init timecheck **CBQ: 3:54: class
10 on eth0 changed rate (20Kbit -> 110Kbit) ./cbq.init: 08: value too great
for base (error token is "08")
Втория начин да направите CBQ интелигентен е по-труден - той не зависи от
времето. Може да прочетете за него в Linux 2.4 Advanced Routing HOWTO, и
използване на tc командата.
5. Допълнителна информация
5.1. Полезни връзки
Домашната страница на Squid:
http://www.squid-cache.org
Squid 2.4 Stable 1 ръководство
http://www.visolve.com/squidman/Configuration Guide.html
http://www.visolve.com/squidman/Delaypool parameters.html
Squid FAQ
http://www.squid-cache.org/Doc/FAQ/FAQ-19.html#ss19.8
CBQ скрипт
http://www.linuxdoc.org/HOWTO/Adv-Routing-HOWTO.html
Контролиране на трафика (на Полски)
http://ceti.pl/~kravietz/cbq/
IPTraf
http://cebu.mozcom.com/riker/iptraf/
IPCHAINS
http://www.linuxdoc.org/HOWTO/IPCHAINS-HOWTO.html
<< Инсталация на Fedora Linux 1.0 | Конфигуриране на виртуален хост >>
|
|