Примеры конфигурации: Управление трафиком с помощью IPtables
NSG logo
NSG heading
Сделано в России 
+7 495 727–19–59

Документы в формате PDF, архив (FTP) и Web-справка открываются в новом окне

Размер шрифта AAA

  

QoS: управление трафиком
с помощью IPtables

Требуется ограничить трафик определённого типа, например, входящие пакеты ICMP. Грубое ограничение трафика (любого направления — входящего, исходящего или транзитного) можно выполнить с помощью правил IPtables. Подробно о возможностях IPtables в этой части см. man pages по версии 1.4.7 или выше.

Пример 1. Ограничение по битовой скорости. Первое правило маркирует указанные пакеты как поток myicmplimit и измеряет среднюю скорость этого потока. Второе сравнивает скорость потока с установленным пределом 1 Мбит/сек; в случае превышения этого предела пакет уничтожается.

filter                
: INPUT               
: : 1                 
: : : protocol         = "icmp"
: : : target           = "RATEEST"
: : : rateest-name     = "myicmplimit"
: : : extra-target     = "--rateest-interval 100ms --rateest-ewmalog 0.25s"
: : 2                 
: : : protocol         = "icmp"
: : : explicit-matches
: : : : 1             
: : : : : match-type   = "rateest"
: : : : : params       = "--rateest-gt --rateest myicmplimit --rateest-bps 1mbit"
: : : target           = "DROP"

Пример 2. Ограничение по числу пакетов. Первое правило пропускает пакеты ICMP Echo Request, если их число не превышает 10 в секунду. Второе правило уничтожает пакеты, не пропущенные первым.

filter                 
: INPUT               
: : 1                 
: : : protocol         = "icmp"
: : : icmp-type        = "echo-request"
: : : explicit-matches
: : : : 1             
: : : : : match-type   = "limit"
: : : : : params       = "--limit 10/s"
: : : target           = "ACCEPT"
: : 2                 
: : : protocol         = "icmp"
: : : icmp-type        = "echo-request"
: : : target           = "DROP"

Дополнительные замечания:

Дисциплины полисинга входящего трафика, такие как ingress, в текущих версиях NSG Linux 2.x не поддерживаются, но могут быть реализованы в случае необходимости.


© ООО "ЭН–ЭС–ДЖИ" 2004–2024