Перейти к содержимому
Калькуляторы

iptables classify по номеру ппп интерфейса вопрос я один такой?

Не думаю, что я так одинок в том, что часть абонентов терминируются на pptp/l2tp сервер с линупсом.

Думаю, что все думали - как честно резать исходящий трафик.

Думаю все идут на разные ухищрения, что бы классифицировать трафик идущий от абонента (пришедший на интерфейс ppp+ и отправляющийся на скажем internet).

и вот меня задело за живое:

iptables -t mangle -A FORWARD -i ppp+ -o internet -j CLASSIFY --set-class 1:100

и все пакеты будут классифицированы.

iptables -t mangle -A FORWARD -i pppX -o internet -j CLASSIFY --set-class 1:100

и будут классифицированы пакеты с ппп под номером Х, только понадобиться гора правил, и недешевое проц. вермя :)

ну и я чуть-чуть переписал модуль, теперь оно работает вот так:

iptables -t mangle -A FORWARD -i ppp+ -o internet -j CLASSIFY --set-class 1:100

и все пакеты от pppX получают classid (приорити) 1:100+X (нужно помнить, что Х - десятичное, а 100-шеснадцатиричное).

имеем - одно правило и все интерфейсы классифицируются, в ip-up суем создание классов хтб на исх. интерфейсе (internet).

в довесок получаем возможность классифицировать трафик (ну там локал не локал) например:

iptables -t mangle -A FORWARD -d ! 10.0.0.0/8 -i ppp+ -o internet -j CLASSIFY --set-class 1:100

iptables -t mangle -A FORWARD -d 10.0.0.0/8 -i ppp+ -o internet -j CLASSIFY --set-class 2:100

в теории сюда можно воткнуть ip-set с списком сетей или еще-чем-либо

изменений в коде модуля -- очень мало, думаю даже школьник бы справился

 

я вот сижу и мучаюсь я один такой гений, или кто-то такое уже делал ?

или же просто путь тупиковый и не интересный ?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Dethman

tc filter u32 как-то обычно хватало. Или на ingress ppp интерфейсу можно просто полисер повесить если ухщрений не надо...

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

хм, а его (tc filter u32) можно вывешивать на интерфес откуда валится трафик и класифицировать пакеты для выхода?

т.е. трафик приходит на пппХ, и соответственно выходит из internet

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Dethman

Если нет NAT, проблем не возникает, матчите пакеты по src и по всему остальному что требуется, и присваиваете им classid.

 

Еще есть flow - тот сразу по ip присваивает classid

Изменено пользователем vitalyb

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

это да, сейчас у меня как раз по флоу на исх интерфейсе, фильтр работает.

но как-то.... классид присваивать по ip - не комильфо, ибо либо нужно либо маску накладывать, либо иметь на выходе что-то типа cafa:0101...

вобщем буду попробовать...

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 смайлов.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.