IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Debian Discussion :

Limitation de bp avec iptables et tc


Sujet :

Debian

  1. #1
    HNT
    HNT est déconnecté
    Membre actif Avatar de HNT
    Profil pro
    Étudiant
    Inscrit en
    Juin 2005
    Messages
    448
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2005
    Messages : 448
    Points : 293
    Points
    293
    Par défaut Limitation de bp avec iptables et tc
    Bonjour,

    Comme le titre l'indique, j'essaye simplement de limiter la bande passante utilisable dans un reseau local. Ca ne marche pas du tout. J'ai une ADSL 3.6 Mbps et pour de raisons indépendantes de ma volonté (je ne suis pas pour mais bon ...) on m'impose de limiter à 512 kbps le down et 128 kbps l'upload. Je me suis donc renseigner sur google et ai trouvé que la commande tc permettait de limiter la bande passante employée (en l'employant sur une passerelle, ce que je fait)

    Voici donc mes scripts et morceau de script :
    1° /etc/network/tc_limit.sh :
    #!/bin/bash

    TC=/sbin/tc
    DNLD=512Kbit # Limite de download
    DWEIGHT=51Kbit # coefficient de DOWNLOAD (Weight Factor) ~ 1/10 of DOWNLOAD Limit
    UPLD=128KBit # Limite d'upload Limit
    UWEIGHT=13Kbit # Coefficient d'UPLOAD (Weight Factor)

    tc_start() {
    $TC qdisc add dev eth1 root handle 11: cbq bandwidth 100Mbit avpkt 1000 mpu 64
    $TC class add dev eth1 parent 11:0 classid 11:1 cbq rate $DNLD weight $DWEIGHT allot 1514 prio 1 avpkt 1000 bounded
    $TC filter add dev eth1 parent 11:0 protocol ip handle 4 fw flowid 11:1

    $TC qdisc add dev eth0 root handle 10: cbq bandwidth 10Mbit avpkt 1000 mpu 64
    $TC class add dev eth0 parent 10:0 classid 10:1 cbq rate $UPLD weight $UWEIGHT allot 1514 prio 1 avpkt 1000 bounded
    $TC filter add dev eth0 parent 10:0 protocol ip handle 3 fw flowid 10:1
    }

    tc_stop() {
    $TC qdisc del dev eth0 root
    $TC qdisc del dev eth1 root
    }

    case "$1" in
    start)
    echo -n "Starting bandwidth shaping: "
    tc_start
    echo "done"
    ;;
    stop)
    echo -n "Stopping bandwidth shaping: "
    tc_stop
    echo "done"
    ;;
    *)
    echo "Usage: /etc/init.d/tc.sh {start|stop|restart|show}"
    ;;

    esac
    exit 0
    et voici la partie de /etc/network/iptables_config.sh pour marquer les paquets :
    # Marque les packets
    # Marquage des packets en upload
    iptables -t mangle -A FORWARD -s $LOCAL_NETWORK -j MARK --set-mark 3

    # Marquage des packets en download
    iptables -t mangle -A FORWARD -s ! $LOCAL_NETWORK -d $LOCAL_NETWORK -j MARK --set-mark 4

    # Lancé le script de limitation
    /etc/network/tc_limit.sh start
    Rmq : la carte qui prend la connection internet est sur eth0 et celle qui distribue sur le reseau local est sur eth1.
    The box said : "Requires windows 95, NT or better" so I installed Linux.

  2. #2
    Membre habitué
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    412
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Décembre 2006
    Messages : 412
    Points : 149
    Points
    149
    Par défaut
    sa m'interesse aussi

  3. #3
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    1
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2008
    Messages : 1
    Points : 1
    Points
    1
    Par défaut
    Je voudrais juste limité l'upload !

    Est ce que ton script fonctionne ?

Discussions similaires

  1. Limite de contour avec la souris
    Par MarKo04 dans le forum Delphi
    Réponses: 6
    Dernier message: 23/08/2006, 12h21
  2. LIMIT calcul mal avec des JOIN
    Par FMaz dans le forum Requêtes
    Réponses: 21
    Dernier message: 12/07/2006, 03h37
  3. Mapping de port avec iptables
    Par segphault dans le forum Sécurité
    Réponses: 1
    Dernier message: 12/01/2006, 00h01
  4. Simulation de la fonction LIMIT de MySQL avec SQL Server
    Par Le Pharaon dans le forum MS SQL Server
    Réponses: 6
    Dernier message: 15/11/2005, 10h43
  5. Ports forwarding avec iptables
    Par Iced Earth dans le forum Réseau
    Réponses: 6
    Dernier message: 19/11/2002, 21h24

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo