IPCop-Forum.de

www.ipcop-forum.de


IPCop-Community
CL-Systems
Home Home   Doku Doku   Links Links   Downloads Downloads
UnIPCop Der (Un)IPCop   IFS IPCop-ForumSpy
CopTime CopTime   Galerie IPCop-Galerie   IPCop Userkarte Userkarte
Aktuelle Zeit: 18.06.2018, 18:59

Alle Zeiten sind UTC+02:00




Ein neues Thema erstellen  Auf das Thema antworten  [ 19 Beiträge ]  Gehe zu Seite 1 2 Nächste
Autor Nachricht
 Betreff des Beitrags: QOS per IP festlegen
BeitragVerfasst: 03.04.2016, 21:28 
Offline
Sergeant
Themenstarter
Sergeant

Registriert: 09.04.2009
Beiträge: 54
Hallo miteinander,

ich hab mich jetzt mal so durch ziemlich alle Beiträge gelesen die sich hier mit QOS mittels IPCOP beschäftigen.
Fazit ist, dass es wohl für die aktuelle Version 2.1.9 (noch) keine Möglichkeit gibt per Web-GUI QOS zu konfigurieren. Andererseits ist es wohl möglich "hinten rum" was zu basteln, was einem QOS gleich kommt :-)
Was ich nun bräuchte ist unabhängigt auf welchem Port der Traffic entsteht ein QOS auf bestimmte IP Adressen oder Adressenbereiche.
Zum Beispiel:
die IP 192.168.1.20 darf maximal 1MB Upload und 1 MB Download haben.
Der IP Bereich 192.168.1.40 bis 192.168.1.50 darf 2 MB Upload und 2 MB download benutzen

Wie müsste ein solches Script(?) aussehen und wie müsste ich das WO einfügen?

Vielen Dank für Eure Hilfe :-)
Gruss
Michael


Nach oben
   
 Betreff des Beitrags: Re: QOS per IP festlegen
BeitragVerfasst: 03.04.2016, 22:38 
Offline
Administrator
Administrator

Registriert: 01.03.2004
Beiträge: 22218
Ich denke, Du suchst so etwas:

:arrow: viewtopic.php?f=63&t=29179


Nach oben
   
 Betreff des Beitrags: Re: QOS per IP festlegen
BeitragVerfasst: 04.04.2016, 08:00 
Offline
Inspector
Inspector
Benutzeravatar

Registriert: 02.05.2013
Beiträge: 98
Wohnort: Hünfeld (Konrad-Zuse-Stadt)
Alternativ käme auch der Einsatz des Web-Proxyservers (squid) in Frage.
Über diverse ACL und Delay Classes könnte zwar kein QOS im engeren Sinne, wohl aber eine Bandbreitenbegrenzung ermöglicht werden.
Geh' mal googlen nach den Begriffen: Squid, Delay Pool.

_________________
... von den Baumwollfeldern der Rhön


Nach oben
   
 Betreff des Beitrags: Re: QOS per IP festlegen
BeitragVerfasst: 05.04.2016, 01:10 
Offline
Sergeant
Themenstarter
Sergeant

Registriert: 09.04.2009
Beiträge: 54
wintermute hat geschrieben:
Ich denke, Du suchst so etwas:

:arrow: viewtopic.php?f=63&t=29179


Jaaa, das sieht schon sehr gut aus.
Aber wie lautet der genaue Syntax wenn ich nun einen Teilbereich definieren will?

z.B. 192.168.1.101 bis 192.168.1.199

würde im Script dann heissen Iprange 192.168.1.101/199 ??

Oder geht das so nicht und ich muss jede IP einzelnd definieren?

Gruss
Michael


Nach oben
   
 Betreff des Beitrags: Re: QOS per IP festlegen
BeitragVerfasst: 06.04.2016, 00:55 
Offline
Sergeant
Themenstarter
Sergeant

Registriert: 09.04.2009
Beiträge: 54
Also, beim Einbinden des Scripts bin ich bis zum chmod ohne Probleme gekommen. Doch beim Befehl
/etc/rc.d/rc.trafficlimit restart komt dann ein No such file or Directory.
Das Script liegt aber definitiv in etc/rc.d/.....

Hast Du eine Idee was da fehlt?

Gruss
Michael


Nach oben
   
 Betreff des Beitrags: Re: QOS per IP festlegen
BeitragVerfasst: 07.04.2016, 11:18 
Offline
Administrator
Administrator

Registriert: 01.03.2004
Beiträge: 22218
Du hast die Datei doch selber editiert (das passiert laut Anleitung vor dem chmod), oder nicht?

Falls Du die Datei an einem anderen Ort als /etc/rc.d/ erstellt/editiert/kopiert haben solltest (oder noch garnicht):
Halte Dich bitte einfach 1:1 an die Anleitung, dann wird das auch klappen.

Falls Du dir sicher bist, die Anleitung 1:1 umgesetzt zu haben, poste die Ausgabe von:
Code:
ls -la /etc/rc.d/rc.trafficlimit


Nach oben
   
 Betreff des Beitrags: Re: QOS per IP festlegen
BeitragVerfasst: 07.04.2016, 13:04 
Offline
Sergeant
Themenstarter
Sergeant

Registriert: 09.04.2009
Beiträge: 54
Hallo,
also die Datei habe ich unter Windows natürlich entsprechend angepasst. Dann mit winscp nach /etc/rc.d kopiert.

Dia Ausgabe von ls -la....... ergibt folgendes:

-rwxr-xr-x 1 root root 4395 Apr 5 :23:36 /etc/rc.d/rc.trafficlimit


Gruss Michael


Nach oben
   
 Betreff des Beitrags: Re: QOS per IP festlegen
BeitragVerfasst: 07.04.2016, 15:13 
Offline
Administrator
Administrator

Registriert: 01.03.2004
Beiträge: 22218
hauzinger hat geschrieben:
-rwxr-xr-x 1 root root 4395 Apr 5 :23:36 /etc/rc.d/rc.trafficlimit

Das sieht schon einmal gut aus. Poste den kompletten Inhalt des Skriptes und/oder vergleiche
ihn mit dem Inhalt der Originalvorlage. Offensichtlich hast Du irgendwo einen Fehler eingebaut.


Nach oben
   
 Betreff des Beitrags: Re: QOS per IP festlegen
BeitragVerfasst: 07.04.2016, 15:33 
Offline
Sergeant
Themenstarter
Sergeant

Registriert: 09.04.2009
Beiträge: 54
wintermute hat geschrieben:
hauzinger hat geschrieben:
-rwxr-xr-x 1 root root 4395 Apr 5 :23:36 /etc/rc.d/rc.trafficlimit

Das sieht schon einmal gut aus. Poste den kompletten Inhalt des Skriptes und/oder vergleiche
ihn mit dem Inhalt der Originalvorlage. Offensichtlich hast Du irgendwo einen Fehler eingebaut.



#!/bin/bash
#
# IPCop very, very simple traffic shaper (limiter) for 1 device
#
# This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.
# This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
#
# Copyright (c) 2007-2010 weizen_42
# based on ideas and documentation from:
# LARTC HowTo http://lartc.org/howto/index.html
# HTB Manual http://luxik.cdi.cz/~devik/qos/htb/manual/userg.htm
#
# Change device, IP, max- and limitrate to suit your needs
#
# v1.0 initial release
# v2.0 IPCop v2
#


TC=/sbin/tc

# read IPCop variables
eval $(/usr/local/bin/readhash /var/ipcop/ethernet/settings)
if [ -e "/var/ipcop/red/iface" ]; then
REAL_RED=`cat /var/ipcop/red/iface`
fi

# which device to shape
DEV=$GREEN_1_DEV

# limit IP 192.168.1.2, IPrange 192.168.1.0/24 or complete device 0.0.0.0/0

#--------------------------------512/1024
IPrange=192.168.1.1/20
# from IPCop to IP/network
DOWN_MAX=6mbit
DOWN_LIMIT=1024kbit
# from IP/network to IPCop
UP_MAX=6mbit
UP_LIMIT=512kbit
#--------------------------------512/1536
IPrange=192.168.1.21/40
# from IPCop to IP/network
DOWN_MAX=6mbit
DOWN_LIMIT=1536kbit
# from IP/network to IPCop
UP_MAX=6mbit
UP_LIMIT=512kbit
#--------------------------------2048/2048
IPrange=192.168.1.41/60
# from IPCop to IP/network
DOWN_MAX=6mbit
DOWN_LIMIT=2048kbit
# from IP/network to IPCop
UP_MAX=6mbit
UP_LIMIT=2048kbit
#--------------------------------6144/6144
IPrange=192.168.1.61/100
# from IPCop to IP/network
DOWN_MAX=6mbit
DOWN_LIMIT=6mbit
# from IP/network to IPCop
UP_MAX=6mbit
UP_LIMIT=6mbit
#--------------------------------
IP=192.168.1.150
# from IPCop to IP/network
DOWN_MAX=6mbit
DOWN_LIMIT=6mbit
# from IP/network to IPCop
UP_MAX=6mbit
UP_LIMIT=6mbit
#--------------------------------
IP=192.168.1.250
# from IPCop to IP/network
DOWN_MAX=6mbit
DOWN_LIMIT=6mbit
# from IP/network to IPCop
UP_MAX=6mbit
UP_LIMIT=6mbit
#--------------------------------512/512
IPrange=192.168.1.101/149
# from IPCop to IP/network
DOWN_MAX=6mbit
DOWN_LIMIT=512kbit
# from IP/network to IPCop
UP_MAX=6mbit
UP_LIMIT=512kbit
#--------------------------------
IPrange=192.168.1.151/199
# from IPCop to IP/network
DOWN_MAX=6mbit
DOWN_LIMIT=512kbit
# from IP/network to IPCop
UP_MAX=6mbit
UP_LIMIT=512kbit

#--------------------------------

# See how we were called.
case "$1" in
status)
echo -e "\\033[1;32m##### Queues on dev: $DEV \\033[0m"
$TC -s qdisc show dev $DEV
echo -e "\\033[1;32m\r##### Classes on dev: $DEV \\033[0m"
$TC -s class show dev $DEV
echo -e "\\033[1;32m##### Filters on dev: $DEV \\033[0m"
$TC -s filter show dev $DEV
;;
start)
echo -e "\\033[1;32mStarting simple shaper on dev: $DEV \\033[0m"

# qdisc htb, default class 1:99
$TC qdisc add dev $DEV root handle 1: htb default 99
# add root class with max rate and default class with max rate
$TC class add dev $DEV parent 1: classid 1:1 htb rate $DOWN_MAX
$TC class add dev $DEV parent 1:1 classid 1:99 htb rate $DOWN_MAX ceil $DOWN_MAX
# add rate and ceil limited class 1:10
$TC class add dev $DEV parent 1:1 classid 1:10 htb rate $DOWN_LIMIT ceil $DOWN_LIMIT
# match dst IP to 1:10
$TC filter add dev $DEV protocol ip parent 1:0 prio 1 u32 match ip dst $IP flowid 1:10

# this might need some more work :-/
$TC qdisc add dev $DEV handle ffff: ingress
$TC filter add dev $DEV parent ffff: protocol ip prio 50 u32 match ip src $IP police rate $UP_LIMIT burst 10k drop flowid :1
;;
stop)
echo -e "\\033[1;32mStopping simple shaper on dev: $DEV \\033[0m"
# clean existing down- and uplink qdiscs, hide errors
$TC qdisc del dev $DEV root 2> /dev/null > /dev/null
$TC qdisc del dev $DEV ingress 2> /dev/null > /dev/null
;;
restart)
$0 stop
sleep 1
$0 start
;;
*)
echo "Usage: $0 {start|stop|restart|status}"
exit 1
;;
esac

exit 0


Nach oben
   
 Betreff des Beitrags: Re: QOS per IP festlegen
BeitragVerfasst: 07.04.2016, 15:54 
Offline
Administrator
Administrator

Registriert: 01.03.2004
Beiträge: 22218
Das ist Deine Version des Skriptes auf einer Testmaschine (IPCop v2.1.9):

Code:
root@ipcop:~ # /etc/rc.d/rc.trafficlimit
Usage: /etc/rc.d/rc.trafficlimit {start|stop|restart|status}
root@ipcop:~ # /etc/rc.d/rc.trafficlimit start
Starting simple shaper on dev: lan-1
root@ipcop:~ # /etc/rc.d/rc.trafficlimit stop
Stopping simple shaper on dev: lan-1

Deine Subnetzmasken müssen übrigens noch gerichtet werden.


Nach oben
   
 Betreff des Beitrags: Re: QOS per IP festlegen
BeitragVerfasst: 07.04.2016, 16:16 
Offline
Sergeant
Themenstarter
Sergeant

Registriert: 09.04.2009
Beiträge: 54
wintermute hat geschrieben:
Das ist Deine Version des Skriptes auf einer Testmaschine (IPCop v2.1.9):

Code:
root@ipcop:~ # /etc/rc.d/rc.trafficlimit
Usage: /etc/rc.d/rc.trafficlimit {start|stop|restart|status}
root@ipcop:~ # /etc/rc.d/rc.trafficlimit start
Starting simple shaper on dev: lan-1
root@ipcop:~ # /etc/rc.d/rc.trafficlimit stop
Stopping simple shaper on dev: lan-1

Deine Subnetzmasken müssen übrigens noch gerichtet werden.


Mit anderen Worten das Script ist soweit syntaxsmässig richtig...
Wo passe ich die Subnetzmasken an? Ich finde da nichts passendes....

Da aber das Script so wie es ist bei Dir anscheinend startet, weiss ich immer noch nicht was da bei mir schief läuft. Denn Fakt ist dass er da beim starten irgendwas nicht findet.
Ich habs auch mittlerweile in die rc.local eingetragen, aber da erscheint beim booten die gleiche Fehlermeldung....

Hier nochmal die komplette Fehlermeldung:

-bash: /etc/rc.d/rc.trafficlimit /bin/bash^M: bad Interpreter: No such file or Directory

Gruss
Michael


Nach oben
   
 Betreff des Beitrags: Re: QOS per IP festlegen
BeitragVerfasst: 07.04.2016, 17:08 
Offline
Site-Moderator
Site-Moderator
Benutzeravatar

Registriert: 18.12.2007
Beiträge: 3328
Wohnort: Im Norden bei mir zu Hause
hauzinger hat geschrieben:
also die Datei habe ich unter Windows natürlich entsprechend angepasst.
Mit welchem Editor wurde die Datei angepasst?

_________________
Gruß edelweis

Sledgehammer engineering, if it doesn't work, hammer it damn hard :super:

Bild
Bild
Meine Vorstellung


Nach oben
   
 Betreff des Beitrags: Re: QOS per IP festlegen
BeitragVerfasst: 07.04.2016, 18:19 
Offline
Sergeant
Themenstarter
Sergeant

Registriert: 09.04.2009
Beiträge: 54
edelweis hat geschrieben:
hauzinger hat geschrieben:
also die Datei habe ich unter Windows natürlich entsprechend angepasst.
Mit welchem Editor wurde die Datei angepasst?


EditPad lite...

https://www.editpadlite.com/download.html


Nach oben
   
 Betreff des Beitrags: Re: QOS per IP festlegen
BeitragVerfasst: 07.04.2016, 22:14 
Offline
Site-Moderator
Site-Moderator
Benutzeravatar

Registriert: 18.12.2007
Beiträge: 3328
Wohnort: Im Norden bei mir zu Hause
wintermute hat geschrieben:
hauzinger hat geschrieben:
-rwxr-xr-x 1 root root 4395 Apr 5 :23:36 /etc/rc.d/rc.trafficlimit

Das sieht schon einmal gut aus.
Hm, irgendwie stört mich der Doppelpunkt vor der 23. :denk:
wintermute hat geschrieben:
Offensichtlich hast Du irgendwo einen Fehler eingebaut.
Wird er sehr wohl, nur wo, kann nur hauzinger sagen. Ich hab es gerade mit beiden von weizen_42 angebotenen Varianten probiert, funktionieren fehlerfrei.
Variante mit Download:
Code:
root@testcop:/AddOns # tar xvfz trafficlimit-ipcop-2.0.tar.gz -C /
etc/rc.d/rc.trafficlimit
root@testcop:/AddOns # cd /etc/rc.d/
root@testcop:/etc/rc.d # ls
ipsec               rc.event           rc.fritzdsl   rc.solosdsl
rc.conexantpciadsl  rc.event.local     rc.halt       rc.sysinit
rc.connectioncheck  rc.firewall        rc.isdn       rc.trafficlimit
rc.dnsmasq          rc.firewall.local  rc.net        rc.updatered
rc.eagleusbadsl     rc.flash.down      rc.pulsardsl  rc.wanpipe
rc.eciadsl          rc.flash.up        rc.red
root@testcop:/etc/rc.d # cd /
root@testcop:/ # ls -al /etc/rc.d/rc.trafficlimit
-rwxr-xr-x 1 root root 2919 Apr  7 21:50 /etc/rc.d/rc.trafficlimit
root@testcop:/ # /etc/rc.d/rc.trafficlimit restart
Stopping simple shaper on dev: wlan-1
Starting simple shaper on dev: wlan-1
root@testcop:/

Variante mit manueller Erstellung und Modifizierung der Datei via WinSCP:
Code:
root@testcop:/ # cd /etc/rc.d/
root@testcop:/etc/rc.d # touch rc.trafficlimit
root@testcop:/etc/rc.d # ls -al rc.trafficlimit
-rw-r--r-- 1 root root 0 Apr  7 21:55 rc.trafficlimit
root@testcop:/etc/rc.d # /etc/rc.d/rc.trafficlimit restart
-bash: /etc/rc.d/rc.trafficlimit: Permission denied
root@testcop:/etc/rc.d # chmod 755 /etc/rc.d/rc.trafficlimit
root@testcop:/etc/rc.d # /etc/rc.d/rc.trafficlimit restart
Stopping simple shaper on dev: lan-1
Starting simple shaper on dev: lan-1
root@testcop:/etc/rc.d # ls -al rc.trafficlimit
-rwxr-xr-x 1 root root 2921 Apr  7 21:57 rc.trafficlimit
root@testcop:/etc/rc.d # ls -la rc.trafficlimit
-rwxr-xr-x 1 root root 2921 Apr  7 21:57 rc.trafficlimit
root@testcop:/etc/rc.d # cd /
root@testcop:/ # ls -la /etc/rc.d/rc.trafficlimit
-rwxr-xr-x 1 root root 2921 Apr  7 21:57 /etc/rc.d/rc.trafficlimit
root@testcop:/ # /etc/rc.d/rc.trafficlimit restart
Stopping simple shaper on dev: lan-1
Starting simple shaper on dev: lan-1
root@testcop:/ #

_________________
Gruß edelweis

Sledgehammer engineering, if it doesn't work, hammer it damn hard :super:

Bild
Bild
Meine Vorstellung


Nach oben
   
 Betreff des Beitrags: Re: QOS per IP festlegen
BeitragVerfasst: 07.04.2016, 22:18 
Offline
Administrator
Administrator

Registriert: 01.03.2004
Beiträge: 22218
Ich denke, der verwendete Editor ist nicht geeignet oder falsch eingestellt.

Die nachgelieferte, komplette Fehlermeldung zeigt das ziemlich deutlich ("/bin/bash^M: bad Interpreter: No such
file or Directory"). Einfach den internen Editor von WinSCP (oder vi/nano/mcedit/joe) verwenden und alles wird gut.


Nach oben
   
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen  Auf das Thema antworten  [ 19 Beiträge ]  Gehe zu Seite 1 2 Nächste

Alle Zeiten sind UTC+02:00


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast


Du darfst keine neuen Themen in diesem Forum erstellen.
Du darfst keine Antworten zu Themen in diesem Forum erstellen.
Du darfst deine Beiträge in diesem Forum nicht ändern.
Du darfst deine Beiträge in diesem Forum nicht löschen.

Suche nach:
Gehe zu Forum:  
Powered by phpBB® Forum Software © phpBB Limited
Deutsche Übersetzung durch phpBB.de