Перейти к содержанию

Вопрос

Опубликовано

Всем привет! :-)

Можно ли реализовать штатными средствами следующее:

Пример:

Есть два сегмента - Домашний и Гостевой и т.д.
а) Если никого нет в Домашнем сегменте, не ограничивать скорость Гостевого сегмента.
б) ТОЛЬКО при появлении устройств(а) в Домашнем сегменте, включать ограничение скорости установленное в Гостевом сегменте.

Спасибо.

Рекомендуемые сообщения

  • 0
Опубликовано (изменено)

На пальцах и на вскидку в текущей, т.е. из коробки, не получится, а на пальцах при наличие OPKG (Entware) возможно :

1. любыми доступными средствами "arp -a" или "cat /proc/net/arp" или другими (любое устройство первым делом по текущему IP получит MAC адрес устройства) - получите записи (вам интересно IP и интерфейс)

/proc/3003/net # cat arp
IP address       HW type     Flags       HW address            Mask     Device
192.168.1.10     0x1         0x2         xx:xx:xx:xx:f5:47     *        br0
192.168.1.100    0x1         0x2         xx:xx:xx:xx:e2:a8     *        br0
/proc/3003/net # arp -a
? (192.168.1.10) at xx:xx:xx:xx:f5:47 [ether] on br0
? (192.168.1.100) at xx:xx:xx:xx:e2:a8 [ether] on br0
/proc/3003/net

так IP гостевой и основной сети отличаются, и вам достаточно наличие хотя бы одного клиента в основной, то достаточно проверить наличие одной первой записи и на соновании этой проверки выполнить пункт ниже.

2. тут уже можно использовать прошивку с командой "traffic-shape rate 5000" для нужного интерфейса, у вас их должно быть две для гостевого интерфейса одна с ограниченной скоростью другая убирает ее "no traffic-shape"

(config)> interface CdcEthernet0 traffic-shape rate 50000
....
(config)> interface CdcEthernet0 no traffic-shape
...
(config)> 

или так же вам понадобится использовать приложение "ndmq"

/ # ndmq -p 'interface CdcEthernet0 traffic-shape rate 50000' -P message
"CdcEthernet0" interface rate limited to 50000 kbit/s.
/ #

3. данный скрипт вписать в cron

Примечание - проблема с определением "спящих" устройств например смартфонов они в arp будут, и даже на ping будут отвечать.

Изменено пользователем vasek00
  • 0
Опубликовано

Понятно конечно, что через OPKG это можно сделать, но интересно было бы это иметь так сказать из коробки.

Попробую это предложить в Теме по развитию. Может будет кому интересно и народ проголосует.

 

Но все равно спасибо! :-)

  • 0
Опубликовано (изменено)

В общем написал скриптик (с комментариями). Приложу его сюда, может кому сгодится.

ВАЖНО:

скрипт нужно положить в /opt/script/ (если указываете другой каталог, то не забудьте изменить его путь в 3 пункте! в команде rm)

1.Для работы скрипта требуется установить следующие пакеты: bashnet-tools-arp, coreutils-date

2. Все настройки по ограничению скорости применяются до перезагрузки роутера! (конфиг текущих настроек роутера произведенных скриптом не сохраняется, кроме тех случае, когда были сделаны изменения в CLI или Web интерфейсе во время работы скрипта!!!)

3. Для правильной работы скрипта в /opt/etc/init.d/rc.unslung добавить строчку: rm /opt/script/previousSegments.txt

4. Ну и засовываем его в cron.

Все директории можно изменить сделав соответствующие поправки и в сам скрипт.

 

P.S. Там специфические настройки ограничения сегментов, которые по желанию можете изменить. Так же у скрипта есть пара параметров по работе с логом (есть справка, думаю разберетесь). Вроде все. :-)

Да, чуть не забыл, если разработчики заметят это сообщение, то одна просьбочка - может добавите в сегмент Home Ограничение скорости, как и в других сегментах, а то не очень удобно получается. 

А, ну и вторая просьбочка :-)  - все же рассмотреть предложение этого функционала, так сказать из "коробки". :-)

 

 

traffic-shape

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

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.
Примечание: Ваш пост будет проверен модератором, прежде чем станет видимым.

Гость
Ответить на вопрос...

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

  Разрешено использовать не более 75 эмодзи.

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

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

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

  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу
×
×
  • Создать...

Важная информация

На этом сайте используются файлы cookie. Нажимая "Я принимаю" или продолжая просмотр сайта, вы разрешаете их использование: Политика конфиденциальности.