Я запускаю торрент-клиент на моем безголовом сервере Ubuntu. Также к этому серверу подключено количество компьютеров, которое используется как интернет-шлюз / маршрутизатор. Вопрос в том, можно ли настроить iptables для определения приоритетности трафика с eth1 (lan if) по локальному трафику, генерируемому сервером? Что-то вроде QOS ..
Качество обслуживания - довольно сложная тема - ссылка, размещенная @ anders-f-u-kiaer, возможно, является лучшим решением, но довольно сложной. Я вовсе не эксперт по этому поводу, поэтому не буду комментировать.
Тем не менее часто бывает проще решение проще. Если вы хотите ограничить пропускную способность для одной программы (например, торрент-клиента), очень простое решение использует trickle (1).
Вы можете установить его с помощью
sudo apt-get install trickle
, а затем запустить программу с помощью
trickle -d 100 -u 50 program
и program будет иметь пропускную способность, превышающую 100 kbps для загрузки и 50 кбит / с для загрузки. На этой странице можно найти гораздо больше опций и информации о тряске: tuxradar: управляйте своей пропускной способностью струйкой.
(1) Это отличается от правильного QoS: пропускная способность, используемая «искалеченной» программой, будет уменьшаться каждый раз, причем не только тогда, когда есть спрос на услуги с более высоким приоритетом, как это произойдет при правильном QoS ,
Вы не делаете этого с iptables. Вам нужно изменить метрики маршрутизации.
Установить метрики маршрутизации для сетевого интерфейса & mdash; Каталог приложений Ubuntu
Чтобы предоставить всем другим интерфейсам более высокий приоритет, чем просто запустить wlan0:
ifmetric wlan0 1
Чтобы сбросить метрики маршрутов, подключенных к wlan0, просто запустите:
ifmetric wlan0 0
подробнее здесь: Установить метрики маршрутизации для сетевого интерфейса & mdash; Каталог приложений Ubuntu