Ограничение скорости доступа в Интернет

    О чем этот текст?

    Довольно часто возникает потребность разделения канала между пользователями. Даже если у тебя канал в 100 мегабит безлимита. Дело в том, что даже такой канал может забить какой-нибудь мерзкий сотрудник. Решение проблемы описывается в данном материале.

    Примечание

    Прежде чем приступать к практике, убедись, что ты знаешь и понимаешь назначение следующих директив Squid:

    Обрати внимание на версию твоего Squid. Известный баг, что в Squid 4.x версий delay pools не работают. Так что, глянь на календарь и если на дворе уже минул 2022 год, смело ставь/собирай Squid 5.8, многие проблемы там починены.

    Основная часть

    # Определяем важный, обязательный ACL с именем all. Он включает в себя все возможные IP адреса протокола IPv4. Потому и его название - all(Все).

    acl all src 0.0.0.0/0.0.0.0

    # Определяем ACL для пользователей нашей сети(192.168.1.0).

    acl ournet src 192.168.1.0/24

    #Определяем группу «скоростных» пользователей. Там где скорость будет высокая.

    acl goodclients src 192.168.1.5 192.168.1.6 192.168.1.10

    #Определяем группу «медленных» пользователей. Там где скорость будет низкая.

    acl badclients src 192.168.1.15 192.168.1.16 192.168.1.17

    # Открываем доступ нашей сети.

    http_access allow ournet

    # Остальной доступ закрываем.

    http_access deny all

    #Создадим два пула по которым будут пролетать наши пользователи.

    delay_pools 2
    delay_class 1 1
    delay_class 2 1

    # Скоростные будут «лететь» по первому пулу.

    delay_access 1 allow goodclients
    delay_access 1 deny all

    # А медленные по второму.

    delay_access 2 allow badclients
    delay_access 2 deny all

    #Ограничим скорость на пулах

    #Первому дадим без ограничений

    delay_parameters 1 -1/-1

    #А второму установим в 128 килобит

    delay_parameters 2 16000/16000

    Запускай Squid или перезапускай если уже запущен, чтобы правила применились. Готово.

    А если хочешь управлять ограничением скорости динамически, например по достижению объема трафика, то приглядись к нашей Screen Squid.