Nie jesteś zalogowany.
Jeśli nie posiadasz konta, zarejestruj je już teraz! Pozwoli Ci ono w pełni korzystać z naszego serwisu. Spamerom dziękujemy!
Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.
mam czesc klientow na radiu z autoryzacja pppoe, wlasnie odpalilem htb po stronie kabli ale nie moge ruszyc tego na ppp: glowny problem to identyfikator klasy - musi byc za kazdym razem inny dla danego pppx - jak wiadomo tworza sie one losowo, wiec odpada wklepanie regolek zanim dany klient sie podlaczy bo jego interfejs pppx nie istnieje. Jesli komus udalo sie napisac dzialajace skrypty if-up/down lub ma koncepcje jak je napisac - prosze o pomoc
pozdrawiam
Offline
imq zalatwia sprawe, jestes niezalezny od interfejsu sieciowego.
mozesz sobie w firewallku zapodac petelke:
for ((i=1; i<=50; i++)); do iptables -t mangle -A POSTROUTING -o ppp`expr $i - 1` -j IMQ --todev 0 done
niezaleznie czy interfejs pppx jest czy go nie ma regula sie utworzy, na imq mozesz juz dowolnie kolejkowac pakiety np po adresa docelowych.
Offline
gdzies mi cos takiego przemknelo juz... tylko nie wiem za bardzo jak tego urzyc: gdzie mam ta regolke wklepac i na jakiej zasadzie to bedzie dzialac ?? tym sposobem nie ogranicze chyba upload'u tylko sam download ??
Offline
uplada ograniczasz na interfejsie "internetowym" a nie tym od lanu.
jezeli nie wiesz jak zainstalowac imq to looknij na :
http://forum.dug.net.pl/viewtopic.php?t=2856
lub poszukaj w google ;).
dziala to tak:
kazdy pakiet ktory ma trafic do lanu przez dowolny interfejs ppp ( tu ppp0-ppp49 ) zostanie skierwoany do imq0 ( regul są, mimo ze interfejsu moze nie byc, ale to niczemu nie przeszkadza ) dla imq postepujesz dolkadnie tak jak dla zwyklego interfejsu ( np tego z "kablem" )
czyli kierujesz pakiety do kolejek za pomoca filtrow u32 z odpowiednim adresem docelowym.
Offline
juz zalapalem:
tc qdisc del root dev eth0
tc qdisc add dev eth0 root handle 1:0 htb
tc class add dev eth0 parent 1:0 classid 1:1 htb rate 10mbit ceil 10mbit
tc class add dev eth0 parent 1:1 classid 1:2 htb rate 5mbit ceil 10mbit
tc class add dev eth0 parent 1:1 classid 1:3 htb rate 5mbit ceil 10mbit
tc filter add dev eth0 protocol ip parent 1:0 u32 match ip dst 192.168.2.2 flowid 1:2
tc filter add dev eth0 protocol ip parent 1:0 u32 match ip dst 192.168.2.3 flowid 1:3
tu jest "rozgalezienie" na dwa komputery - na tej podtawie mam sie opierac tzn zamiast eth0 podstawic ten "virtualny" interfejs o ktorym piszesz, po zrobieniu na nim glownej kolejki, dopisuje klientow (class'y) na podst. adresu z modulu u32 ?
wiec ograniczenie uploadu na tym samym przykladzie bedzie wygladalo taksamo tylko ze zostawiam eth0 jako "internetowy" ale co z dst ip ?? mam dac src ip ??
Offline
jezeli zastosujesz kolejny interfejs virtulany to tak, mozesz uzyc src ip
ale nie jest to konieczne, w tradycyjnie sposob markuje sie pakiety
http://dug.net.pl/texty/htb.php
Offline
awięc przy naiazaniu polaczenia do skryptow znajdujacyhc sie w [b]/etc/ppp/ip-up.d[/b] przekazywane sa parametry po kolei
$0 - nazwa interfejsu np ppp0
$1 - cos nazwa wirutalnej konsoli czy cos nie wiem dokladnie co to jest
$2 - ustalona predkosc
$3 - lokalne IP np 10.10.10.10
$4 - zdalne IP np 10.10.10.100
a wiec przy wywolaniu swojego skryptu mozesz uzyc tych danychktore przychodza jako parametry
Uwazaj na PPPoE bo koncentrator mozna sobie landie zabic :]
przejzyj zrodla ras-ppppoe no zobaczysz :]
Offline
dziekuje Wam bardzo za odp - teraz mam przynajmniej jakas koncepcje jak to zrobic, powalcze z tym jutro i zobacze czy dam rade :-)
pozdr
Offline
wedle opisu jajco zpatchowalem i iptables terz.
teraz mam tylko pytanko co do
http://forum.dug.net.pl/viewtopic.php?t=2856
iptables -t mangle -A POSTROUTING -o interfejs_do_lanu -j IMQ --todev 0
iptables -t mangle -A PREROUTING -i interfejs_do_lanu -j IMQ --todev 1
gdzie to mam przyczepic ?? przed nat'em czy za ??
ekhm - moje patenty sa troszke pomotane..... musze niestety chyba to wrzucic:
1.dpppoe:
#!/bin/sh
#/etc/rc.boot/dpppoe
ifconfig eth2 up
#/etc/init.d/ehtb.tcl start
pppoe-server -I eth2 -N 13 -C xxxxxxx -L 192.168.1.1 -k
2.NAT:
#!/bin/sh
#/etc/rc.boot/nat
#
#IPv4 Forward && NAT
#echo "Enabling IPv4 Forwarding"
echo "1" > /proc/sys/net/ipv4/ip_forward
echo "Enabling NAT"
IPTABLES="/usr/local/sbin/iptables"
WANIP="xxxxxxxxxxx"
WAN="eth0"
LAN1="192.168.1.0/24"
user5="192.168.1.5"
user6="192.168.1.6"
user7="192.168.1.7"
user10="192.168.1.110"
user11="192.168.1.111"
user12="192.168.1.112"
user13="192.168.1.113"
user14="192.168.1.114"
user15="192.168.1.115"
user16="192.168.1.116"
user17="192.168.1.117"
user18="192.168.1.118"
user20="192.168.1.120"
user30="192.168.1.130"
user31="192.168.1.131"
admin="192.168.1.155"
$IPTABLES -F -t nat
$IPTABLES -t nat -I POSTROUTING -s $LAN1 -o $WAN -j MASQUERADE
#SQUID Redirect
$IPTABLES -t nat -A PREROUTING -i eth1 -s $user5 -p tcp --dport 80 -j DNAT --to xxxxxx:8080
$IPTABLES -t nat -A PREROUTING -i eth1 -s $user5 -p tcp --dport 8080 -j DNAT --to xxxxxx:8080
$IPTABLES -t nat -A PREROUTING -i eth1 -s $user6 -p tcp --dport 80 -j DNAT --to xxxxxx:8080
$IPTABLES -t nat -A PREROUTING -i eth1 -s $user6 -p tcp --dport 8080 -j DNAT --to xxxxxx:8080
$IPTABLES -t nat -A PREROUTING -i eth1 -s $user7 -p tcp --dport 80 -j DNAT --to xxxxxx:8080
$IPTABLES -t nat -A PREROUTING -i eth1 -s $user7 -p tcp --dport 8080 -j DNAT --to xxxxxx:8080
$IPTABLES -t nat -A PREROUTING -i ppp0 -s $LAN1 -p tcp --dport 80 -j DNAT --to xxxxxx:8080
$IPTABLES -t nat -A PREROUTING -i ppp0 -s $LAN1 -p tcp --dport 8080 -j DNAT --to xxxxxx:8080
$IPTABLES -t nat -A PREROUTING -i ppp1 -s $LAN1 -p tcp --dport 80 -j DNAT --to xxxxxx:8080
$IPTABLES -t nat -A PREROUTING -i ppp1 -s $LAN1 -p tcp --dport 8080 -j DNAT --to xxxxxx:8080
$IPTABLES -t nat -A PREROUTING -i ppp2 -s $LAN1 -p tcp --dport 80 -j DNAT --to xxxxxx:8080
$IPTABLES -t nat -A PREROUTING -i ppp2 -s $LAN1 -p tcp --dport 8080 -j DNAT --to xxxxxxx:8080
$IPTABLES -t nat -A PREROUTING -i ppp3 -s $LAN1 -p tcp --dport 80 -j DNAT --to xxxxxxx:8080
$IPTABLES -t nat -A PREROUTING -i ppp3 -s $LAN1 -p tcp --dport 8080 -j DNAT --to xxxxxxx:8080
$IPTABLES -t nat -A PREROUTING -i ppp4 -s $LAN1 -p tcp --dport 80 -j DNAT --to xxxxxxx:8080
$IPTABLES -t nat -A PREROUTING -i ppp4 -s $LAN1 -p tcp --dport 8080 -j DNAT --to xxxxxxx:8080
$IPTABLES -t nat -A PREROUTING -i ppp5 -s $LAN1 -p tcp --dport 80 -j DNAT --to xxxxxxx:8080
$IPTABLES -t nat -A PREROUTING -i ppp5 -s $LAN1 -p tcp --dport 8080 -j DNAT --to xxxxxxx:8080
$IPTABLES -t nat -A PREROUTING -i ppp6 -s $LAN1 -p tcp --dport 80 -j DNAT --to xxxxxxx:8080
$IPTABLES -t nat -A PREROUTING -i ppp6 -s $LAN1 -p tcp --dport 8080 -j DNAT --to xxxxxxx:8080
$IPTABLES -t nat -A PREROUTING -i ppp7 -s $LAN1 -p tcp --dport 80 -j DNAT --to xxxxxxx:8080
$IPTABLES -t nat -A PREROUTING -i ppp7 -s $LAN1 -p tcp --dport 8080 -j DNAT --to xxxxxxx:8080
$IPTABLES -t nat -A PREROUTING -i ppp8 -s $LAN1 -p tcp --dport 80 -j DNAT --to xxxxxxx:8080
$IPTABLES -t nat -A PREROUTING -i ppp8 -s $LAN1 -p tcp --dport 8080 -j DNAT --to xxxxxxx:8080
$IPTABLES -t nat -A PREROUTING -i ppp9 -s $LAN1 -p tcp --dport 80 -j DNAT --to xxxxxxx:8080
$IPTABLES -t nat -A PREROUTING -i ppp9 -s $LAN1 -p tcp --dport 8080 -j DNAT --to xxxxxxx:8080
$IPTABLES -t nat -A PREROUTING -i ppp10 -s $LAN1 -p tcp --dport 80 -j DNAT --to xxxxxxx:8080
$IPTABLES -t nat -A PREROUTING -i ppp10 -s $LAN1 -p tcp --dport 8080 -j DNAT --to xxxxxx:8080
$IPTABLES -t nat -A PREROUTING -i ppp11 -s $LAN1 -p tcp --dport 80 -j DNAT --to xxxxxxx:8080
$IPTABLES -t nat -A PREROUTING -i ppp11 -s $LAN1 -p tcp --dport 8080 -j DNAT --to xxxxxx:8080
$IPTABLES -t nat -A PREROUTING -i ppp12 -s $LAN1 -p tcp --dport 80 -j DNAT --to xxxxxxx:8080
$IPTABLES -t nat -A PREROUTING -i ppp12 -s $LAN1 -p tcp --dport 8080 -j DNAT --to xxxxxx:8080
$IPTABLES -t nat -A PREROUTING -i ppp13 -s $LAN1 -p tcp --dport 80 -j DNAT --to xxxxxxx:8080
$IPTABLES -t nat -A PREROUTING -i ppp13 -s $LAN1 -p tcp --dport 8080 -j DNAT --to xxxxxx:8080
3.Firewall:
#!/bin/sh
#
#/root/firewall
#
echo ""
echo "Activating Firewall..."
IPTABLES="/usr/local/sbin/iptables"
wanip="xxxxxxx"
ip1="192.168.1.1"
lan1="192.168.1.0/24"
all="0/0"
user5="192.168.1.5"
user6="192.168.1.6"
user7="192.168.1.7"
user10="192.168.1.110"
user11="192.168.1.111"
user12="192.168.1.112"
user13="192.168.1.113"
user14="192.168.1.114"
user15="192.168.1.115"
user16="192.168.1.116"
user17="192.168.1.117"
user18="192.168.1.118"
user20="192.168.1.120"
user30="192.168.1.130"
user31="192.168.1.131"
admin="192.168.1.155"
$IPTABLES -F
$IPTABLES -P INPUT DROP
$IPTABLES -P OUTPUT DROP
$IPTABLES -P FORWARD ACCEPT
$IPTABLES -A INPUT -i lo -j ACCEPT
$IPTABLES -A OUTPUT -o lo -j ACCEPT
#$IPTABLES -A INPUT -p icmp --icmp-type 8/0 -m state --state NEW -j ACCEPT
$IPTABLES -A INPUT -p icmp -m state --state ESTABLISHED,RELATED -j ACCEPT
$IPTABLES -A OUTPUT -p icmp -m state --state NEW -j ACCEPT
$IPTABLES -A OUTPUT -p icmp -m state --state ESTABLISHED,RELATED -j ACCEPT
#DNS
$IPTABLES -A INPUT -p udp -s $all -d $wanip --dport 53 -m state --state NEW -j ACCEPT
$IPTABLES -A INPUT -p tcp -s $all -d $wanip --dport 53 -m state --state NEW -j ACCEPT
$IPTABLES -A INPUT -i eth1 -p tcp -s $user5 -d $ip1 --dport 53 -m state --state NEW -j ACCEPT
$IPTABLES -A INPUT -i eth1 -p udp -s $user5 -d $ip1 --dport 53 -m state --state NEW -j ACCEPT
$IPTABLES -A INPUT -i eth1 -p tcp -s $user6 -d $ip1 --dport 53 -m state --state NEW -j ACCEPT
$IPTABLES -A INPUT -i eth1 -p udp -s $user6 -d $ip1 --dport 53 -m state --state NEW -j ACCEPT
$IPTABLES -A INPUT -i eth1 -p tcp -s $user7 -d $ip1 --dport 53 -m state --state NEW -j ACCEPT
$IPTABLES -A INPUT -i eth1 -p udp -s $user7 -d $ip1 --dport 53 -m state --state NEW -j ACCEPT
$IPTABLES -A INPUT -p tcp -s $user10 -d $ip1 --dport 53 -m state --state NEW -j ACCEPT
$IPTABLES -A INPUT -p udp -s $user10 -d $ip1 --dport 53 -m state --state NEW -j ACCEPT
$IPTABLES -A INPUT -p tcp -s $user11 -d $ip1 --dport 53 -m state --state NEW -j ACCEPT
$IPTABLES -A INPUT -p udp -s $user11 -d $ip1 --dport 53 -m state --state NEW -j ACCEPT
$IPTABLES -A INPUT -p tcp -s $user12 -d $ip1 --dport 53 -m state --state NEW -j ACCEPT
$IPTABLES -A INPUT -p udp -s $user12 -d $ip1 --dport 53 -m state --state NEW -j ACCEPT
$IPTABLES -A INPUT -p tcp -s $user13 -d $ip1 --dport 53 -m state --state NEW -j ACCEPT
$IPTABLES -A INPUT -p udp -s $user13 -d $ip1 --dport 53 -m state --state NEW -j ACCEPT
$IPTABLES -A INPUT -p tcp -s $user14 -d $ip1 --dport 53 -m state --state NEW -j ACCEPT
$IPTABLES -A INPUT -p udp -s $user14 -d $ip1 --dport 53 -m state --state NEW -j ACCEPT
$IPTABLES -A INPUT -p tcp -s $user15 -d $ip1 --dport 53 -m state --state NEW -j ACCEPT
$IPTABLES -A INPUT -p udp -s $user15 -d $ip1 --dport 53 -m state --state NEW -j ACCEPT
$IPTABLES -A INPUT -p tcp -s $user16 -d $ip1 --dport 53 -m state --state NEW -j ACCEPT
$IPTABLES -A INPUT -p udp -s $user16 -d $ip1 --dport 53 -m state --state NEW -j ACCEPT
$IPTABLES -A INPUT -p tcp -s $user17 -d $ip1 --dport 53 -m state --state NEW -j ACCEPT
$IPTABLES -A INPUT -p udp -s $user17 -d $ip1 --dport 53 -m state --state NEW -j ACCEPT
$IPTABLES -A INPUT -p tcp -s $user18 -d $ip1 --dport 53 -m state --state NEW -j ACCEPT
$IPTABLES -A INPUT -p udp -s $user18 -d $ip1 --dport 53 -m state --state NEW -j ACCEPT
$IPTABLES -A INPUT -p tcp -s $user20 -d $ip1 --dport 53 -m state --state NEW -j ACCEPT
$IPTABLES -A INPUT -p udp -s $user20 -d $ip1 --dport 53 -m state --state NEW -j ACCEPT
$IPTABLES -A INPUT -p tcp -s $user30 -d $ip1 --dport 53 -m state --state NEW -j ACCEPT
$IPTABLES -A INPUT -p udp -s $user30 -d $ip1 --dport 53 -m state --state NEW -j ACCEPT
$IPTABLES -A INPUT -p tcp -s $user31 -d $ip1 --dport 53 -m state --state NEW -j ACCEPT
$IPTABLES -A INPUT -p udp -s $user31 -d $ip1 --dport 53 -m state --state NEW -j ACCEPT
#$IPTABLES -A INPUT -p tcp -s $admin -d $ip1 --dport 53 -m state --state NEW -j ACCEPT
#$IPTABLES -A INPUT -p udp -s $admin -d $ip1 --dport 53 -m state --state NEW -j ACCEPT
#Squid HTTP TABLICA
$IPTABLES -A INPUT -i eth1 -p tcp -s $user5 --dport 8080 -m state --state NEW -j ACCEPT
$IPTABLES -A INPUT -i eth1 -p tcp -s $user6 --dport 8080 -m state --state NEW -j ACCEPT
$IPTABLES -A INPUT -i eth1 -p tcp -s $user7 --dport 8080 -m state --state NEW -j ACCEPT
$IPTABLES -A INPUT -p tcp -s $user10 --dport 8080 -m state --state NEW -j ACCEPT
$IPTABLES -A INPUT -p tcp -s $user11 --dport 8080 -m state --state NEW -j ACCEPT
$IPTABLES -A INPUT -p tcp -s $user12 --dport 8080 -m state --state NEW -j ACCEPT
$IPTABLES -A INPUT -p tcp -s $user13 --dport 8080 -m state --state NEW -j ACCEPT
$IPTABLES -A INPUT -p tcp -s $user14 --dport 8080 -m state --state NEW -j ACCEPT
$IPTABLES -A INPUT -p tcp -s $user15 --dport 8080 -m state --state NEW -j ACCEPT
$IPTABLES -A INPUT -p tcp -s $user16 --dport 8080 -m state --state NEW -j ACCEPT
$IPTABLES -A INPUT -p tcp -s $user17 --dport 8080 -m state --state NEW -j ACCEPT
$IPTABLES -A INPUT -p tcp -s $user18 --dport 8080 -m state --state NEW -j ACCEPT
$IPTABLES -A INPUT -p tcp -s $user20 --dport 8080 -m state --state NEW -j ACCEPT
$IPTABLES -A INPUT -p tcp -s $user30 --dport 8080 -m state --state NEW -j ACCEPT
$IPTABLES -A INPUT -p tcp -s $user31 --dport 8080 -m state --state NEW -j ACCEPT
$IPTABLES -A INPUT -p tcp -s $admin --dport 8080 -m state --state NEW -j ACCEPT
#
$IPTABLES -A INPUT -i eth1 -p tcp -s $user5 -d $ip1 --dport 80 -m state --state NEW -j ACCEPT
$IPTABLES -A INPUT -i eth1 -p tcp -s $user6 -d $ip1 --dport 80 -m state --state NEW -j ACCEPT
$IPTABLES -A INPUT -i eth1 -p tcp -s $user7 -d $ip1 --dport 80 -m state --state NEW -j ACCEPT
$IPTABLES -A INPUT -p tcp -s $user10 -d $ip1 --dport 80 -m state --state NEW -j ACCEPT
$IPTABLES -A INPUT -p tcp -s $user11 -d $ip1 --dport 80 -m state --state NEW -j ACCEPT
$IPTABLES -A INPUT -p tcp -s $user12 -d $ip1 --dport 80 -m state --state NEW -j ACCEPT
$IPTABLES -A INPUT -p tcp -s $user13 -d $ip1 --dport 80 -m state --state NEW -j ACCEPT
$IPTABLES -A INPUT -p tcp -s $user14 -d $ip1 --dport 80 -m state --state NEW -j ACCEPT
$IPTABLES -A INPUT -p tcp -s $user15 -d $ip1 --dport 80 -m state --state NEW -j ACCEPT
$IPTABLES -A INPUT -p tcp -s $user16 -d $ip1 --dport 80 -m state --state NEW -j ACCEPT
$IPTABLES -A INPUT -p tcp -s $user17 -d $ip1 --dport 80 -m state --state NEW -j ACCEPT
$IPTABLES -A INPUT -p tcp -s $user18 -d $ip1 --dport 80 -m state --state NEW -j ACCEPT
$IPTABLES -A INPUT -p tcp -s $user20 -d $ip1 --dport 80 -m state --state NEW -j ACCEPT
$IPTABLES -A INPUT -p tcp -s $user30 -d $ip1 --dport 80 -m state --state NEW -j ACCEPT
$IPTABLES -A INPUT -p tcp -s $user31 -d $ip1 --dport 80 -m state --state NEW -j ACCEPT
$IPTABLES -A INPUT -p tcp -s $admin -d $ip1 --dport 80 -m state --state NEW -j ACCEPT
#
$IPTABLES -A INPUT -i eth1 -p tcp -s $user5 -d $ip1 --dport 666 -m state --state NEW -j ACCEPT
$IPTABLES -A INPUT -i eth1 -p tcp -s $user6 -d $ip1 --dport 666 -m state --state NEW -j ACCEPT
$IPTABLES -A INPUT -i eth1 -p tcp -s $user7 -d $ip1 --dport 666 -m state --state NEW -j ACCEPT
$IPTABLES -A INPUT -p tcp -s $user10 -d $ip1 --dport 666 -m state --state NEW -j ACCEPT
$IPTABLES -A INPUT -p tcp -s $user11 -d $ip1 --dport 666 -m state --state NEW -j ACCEPT
$IPTABLES -A INPUT -p tcp -s $user12 -d $ip1 --dport 666 -m state --state NEW -j ACCEPT
$IPTABLES -A INPUT -p tcp -s $user13 -d $ip1 --dport 666 -m state --state NEW -j ACCEPT
$IPTABLES -A INPUT -p tcp -s $user14 -d $ip1 --dport 666 -m state --state NEW -j ACCEPT
$IPTABLES -A INPUT -p tcp -s $user15 -d $ip1 --dport 666 -m state --state NEW -j ACCEPT
$IPTABLES -A INPUT -p tcp -s $user16 -d $ip1 --dport 666 -m state --state NEW -j ACCEPT
$IPTABLES -A INPUT -p tcp -s $user17 -d $ip1 --dport 666 -m state --state NEW -j ACCEPT
$IPTABLES -A INPUT -p tcp -s $user18 -d $ip1 --dport 666 -m state --state NEW -j ACCEPT
$IPTABLES -A INPUT -p tcp -s $user20 -d $ip1 --dport 666 -m state --state NEW -j ACCEPT
$IPTABLES -A INPUT -p tcp -s $user30 -d $ip1 --dport 666 -m state --state NEW -j ACCEPT
$IPTABLES -A INPUT -p tcp -s $user31 -d $ip1 --dport 666 -m state --state NEW -j ACCEPT
$IPTABLES -A INPUT -p tcp -s $admin -d $ip1 --dport 666 -m state --state NEW -j ACCEPT
#SSH
$IPTABLES -A INPUT -p tcp -s aa:bb:bb:bbb -d $wanip --dport 22 -m state --state NEW -j ACCEPT
$IPTABLES -A INPUT -p tcp -s $admin -d $ip1 --dport 22 -m state --state NEW -j ACCEPT
$IPTABLES -A INPUT -i eth1 -p tcp -s $user5 -d $ip1 --dport 22 -m state --state NEW -j ACCEPT
#FTP
$IPTABLES -A INPUT -i eth1 -p tcp -s $user5 -d $ip1 --dport 21 -m state --state NEW -j ACCEPT
$IPTABLES -A INPUT -i eth1 -p udp -s $user5 -d $ip1 --dport 21 -m state --state NEW -j ACCEPT
$IPTABLES -A FORWARD -p tcp -s $user5 -d $all --dport 21 -m state --state NEW -j ACCEPT
$IPTABLES -A FORWARD -p tcp -s $all -d $user5 --dport 21 -m state --state NEW -j ACCEPT
#Poczta
$IPTABLES -A INPUT -p tcp -s $all -d $wanip --dport 25 -m state --state NEW -j ACCEPT
$IPTABLES -A INPUT -p tcp -s $all -d $wanip --dport 110 -m state --state NEW -j ACCEPT
$IPTABLES -A INPUT -p udp -s $all -d $wanip --dport 110 -m state --state NEW -j ACCEPT
$IPTABLES -A INPUT -p tcp -s $all -d $wanip --dport 119 -m state --state NEW -j ACCEPT
$IPTABLES -A INPUT -p tcp -s $all -d $wanip --dport 995 -m state --state NEW -j ACCEPT
$IPTABLES -A INPUT -p udp -s $all -d $wanip --dport 995 -m state --state NEW -j ACCEPT
#
/root/skrypty/p2p.sh
$IPTABLES -A INPUT -p tcp -m state --state ESTABLISHED,RELATED -j ACCEPT
$IPTABLES -A INPUT -p udp -m state --state ESTABLISHED,RELATED -j ACCEPT
$IPTABLES -A OUTPUT -m state --state ! INVALID -j ACCEPT
/root/skrypty/uslugi.sh
#/root/skrypty/nocka.sh
$IPTABLES -A FORWARD -p tcp -m state --state ESTABLISHED,RELATED -j ACCEPT
$IPTABLES -A FORWARD -p udp -m state --state ESTABLISHED,RELATED -j ACCEPT
durzo tego jest, ale w takiej formie jak narazie mi sie najlepiej sprawoje i nie chcial bym nic w miare mozliwosci oczywiscie zmieniac.
Zastanawiam sie jak beda traktowane pakiety po dodaniu tych wpisow:
iptables -t mangle -A POSTROUTING -o interfejs_do_lanu -j IMQ --todev 0
iptables -t mangle -A PREROUTING -i interfejs_do_lanu -j IMQ --todev 1
jest juz tego za duzo i nie lapie sie w tym wszystkiem....
skrypty zamiescilem w kolejnosci ich ladowania, karty:
eth0=wanip
eth1=LAN
eth2="0.0.0.0" Radia z klientami na pppoe - tu stoi rp-pppoe 192.168.1.1
gdyby ktos mogl to ogarnac bylbym wdzieczny, prosilbym terz o jakis schemat jak pakiety beda przepychane: czy po tych wpisach przekierowujacych na imq nie beda juz dalej analizowane przez filtry ? jak to wkoncu (moze kiedys...) odpale to az sie pokusze zeby napisac faq dla nastepnych takich pokolen jak ja :-) - BiExi, Libo - HELP !
Offline
natwoanie odbywa sie w obrebie interfeju wanowego, podany przyklad dotyczy intergejsow od strony lanu:
iptables -t mangle -A POSTROUTING -o interfejs_do_lanu -j IMQ --todev 0
iptables -t mangle -A PREROUTING -i interfejs_do_lanu -j IMQ --todev 1 [/quote]
ponadto reguly te sa dopisywane do tablicy mangle ktora jest "przetwarzana" jako pierwsza ( w lancuchy prerouting) i jako ostatnia w postrouting. co od pakietow to nie muisz sie obawiac, wroca one w to samo miejsce.
dla twojego przykladu wiec nie ma to znaczenia gdzie je umiescisz ( mozes sobie zrobic osobny plik ), pamietaj tylko ze musisz utworzyc taka ragule dla kazdego interfejus od strony lokalnej czyli eth1 i ppp0 - pppX
Nie ma nie idzie... jest nie umiem.
Offline
ok teraz rozumiem
jest "przetwarzana" jako pierwsza ( w lancuchy prerouting) i jako ostatnia w postrouting [/quote]
musisz utworzyc taka ragule dla kazdego interfejus od strony lokalnej czyli eth1 i ppp0 - pppX[/quote]
czyli chodzi Ci o to:
iptables -t mangle -A POSTROUTING -o ppp1 -j IMQ --todev 0
iptables -t mangle -A POSTROUTING -o ppp2 -j IMQ --todev 0
iptables -t mangle -A POSTROUTING -o ppp3 -j IMQ --todev 0
itd....
czyli wszystkie ppp do jednego imq 0 ??
a interfejs eth1 - normalny lan - to juz standardowe htb bez zadnych udziwnien - nie bedzie to kolidowac z imq zrobionym wczesniej ??
powiedz mi jeszcze jaka jest wydajnosc tych rozwiazan - tzn ile moge przepchnac przez takie kolejki zeby sie nic nie zapychalo i nie zawieszalo ?
P3 700Mhz 378MB SDR PC133ECC CL2 dysk 40GB ATA100, obciazenie systemu (wedle lstat) srednio 10% tyle ze pamieci mam prawie ze na styk i chwilami jedzie konkretnie ze swap'a.
[url=http://dziecineo.prv.pl][img]http://sopot.i365.pl/neo/i/us4.jpg[/img][/url]Offline
"]
czyli chodzi Ci o to:
iptables -t mangle -A POSTROUTING -o ppp1 -j IMQ --todev 0
iptables -t mangle -A POSTROUTING -o ppp2 -j IMQ --todev 0
iptables -t mangle -A POSTROUTING -o ppp3 -j IMQ --todev 0
itd....
czyli wszystkie ppp do jednego imq 0 ??
[/quote]
tak
"]
a interfejs eth1 - normalny lan - to juz standardowe htb bez zadnych udziwnien - nie bedzie to kolidowac z imq zrobionym wczesniej ??
[/quote]
z tego interfejsu wrzuc sobie tez ruch na imq, bedziesz mogl dysponowac calym dostepnym pasmem, a nie dzielic go na 2 interfejsy ( eth1 i imq0 )
co do wydajnosic to raczej nie musisz sie tym przejmowac, bo nie jest tego za duzo.
Nie ma nie idzie... jest nie umiem.Offline
cos nie liczy
for ((i=1; i<=50; i++)); do
iptables -t mangle -A POSTROUTING -o ppp`expr $i - 1` -j IMQ --todev 0
done
[/quote]
Wyskakuje dla kazdej tworzonej linijki (czyli kazdego pppx):
Waring: wierd character in interface 'pppexpr 1 - 1' No aliases, :, ! or *).
[/quote]
domyslam sie to w C - a tu pojecia nie mam, jakas literowka ? czy to tylko ostrzezenie (przed czym ?? :-)
Nie chce mi sie klepac kolejne 40 linijek do firewalla - juz jest za duzy, wiec fajnie zeby mi to dzialalo w taki ladny i cywilizowany sposob....
dalem takie dwa wpisy:
1.PRE... -o > imq0
2POST... -i > imq1
czy musze na poczatku dac ip link set imq0,1 up czy podniesie sie sam?
pozdr
[url=http://dziecineo.prv.pl][img]http://sopot.i365.pl/neo/i/us4.jpg[/img][/url]Offline
musisz recznie postawic imq, najelpiej zrob to przy starcie systemu.
Offline
ok - to juz przetrawilem wszystko, tylko co z tym WARING ??
i jescze gdzie moge sprawdzic czy te regulki POST i PRE sie wklepaly ?? iptables -L nic nie wyswietla takowego ?
pozdr
Offline
iptables -L PREROUTING -t nat
lub
iptables -L PREROUTING -t mangle
co do pentli to mozesz ja przerobic na
for ((i=0; i<=50; i++)); do iptables -t mangle -A POSTROUTING -o ppp$i -j IMQ --todev 0 done
lub na
for i in `seq 0 50` ; do iptables -t mangle -A POSTROUTING -o ppp$i -j IMQ --todev 0 done
Offline
napisalem taki twor:
IPTABLES="/usr/local/sbin/iptables" tc="/sbin/tc" ip="/sbin/ip" $ip link set imq0 up for ((i=0; i<=14; i++)); do $IPTABLES -t mangle -A POSTROUTING -o ppp$i -j IMQ --todev 0 done $IPTABLES -t mangle -A POSTROUTING -o eth1 -j IMQ --todev 0 #Download $tc qdisc del root dev imq0 $tc qdisc add dev imq0 root handle 1:0 htb $tc class add dev imq0 parent 1:0 classid 1:1 htb rate 11000kbit ceil 11000kbit $tc class add dev imq0 parent 1:1 classid 1:2 htb rate 2000kbit ceil 2000kbit $tc class add dev imq0 parent 1:1 classid 1:3 htb rate 11000kbit ceil 11000kbit $tc class add dev imq0 parent 1:2 classid 1:5 htb rate 128kbit ceil 1500kbit $tc class add dev imq0 parent 1:2 classid 1:6 htb rate 128kbit ceil 1500kbit $tc class add dev imq0 parent 1:2 classid 1:7 htb rate 128kbit ceil 1500kbit $tc class add dev imq0 parent 1:2 classid 1:10 htb rate 128kbit ceil 1500kbit $tc class add dev imq0 parent 1:2 classid 1:11 htb rate 128kbit ceil 1500kbit $tc class add dev imq0 parent 1:2 classid 1:12 htb rate 128kbit ceil 1500kbit $tc class add dev imq0 parent 1:2 classid 1:13 htb rate 128kbit ceil 1500kbit $tc class add dev imq0 parent 1:2 classid 1:14 htb rate 128kbit ceil 1500kbit $tc class add dev imq0 parent 1:2 classid 1:15 htb rate 128kbit ceil 1500kbit $tc class add dev imq0 parent 1:2 classid 1:16 htb rate 128kbit ceil 1500kbit $tc class add dev imq0 parent 1:2 classid 1:17 htb rate 128kbit ceil 1500kbit $tc class add dev imq0 parent 1:2 classid 1:18 htb rate 128kbit ceil 1500kbit $tc class add dev imq0 parent 1:2 classid 1:20 htb rate 128kbit ceil 1500kbit $tc class add dev imq0 parent 1:2 classid 1:30 htb rate 128kbit ceil 1500kbit $tc class add dev imq0 parent 1:2 classid 1:31 htb rate 128kbit ceil 1500kbit $tc filter add dev imq0 protocol ip parent 1:0 u32 match ip src 192.168.1.1 flowid 1:3 $tc filter add dev imq0 protocol ip parent 1:0 u32 match ip dst 192.168.1.5 flowid 1:5 $tc filter add dev imq0 protocol ip parent 1:0 u32 match ip dst 192.168.1.6 flowid 1:6 $tc filter add dev imq0 protocol ip parent 1:0 u32 match ip dst 192.168.1.7 flowid 1:7 $tc filter add dev imq0 protocol ip parent 1:0 u32 match ip dst 192.168.1.110 flowid 1:10 $tc filter add dev imq0 protocol ip parent 1:0 u32 match ip dst 192.168.1.111 flowid 1:11 $tc filter add dev imq0 protocol ip parent 1:0 u32 match ip dst 192.168.1.112 flowid 1:12 $tc filter add dev imq0 protocol ip parent 1:0 u32 match ip dst 192.168.1.113 flowid 1:13 $tc filter add dev imq0 protocol ip parent 1:0 u32 match ip dst 192.168.1.114 flowid 1:14 $tc filter add dev imq0 protocol ip parent 1:0 u32 match ip dst 192.168.1.115 flowid 1:15 $tc filter add dev imq0 protocol ip parent 1:0 u32 match ip dst 192.168.1.116 flowid 1:16 $tc filter add dev imq0 protocol ip parent 1:0 u32 match ip dst 192.168.1.117 flowid 1:17 $tc filter add dev imq0 protocol ip parent 1:0 u32 match ip dst 192.168.1.118 flowid 1:18 $tc filter add dev imq0 protocol ip parent 1:0 u32 match ip dst 192.168.1.120 flowid 1:20 $tc filter add dev imq0 protocol ip parent 1:0 u32 match ip dst 192.168.1.130 flowid 1:30 $tc filter add dev imq0 protocol ip parent 1:0 u32 match ip dst 192.168.1.131 flowid 1:31 #Upload $tc qdisc del root dev eth0 $tc qdisc add dev eth0 root handle 1:0 htb $tc class add dev eth0 parent 1:0 classid 1:1 htb rate 256kbit ceil 256kbit $tc class add dev eth0 parent 1:1 classid 1:2 htb rate 220kbit ceil 220kbit $tc class add dev eth0 parent 1:2 classid 1:5 htb rate 14kbit ceil 190kbit $tc class add dev eth0 parent 1:2 classid 1:6 htb rate 14kbit ceil 190kbit $tc class add dev eth0 parent 1:2 classid 1:7 htb rate 14kbit ceil 190kbit $tc class add dev eth0 parent 1:2 classid 1:10 htb rate 14kbit ceil 190kbit $tc class add dev eth0 parent 1:2 classid 1:11 htb rate 14kbit ceil 190kbit $tc class add dev eth0 parent 1:2 classid 1:12 htb rate 14kbit ceil 190kbit $tc class add dev eth0 parent 1:2 classid 1:13 htb rate 14kbit ceil 190kbit $tc class add dev eth0 parent 1:2 classid 1:14 htb rate 14kbit ceil 190kbit $tc class add dev eth0 parent 1:2 classid 1:15 htb rate 14kbit ceil 190kbit $tc class add dev eth0 parent 1:2 classid 1:16 htb rate 14kbit ceil 190kbit $tc class add dev eth0 parent 1:2 classid 1:17 htb rate 14kbit ceil 190kbit $tc class add dev eth0 parent 1:2 classid 1:18 htb rate 14kbit ceil 190kbit $tc class add dev eth0 parent 1:2 classid 1:20 htb rate 14kbit ceil 190kbit $tc class add dev eth0 parent 1:2 classid 1:30 htb rate 14kbit ceil 190kbit $tc class add dev eth0 parent 1:2 classid 1:31 htb rate 14kbit ceil 190kbit $tc filter add dev eth0 protocol ip parent 1:0 u32 match ip src 192.168.1.5 flowid 1:5 $tc filter add dev eth0 protocol ip parent 1:0 u32 match ip src 192.168.1.6 flowid 1:6 $tc filter add dev eth0 protocol ip parent 1:0 u32 match ip src 192.168.1.7 flowid 1:7 $tc filter add dev eth0 protocol ip parent 1:0 u32 match ip src 192.168.1.110 flowid 1:10 $tc filter add dev eth0 protocol ip parent 1:0 u32 match ip src 192.168.1.111 flowid 1:11 $tc filter add dev eth0 protocol ip parent 1:0 u32 match ip src 192.168.1.112 flowid 1:12 $tc filter add dev eth0 protocol ip parent 1:0 u32 match ip src 192.168.1.113 flowid 1:13 $tc filter add dev eth0 protocol ip parent 1:0 u32 match ip src 192.168.1.114 flowid 1:14 $tc filter add dev eth0 protocol ip parent 1:0 u32 match ip src 192.168.1.115 flowid 1:15 $tc filter add dev eth0 protocol ip parent 1:0 u32 match ip src 192.168.1.116 flowid 1:16 $tc filter add dev eth0 protocol ip parent 1:0 u32 match ip src 192.168.1.117 flowid 1:17 $tc filter add dev eth0 protocol ip parent 1:0 u32 match ip src 192.168.1.118 flowid 1:18 $tc filter add dev eth0 protocol ip parent 1:0 u32 match ip src 192.168.1.120 flowid 1:20 $tc filter add dev eth0 protocol ip parent 1:0 u32 match ip src 192.168.1.130 flowid 1:30 $tc filter add dev eth0 protocol ip parent 1:0 u32 match ip src 192.168.1.131 flowid 1:31
eth0 - net
pppx>imq0 + eth1 - klienci (ppp na radio a eth wiadomo)
lacze 2000/256
lokal przyjmijmy ze 11Mbit
Prosze o zweryfikowanie (szczegolnie pierwsze linijki) czy to jest poprawne i bedzie dzialac wedle zalozenia zanim zarzuce na serwer gdyz dzialam na "zywym organizmie" wiec nie chce czegos pomotac :-)
Spodkalem sie jeszcze z czyms takim:
tc qdisc add dev eth0 parent 1:3 handle 3:0 sfq perturb 10 tc qdisc add dev eth0 parent 1:5 handle 5:0 sfq perturb 10 tc qdisc add dev eth0 parent 1:6 handle 6:0 sfq perturb 10 itd......
Ponoc dzieli to pasmo na poszczegolne polaczenia po rowno tak aby nawet klient sam sobie jednym programem typu edonkey calego pasma nie zajechal. Czy jest sens to dawac? tzn czy faktycznie sa zauwarzalne rezultaty czy lepiej sobie darowac ? no i najwarzniejsze: kompletnie nie wiem jak tego urzyc :-) Rozumiem tylko ze klien nie wyjdzie poza pasmo przypisane przez htb a jedynie jego kawalek bedzie rozdzielany rowno na potrzeby jego uslug aktualnie wykorzystujacych to pasmo...eeee - dobrze mowie ?
Co do uploadu: co sie dzieje kiedy tak pocienty jak powyjej na moim skrypcie upload, bedzie chcial wyslac cos sam serwer ?? czy on nie podlega pod te kolejki ?? jesli tak to jak to sie dzieje bo nie rozumiem?
pozdr
Offline
upload nie bedzie dobrze ksztaltowany(czyt: nie bedzie ksztaltowany wcale :) ), zainteresuj sie markowaniem pakitow.
Kod: tc qdisc add dev eth0 parent 1:3 handle 3:0 sfq perturb 10 tc qdisc add dev eth0 parent 1:5 handle 5:0 sfq perturb 10 tc qdisc add dev eth0 parent 1:6 handle 6:0 sfq perturb 10 itd...... Ponoc dzieli to pasmo na poszczegolne polaczenia po rowno tak aby nawet klient sam sobie jednym programem typu edonkey calego pasma nie zajechal.
nie do konca tak jest. zerknij na [url]http://rh.cxt.pl/mgr/mgr.htm[/url]
co do upladu na serwer, pakiety te nie beda ograniczane ( czyli powinny leciec ile fabryka da). dlaczego ?? do dyscypliny koljekowej na eth0 pakiety nie trafia bo nie beda nawet rzpechodzic przez ten interfejs, a do imq0 tez nie gdyz
$IPTABLES -t mangle -A POSTROUTING -o ppp$i -j IMQ --todev 0
wrzuca tylko ruch wychodzacy do imq a nie przychodzacy.
Offline
thx za linka - swietnie jest tam temat opracowany, wlasnie czegos takiego potrzebowalem.
Wymacilem drugi skrypcik, wedle mojej teori bedzie dzialal znakomicie, sprawdze go dopiero wieczorem, mam jednak prosbe abys zucil na niego okiem czy wszystko w porzadku - wolalbym uslyszec najpierw opinie osoby ktora ma o rzeczy nieco wieksze pojecie.... :-)
Mam co do niego tylko jedno ale:
#Server->client $tc class add dev imq0 parent 1:1 classid 1:3 htb rate 10000kbit ceil 10000kbit $tc filter add dev imq0 protocol ip parent 1:0 u32 match ip src 192.168.1.1 flowid 1:3 #Server<-Client $tc class add dev imq1 parent 2:1 classid 2:3 htb rate 10000kbit ceil 10000kbit $tc filter add dev imq1 protocol ip parent 2:0 u32 match ip dst 192.168.1.1 flowid 2:3
Dlaczego to nie dziala ? roch np. ftp od klienta do serwera i od serwera do klienta nadal jest limitowany tak jak roch do/z internetu ? To ze nie dziala sprawdzilem juz wczoraj na starym skrypcie, ktory wogole nie funkcjonowal a bynajmniej nie zauwarzylem... :-)
jak skutecznie pokierowac aby miedzy pppx - serwer bylo 10Mbit, a miedzy eth1 - serwer 100Mbit ?? - wolalbym jakis sposob na kolejkach bez markowania pakietow, a jesli juz sie tak nieda to napisz w miare dokladnie jak to ma wygladac.
Calosc wyglada tak:
#!/bin/sh #/etc/rc.boot/dpppoe ifconfig eth2 up #Kolejka IPTABLES="/usr/local/sbin/iptables" tc="/sbin/tc" ip="/sbin/ip" #Gwarantowane d="133kbit" u="16kbit" #Maxymalne dm="1500kbit" um="190kbit" $tc qdisc del root dev imq0 $tc qdisc del root dev imq1 $IPTABLES -t mangle -A POSTROUTING -o eth1 -j IMQ --todev 0 $IPTABLES -t mangle -A PREROUTING -i eth1 -j IMQ --todev 1 for ((i=0; i<=15; i++)); do $IPTABLES -t mangle -A POSTROUTING -o ppp$i -j IMQ --todev 0 done for ((i=0; i<=15; i++)); do $IPTABLES -t mangle -A PREROUTING -i ppp$i -j IMQ --todev 1 done $ip link set imq0 up $ip link set imq1 up $tc qdisc add dev imq0 root handle 1:0 htb default 10 $tc qdisc add dev imq1 root handle 2:0 htb default 10 $tc class add dev imq0 parent 1:0 classid 1:1 htb rate 11000kbit ceil 11000kbit $tc class add dev imq1 parent 2:0 classid 2:1 htb rate 11000kbit ceil 11000kbit #Server->client $tc class add dev imq0 parent 1:1 classid 1:3 htb rate 10000kbit ceil 10000kbit $tc filter add dev imq0 protocol ip parent 1:0 u32 match ip src 192.168.1.1 flowid 1:3 #Server<-Client $tc class add dev imq1 parent 2:1 classid 2:3 htb rate 10000kbit ceil 10000kbit $tc filter add dev imq1 protocol ip parent 2:0 u32 match ip dst 192.168.1.1 flowid 2:3 ## #Net Download/upload $tc class add dev imq0 parent 1:1 classid 1:2 htb rate 2000kbit ceil 2000kbit $tc class add dev imq1 parent 2:1 classid 2:2 htb rate 250kbit ceil 250kbit ## #192.168.1.5/16 - 5 $tc class add dev imq0 parent 1:2 classid 1:5 htb rate $d ceil $dm $tc filter add dev imq0 protocol ip parent 1:0 u32 match ip dst 192.168.1.5/16 flowid 1:5 $tc qdisc add dev imq0 parent 1:5 handle 5:0 sfq preturb 10 $tc class add dev imq1 parent 2:2 classid 2:5 htb rate $u ceil $um $tc filter add dev imq1 protocol ip parent 2:0 u32 match ip src 192.168.1.5/16 flowid 2:5 $tc qdisc add dev imq0 parent 2:5 handle 5:0 sfq preturb 10 #192.168.1.6/16 - 6 $tc class add dev imq0 parent 1:2 classid 1:6 htb rate $d ceil $dm $tc filter add dev imq0 protocol ip parent 1:0 u32 match ip dst 192.168.1.6/16 flowid 1:6 $tc qdisc add dev imq0 parent 1:6 handle 6:0 sfq preturb 10 $tc class add dev imq1 parent 2:2 classid 2:6 htb rate $u ceil $um $tc filter add dev imq1 protocol ip parent 2:0 u32 match ip src 192.168.1.6/16 flowid 2:6 $tc qdisc add dev imq0 parent 2:6 handle 6:0 sfq preturb 10 #192.168.1.7/16 - 7 $tc class add dev imq0 parent 1:2 classid 1:7 htb rate $d ceil $dm $tc filter add dev imq0 protocol ip parent 1:0 u32 match ip dst 192.168.1.7/16 flowid 1:7 $tc qdisc add dev imq0 parent 1:7 handle 7:0 sfq preturb 10 $tc class add dev imq1 parent 2:2 classid 2:7 htb rate $u ceil $um $tc filter add dev imq1 protocol ip parent 2:0 u32 match ip src 192.168.1.7/16 flowid 2:7 $tc qdisc add dev imq0 parent 2:7 handle 7:0 sfq preturb 10 #192.168.1.110/16 - 110 $tc class add dev imq0 parent 1:2 classid 1:110 htb rate $d ceil $dm $tc filter add dev imq0 protocol ip parent 1:0 u32 match ip dst 192.168.1.110/16 flowid 1:110 $tc qdisc add dev imq0 parent 1:110 handle 110:0 sfq preturb 10 $tc class add dev imq1 parent 2:2 classid 2:110 htb rate $u ceil $um $tc filter add dev imq1 protocol ip parent 2:0 u32 match ip src 192.168.1.110/16 flowid 2:110 $tc qdisc add dev imq0 parent 2:110 handle 110:0 sfq preturb 10 #192.168.1.111/16 - 111 $tc class add dev imq0 parent 1:2 classid 1:111 htb rate $d ceil $dm $tc filter add dev imq0 protocol ip parent 1:0 u32 match ip dst 192.168.1.111/16 flowid 1:111 $tc qdisc add dev imq0 parent 1:111 handle 111:0 sfq preturb 10 $tc class add dev imq1 parent 2:2 classid 2:111 htb rate $u ceil $um $tc filter add dev imq1 protocol ip parent 2:0 u32 match ip src 192.168.1.111/16 flowid 2:111 $tc qdisc add dev imq0 parent 2:111 handle 111:0 sfq preturb 10 #192.168.1.112/16 - 112 $tc class add dev imq0 parent 1:2 classid 1:112 htb rate $d ceil $dm $tc filter add dev imq0 protocol ip parent 1:0 u32 match ip dst 192.168.1.112/16 flowid 1:112 $tc qdisc add dev imq0 parent 1:112 handle 112:0 sfq preturb 10 $tc class add dev imq1 parent 2:2 classid 2:112 htb rate $u ceil $um $tc filter add dev imq1 protocol ip parent 2:0 u32 match ip src 192.168.1.112/16 flowid 2:112 $tc qdisc add dev imq0 parent 2:112 handle 112:0 sfq preturb 10 #192.168.1.113/16 - 113 $tc class add dev imq0 parent 1:2 classid 1:113 htb rate $d ceil $dm $tc filter add dev imq0 protocol ip parent 1:0 u32 match ip dst 192.168.1.113/16 flowid 1:113 $tc qdisc add dev imq0 parent 1:113 handle 113:0 sfq preturb 10 $tc class add dev imq1 parent 2:2 classid 2:113 htb rate $u ceil $um $tc filter add dev imq1 protocol ip parent 2:0 u32 match ip src 192.168.1.113/16 flowid 2:113 $tc qdisc add dev imq0 parent 2:113 handle 113:0 sfq preturb 10 #192.168.1.114/16 - 114 $tc class add dev imq0 parent 1:2 classid 1:114 htb rate $d ceil $dm $tc filter add dev imq0 protocol ip parent 1:0 u32 match ip dst 192.168.1.114/16 flowid 1:114 $tc qdisc add dev imq0 parent 1:114 handle 114:0 sfq preturb 10 $tc class add dev imq1 parent 2:2 classid 2:114 htb rate $u ceil $um $tc filter add dev imq1 protocol ip parent 2:0 u32 match ip src 192.168.1.114/16 flowid 2:114 $tc qdisc add dev imq0 parent 2:114 handle 114:0 sfq preturb 10 #192.168.1.115/16 - 115 $tc class add dev imq0 parent 1:2 classid 1:115 htb rate $d ceil $dm $tc filter add dev imq0 protocol ip parent 1:0 u32 match ip dst 192.168.1.115/16 flowid 1:115 $tc qdisc add dev imq0 parent 1:115 handle 115:0 sfq preturb 10 $tc class add dev imq1 parent 2:2 classid 2:115 htb rate $u ceil $um $tc filter add dev imq1 protocol ip parent 2:0 u32 match ip src 192.168.1.115/16 flowid 2:115 $tc qdisc add dev imq0 parent 2:115 handle 115:0 sfq preturb 10 #192.168.1.116/16 - 116 $tc class add dev imq0 parent 1:2 classid 1:116 htb rate $d ceil $dm $tc filter add dev imq0 protocol ip parent 1:0 u32 match ip dst 192.168.1.116/16 flowid 1:116 $tc qdisc add dev imq0 parent 1:116 handle 116:0 sfq preturb 10 $tc class add dev imq1 parent 2:2 classid 2:116 htb rate $u ceil $um $tc filter add dev imq1 protocol ip parent 2:0 u32 match ip src 192.168.1.116/16 flowid 2:116 $tc qdisc add dev imq0 parent 2:116 handle 116:0 sfq preturb 10 #192.168.1.117/16 - 117 $tc class add dev imq0 parent 1:2 classid 1:117 htb rate $d ceil $dm $tc filter add dev imq0 protocol ip parent 1:0 u32 match ip dst 192.168.1.117/16 flowid 1:117 $tc qdisc add dev imq0 parent 1:117 handle 117:0 sfq preturb 10 $tc class add dev imq1 parent 2:2 classid 2:117 htb rate $u ceil $um $tc filter add dev imq1 protocol ip parent 2:0 u32 match ip src 192.168.1.117/16 flowid 2:117 $tc qdisc add dev imq0 parent 2:117 handle 117:0 sfq preturb 10 #192.168.1.118/16 - 118 $tc class add dev imq0 parent 1:2 classid 1:118 htb rate $d ceil $dm $tc filter add dev imq0 protocol ip parent 1:0 u32 match ip dst 192.168.1.118/16 flowid 1:118 $tc qdisc add dev imq0 parent 1:118 handle 118:0 sfq preturb 10 $tc class add dev imq1 parent 2:2 classid 2:118 htb rate $u ceil $um $tc filter add dev imq1 protocol ip parent 2:0 u32 match ip src 192.168.1.118/16 flowid 2:118 $tc qdisc add dev imq0 parent 2:118 handle 118:0 sfq preturb 10 #192.168.1.120/16 - 120 $tc class add dev imq0 parent 1:2 classid 1:120 htb rate $d ceil $dm $tc filter add dev imq0 protocol ip parent 1:0 u32 match ip dst 192.168.1.120/16 flowid 1:120 $tc qdisc add dev imq0 parent 1:120 handle 120:0 sfq preturb 10 $tc class add dev imq1 parent 2:2 classid 2:120 htb rate $u ceil $um $tc filter add dev imq1 protocol ip parent 2:0 u32 match ip src 192.168.1.120/16 flowid 2:120 $tc qdisc add dev imq0 parent 2:120 handle 120:0 sfq preturb 10 #192.168.1.130/16 - 130 $tc class add dev imq0 parent 1:2 classid 1:130 htb rate $d ceil $dm $tc filter add dev imq0 protocol ip parent 1:0 u32 match ip dst 192.168.1.130/16 flowid 1:130 $tc qdisc add dev imq0 parent 1:130 handle 130:0 sfq preturb 10 $tc class add dev imq1 parent 2:2 classid 2:130 htb rate $u ceil $um $tc filter add dev imq1 protocol ip parent 2:0 u32 match ip src 192.168.1.130/16 flowid 2:130 $tc qdisc add dev imq0 parent 2:130 handle 130:0 sfq preturb 10 #192.168.1.131/16 - 131 $tc class add dev imq0 parent 1:2 classid 1:131 htb rate $d ceil $dm $tc filter add dev imq0 protocol ip parent 1:0 u32 match ip dst 192.168.1.131/16 flowid 1:131 $tc qdisc add dev imq0 parent 1:131 handle 131:0 sfq preturb 10 $tc class add dev imq1 parent 2:2 classid 2:131 htb rate $u ceil $um $tc filter add dev imq1 protocol ip parent 2:0 u32 match ip src 192.168.1.131/16 flowid 2:131 $tc qdisc add dev imq0 parent 2:131 handle 131:0 sfq preturb 10 #pppoe-start pppoe-server -I eth2 -N 15 -C szczur -L 192.168.1.1 -k
I jeszcze jedno teoretyczne pytanie: selekcja jest na podstawie modulu u32 pakietow ip - czyli domyslam sie ze tcp i ip, a co z reszta ?? udp, icmp ?? co sie z nimi dzieje ?
pozdr
Offline
Time (s) | Query |
---|---|
0.00012 | SET CHARSET latin2 |
0.00005 | SET NAMES latin2 |
0.00136 | SELECT u.*, g.*, o.logged FROM punbb_users AS u INNER JOIN punbb_groups AS g ON u.group_id=g.g_id LEFT JOIN punbb_online AS o ON o.ident='3.142.36.215' WHERE u.id=1 |
0.00071 | REPLACE INTO punbb_online (user_id, ident, logged) VALUES(1, '3.142.36.215', 1738396025) |
0.00067 | SELECT * FROM punbb_online WHERE logged<1738395725 |
0.00098 | DELETE FROM punbb_online WHERE ident='3.133.117.95' |
0.00089 | DELETE FROM punbb_online WHERE ident='3.15.29.105' |
0.00077 | SELECT topic_id FROM punbb_posts WHERE id=30354 |
0.00023 | SELECT id FROM punbb_posts WHERE topic_id=3805 ORDER BY posted |
0.00066 | SELECT t.subject, t.closed, t.num_replies, t.sticky, f.id AS forum_id, f.forum_name, f.moderators, fp.post_replies, 0 FROM punbb_topics AS t INNER JOIN punbb_forums AS f ON f.id=t.forum_id LEFT JOIN punbb_forum_perms AS fp ON (fp.forum_id=f.id AND fp.group_id=3) WHERE (fp.read_forum IS NULL OR fp.read_forum=1) AND t.id=3805 AND t.moved_to IS NULL |
0.00013 | SELECT search_for, replace_with FROM punbb_censoring |
0.00109 | SELECT u.email, u.title, u.url, u.location, u.use_avatar, u.signature, u.email_setting, u.num_posts, u.registered, u.admin_note, p.id, p.poster AS username, p.poster_id, p.poster_ip, p.poster_email, p.message, p.hide_smilies, p.posted, p.edited, p.edited_by, g.g_id, g.g_user_title, o.user_id AS is_online FROM punbb_posts AS p INNER JOIN punbb_users AS u ON u.id=p.poster_id INNER JOIN punbb_groups AS g ON g.g_id=u.group_id LEFT JOIN punbb_online AS o ON (o.user_id=u.id AND o.user_id!=1 AND o.idle=0) WHERE p.topic_id=3805 ORDER BY p.id LIMIT 0,25 |
0.00118 | UPDATE punbb_topics SET num_views=num_views+1 WHERE id=3805 |
Total query time: 0.00884 s |