4
|
Linux секция за начинаещи / Настройка на програми / Въпросче за shape при pppoe съединение
|
-: Nov 04, 2007, 23:59
|
Защо всъщност ти е радиус сървър ? Вярно, че е много по-добре в някои ситуации, но ако мрежата не е голяма просто няма смисъл. Мога да ти дам идея за примерен шейпър:
#!/bin/bash DEVICE=$1 userip=$5 username=$PEERNAME downspeed=`cat /etc/ppp/users/$username | awk '{ print $1 }'` upspeed=`cat /etc/ppp/users/$username | awk '{ print $2 }'` userid=`cat /etc/ppp/users/$username | awk '{ print $3 }'` pay="1" plateno=`cat /etc/ppp/users/$username | awk '{ print $4 }'`
iptables -t mangle -A FORWARD -d $userip -i eth0 -s ! 192.168.0.0/16 -j MARK --set-mark $userid markup=$(expr $userid + 5000) iptables -t mangle -A FORWARD -s $userip -o eth0 -d ! 192.168.0.0/16 -j MARK --set-mark $markup
tc qdisc del dev $DEVICE root tc qdisc add dev $DEVICE root handle 3: htb tc class add dev $DEVICE parent 3: classid 3:10 htb rate 100mbit tc class add dev $DEVICE parent 3:10 classid 3:$userid htb rate ${downspeed}kbit ceil ${downspeed}kbit tc qdisc add dev $DEVICE parent 3:$userid handle $userid sfq tc filter add dev $DEVICE parent 3:0 protocol ip prio 5 handle $userid fw classid 3:$userid
tc class add dev eth0 parent 1:20 classid 1:$markup htb rate ${upspeed}kbit ceil ${upspeed}kbit tc qdisc add dev eth0 parent 1:$markup handle $markup sfq tc filter add dev eth0 parent 1:0 protocol ip prio 1 handle $markup fw classid 1:$markup
if [ $plateno -eq $pay ]; then echo $username e platil! > /dev/null else iptables -t nat -I PREROUTING -s $5 -j DROP fi
Горе долу това успях да нахвърлям за 15 минути. Може да има и някъде грешки, но ще се наложи да поправяш. Скрипта работи като извлича данни за всеки един юзър от отделен файл кръстен с името на потребителя от "chap-secrets" или "pap-secrets", там което използваш. Синтаксиса не трябва да те затрудни, но все пак: ~#cat /etc/ppp/users/pesho 1024 256 1 1 ~#
Това значи потребителя pesho има скорост на даунлоуд 1024 кбита, ъплоуд 256 кбита, 3-та позиция за номер на потребител (тук може да се подобри като се използва ip-адреса който задаваш, но не ми се задълбочава сега, номера е цяло число 0-4999)и на 4-та позиция проверката дали потребителя си е платил - 1 означава платил, като при всяко друго число означава не е платено- т.е. трябва да се спре. При малко повече желание и труд може да се добавят и допълнителни маркировки за локални сървъри, за пиъринг с други доставчици, отделен шейпинг за различните портове и т.н. Успех, ако имаш въпроси пиши.
|
|
|
5
|
Linux секция за напреднали / Хардуерни и софтуерни проблеми / Странен проблем с in.identd
|
-: Oct 18, 2007, 08:04
|
Здравейте, налага ми се да пускам 2-ри рутер за една мрежа. Инсталирах Слакуер 10. Мисля , че проблемът е някъде покрай in.identd демона. При зареждането на ОС-а съм пуснал pppoe-server и pptpd. Ако се опитам да пусна пппое на клиентска уиндоус машина ми дава грешка, че портът бил затворен. Веднага пускам впн към същата машина и си работи без проблем. Спирам впн-а, пускам пппое-то - и то вече работи. След закачането на впн се стартира и процеса in.identd. Явно е, че греша в някой конфигурационен файл, но къде ?
/etc/inetd.conf: # Ident service is used for net authentication
auth stream tcp wait root /usr/sbin/in.identd in.identd
От другия рутер като нмап-на се вижда следното: 113/tcp open auth
Като преди всички тези неща съм изпълнил следното: iptables -F
Въпросът ми е как да го накарам да се стартира при зареждане на ОС-а ?
|
|
|
6
|
Linux секция за начинаещи / Настройка на хардуер / Laptop widescreen проблем
|
-: Sep 20, 2007, 02:20
|
Здравей, аз имам известен напредък с драйвера, но за сега ми изглежда изгубена кауза. Компилирах драйвера (под слакуеър 12)и го инсталирах. При modprobe viafb ами изписва че се инициализира, но Х-а така и не тръгва. Прави някакъв опит и дава отново да се логна в конзолата. Не дава никакви грешки в логовете за съжаление. Ако някой го е подкарал услешно, моля да сподели.
П.П. Системата е fujitsu-siemens Amilo Pro V2035
|
|
|
9
|
Linux секция за начинаещи / Настройка на програми / рутер+шейпър
|
-: Sep 13, 2007, 06:27
|
То шейпинга по адрес не е сложен, ама мисля, че ще се затрудниш с намирането на уеб интерфейс. Колкото до шейпинга - ако нямаш идея какво да правиш с това чудо "tc", можеш да използваш htb.init или cbq.init скриптовете, които не са много трудни за настройка, имат и вградени примери. Те не са нищо повече от обикновени bash скриптове, които ти създават правилата, а от теб се искат само конфигурационните файлове, в които има само стойности за адрес, скорост, интерфейс и т.н. За ползването на уеб интерфейс за всички конфиг. файлове се изисква малко повече от "абе дай да работи с tc". Административна система по принцип се прави за съответните нужди на доставчика. Едно е да имаш административна система,която да обслужва хиляди частни абонати и десетки сървъри, друго е да обслужва 50-100 частни клиента, за които ще е необходимо просто добавяне в dhcp, iptables, tc и евентуално chap/pap-secrets.
|
|
|
10
|
Linux секция за начинаещи / Настройка на програми / рутер+шейпър
|
-: Sep 13, 2007, 02:48
|
Цитат (h7d8 @ Сеп. 09 2007,21:21) | router.... shaper.... какво ще рутираш и колко клиента ще шейпваш... до около 50 мое и ръчно да го правиш. ако е за бизнеш може да си купиш има едно http://www.ipacct.com/ за не знам колко пари... и накрая може да ти дам едни ЧУДЕСИИ дето аз съм забъркал да се изкефиш '> |
Обаче май ще трябва да се прави по друг начин '> .Тези дистрибуции не ми вършат работа.Мен ми трябва нещо за debian etch.Някъкво базирано php работещo със iptables tc и прочие.В крайна сметка ,ако няма никаква алтернатива давай с "маладжите" може и да стане нещо сносно. '>А аз искам да попитам как ще пускаш интернет? По адрес, или тунел(пптп, пппое)? Или и двете ? Съветвам те да се запознаеш с това.
|
|
|
|