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!

Ogłoszenie

Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.

#1  2012-01-12 12:11:45

  oli - Zbanowany

oli
Zbanowany
Zarejestrowany: 2012-01-08

Prosty skrypt HTB-IMQ dla małej sieci.

Jestem początkującym i proszę o wyrozumiałość :)
Potrzebuję postawić mały serwer dla małej sieci. Zatrzymałem się na kształtowaniu pasma przez HTB-IMQ.
Oto moja konfiguracja

Kod:

root@debian:~# cat /etc/network/interfaces
# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
allow-hotplug eth1
iface eth1 inet dhcp
auto eth0
iface eth0 inet static
address 192.168.1.1
netmask 255.255.255.0
network 192.168.1.0
broadcast 192.168.1.255
root@debian:~#

Kod:

root@debian:~# cat /etc/dhcp/dhcpd.conf
ddns-update-style none;


log-facility local7;

 
subnet 192.168.1.0 netmask 255.255.255.0 {
        option routers 192.168.1.1;
        option subnet-mask 255.255.255.0;
        option domain-name-servers 192.168.88.1;
        option ip-forwarding off;
        range dynamic-bootp 192.168.1.2 192.168.1.14;
        default-lease-time 21600;
        max-lease-time 43200;
host komp1 { # komputer nr 1
      hardware ethernet 00:1d:60:f3:93:df;
      fixed-address 192.168.1.2;
  }

}

root@debian:~#

Oprócz tego ładowany jest skrypt firewalla. Tutaj się zatrzymałem i nie wiem czy to jest dobrze czy źle. W każdym bądź razie nie działa. Czy trzeba interfejsy IMQ zaadresować? Niestety ale z IMQ mam do czynienia pierwszy raz.
Potrzebuje prostego skryptu dla sieci (13 klientów), podział per IP, MAC do IP. Łącze Down-8Mb/s - Up-1Mb/s.

Kod:

root@debian:~# cat /etc/init.d/firewall
### BEGIN INIT INFO
# Provides:          firewall
# Required-Start:    $syslog
# Required-Stop:     $syslog
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: hardisk firewall daemon
# Description:
#
### END INIT INFO
 
# wlaczenie w kernelu forwardowania 
echo 1 > /proc/sys/net/ipv4/ip_forward
# czyszczenie starych regul
iptables -F
iptables -X
iptables -t nat -X
iptables -t nat -F
# ustawienie polityki dzialania
iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT ACCEPT
# zezwolenie nna laczenie sie z naszym zewnetrznym ip po ssh

iptables -A INPUT -i lo -j ACCEPT
iptables -A FORWARD -o lo -j ACCEPT

iptables -A INPUT -s 0/0 -d 192.168.88.110 -p tcp --dport 22 -j ACCEPT
iptables -A OUTPUT -s 0/0 -d  192.168.88.110 -p tcp --dport 22 -j ACCEPT
iptables -A INPUT -s 0/0 -d  192.168.88.110 -p udp --dport 22 -j ACCEPT
iptables -A OUTPUT -s 0/0 -d  192.168.88.110 -p udp --dport 22 -j ACCEPT
# polaczenia nawiazane
iptables -A INPUT -j ACCEPT -m state --state ESTABLISHED,RELATED
iptables -A FORWARD -j ACCEPT -m state --state ESTABLISHED,RELATED
iptables -A OUTPUT -j ACCEPT -m state --state ESTABLISHED,RELATED
# udostepniaie internetu w sieci lokalnej
iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -j MASQUERADE
iptables -A FORWARD -s 192.168.1.0/24 -j ACCEPT

# HTB
modprobe imq
modprobe ipt_IMQ

# DOWNLOAD kolejka glowna
tc qdisc add dev imq0 root handle 1:0 htb
tc class add dev imq0 parent 1:0 classid 1:1 htb rate 7000kbit ceil 7000kbit quantum 1500

# kolejka dla serwera
tc class add dev imq0 parent 1:1 classid 1:2 htb rate 512kbit ceil 7000kbit quantum 1500
tc qdisc add dev imq0 parent 1:2 sfq perturb 10 quantum 1500b
tc filter add dev imq0 parent 1:0 pref 2 protocol ip u32 match ip dst 192.168.88.110 flowid 1:2

# TECHNICY
tc class add dev imq0 parent 1:1 classid 1:3 htb rate 512kbit ceil 7000kbit quantum 1500
tc qdisc add dev imq0 parent 1:3 sfq perturb 10 quantum 1500b
tc filter add dev imq0 parent 1:0 pref 3 protocol ip u32 match ip dst 192.168.1.2 flowid 1:3
....
# UPLOAD kolejka glowna
tc qdisc add dev imq1 root handle 1:0 htb
tc class add dev imq1 parent 1:0 classid 1:1 htb rate 900kbit ceil 900kbit quantum 1500

# kolejka dla serwera
tc class add dev imq1 parent 1:1 classid 1:2 htb rate 60kbit ceil 900kbit quantum 1500
tc qdisc add dev imq1 parent 1:2 sfq perturb 10 quantum 1500b
tc filter add dev imq1 parent 1:0 pref 2 protocol ip u32 match ip src 192.168.88.110 flowid 1:2

# TECHNICY
tc class add dev imq1 parent 1:1 classid 1:3 htb rate 60kbit ceil 900kbit quantum 1500
tc qdisc add dev imq1 parent 1:3 sfq perturb 10 quantum 1500b      

# itd
iptables -I FORWARD -m iprange --dst-rang 192.168.1.15-192.168.1.254 -j DROP 
root@debian:~#

Jeszcze dodam kilka informacji.

Kod:

root@debian:~# ifconfig
eth0      Link encap:Ethernet  HWaddr 00:30:4f:1f:8a:f0  
          inet addr:192.168.1.1  Bcast:192.168.1.255  Mask:255.255.255.0
          UP BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)
          Interrupt:18 Base address:0x1000 

eth1      Link encap:Ethernet  HWaddr 00:12:79:db:d4:20  
          inet addr:192.168.88.110  Bcast:192.168.88.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:5158 errors:0 dropped:0 overruns:0 frame:0
          TX packets:4662 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:577310 (563.7 KiB)  TX bytes:754462 (736.7 KiB)
          Interrupt:17 

lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:8 errors:0 dropped:0 overruns:0 frame:0
          TX packets:8 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:560 (560.0 B)  TX bytes:560 (560.0 B)

root@debian:~#

oraz

Kod:

root@debian:~# ifconfig -a
eth0      Link encap:Ethernet  HWaddr 00:30:4f:1f:8a:f0  
          inet addr:192.168.1.1  Bcast:192.168.1.255  Mask:255.255.255.0
          UP BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)
          Interrupt:18 Base address:0x1000 

eth1      Link encap:Ethernet  HWaddr 00:12:79:db:d4:20  
          inet addr:192.168.88.110  Bcast:192.168.88.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:5202 errors:0 dropped:0 overruns:0 frame:0
          TX packets:4692 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:581062 (567.4 KiB)  TX bytes:759202 (741.4 KiB)
          Interrupt:17 

imq0      Link encap:UNSPEC  HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00  
          NOARP  MTU:16000  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:11000 
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

imq1      Link encap:UNSPEC  HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00  
          NOARP  MTU:16000  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:11000 
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:8 errors:0 dropped:0 overruns:0 frame:0
          TX packets:8 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:560 (560.0 B)  TX bytes:560 (560.0 B)

root@debian:~#

Ostatnio edytowany przez oli (2012-01-12 12:54:19)

Offline

 

#2  2012-01-12 13:02:47

  Jacekalex - Podobno człowiek...;)

Jacekalex
Podobno człowiek...;)
Skąd: /dev/random
Zarejestrowany: 2008-01-07

Re: Prosty skrypt HTB-IMQ dla małej sieci.

Interfejsy imq się podnosi tak samo, jak każde inne.

Zobacz moje boje, jak pierwszy raz "powąchałem" imq:
http://forum.dug.net.pl/viewtopic.php?id=14006

A tu masz najlepszy przyklad markowania przez Layer7, jaki widziałem:
http://wiki.openwrt.org/doc/howto/netfilter/netfilt … bles.example3

A tu solidne podstawy z przykładami (troszkę stare, ale dokładne i jasno, zwięźle napisane): http://bromirski.net/docs/translations/lartc-pl.html

Ostatnio edytowany przez Jacekalex (2012-01-12 13:07:21)


W demokracji każdy naród ma taką władzę, na jaką zasługuje ;)
Si vis pacem  para bellum  ;)       |       Pozdrawiam :)

Offline

 

Stopka forum

Powered by PunBB
© Copyright 2002–2005 Rickard Andersson
Nas ludzie lubią po prostu, a nie klikając w przyciski ;-)