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

TheRouter - software router and bras (dpdk based)

12 hours ago, kisa said:

В TheRouter для IPOE сабов есть dhcp relay. Он делает то, что вам нужно, за исключением добавления option82. Но, это легко добавить. В течении недели сделаю и дам вам знать, как будет готово.

 

Замечательно. 

 

Мы используем UTM5 от нетапа и там уже у каждого клиента есть сервисная связка ip-traffic с установленным вручную ip-адресом.

На данный момент свичи делают option82, а UTM5 отдает нужный ip-адрес.

 

Натолкните на правильный путь. Какие изменения нужно сделать в UTM5, чтобы по радиусу запрашивать тариф, адрес и тд.

 

Откликнитесь у кого UTM5 авторизует по радиусу клиентов.

 

 

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


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

Добавил radius аккаунтинг (пока поддержка только для pppoe)

Новые настройки.
https://github.com/alexk99/the_router/blob/master/conf_options.md#radius-accounting

Обновление.
http://therouter.net/downloads/the_router.6cores.dpdk.17.11.1.pppoe.pppoe_a0.05.tar.gz

Пример конфига для accounting'а

  sysctl set radius_accounting 1
  sysctl set radius_accounting_interim 1
  sysctl set radius_accounting_interim_interval 30
  radius_client add accounting server 192.168.5.2
  radius_client set accounting secret "secret"
 

Добавил поддержку атрибутов,
WISPr-Bandwidth-Max-Up | WISPr-Bandwidth-Max-Down 
они задают cir в битах ну и направление у них относительно пользователя, а не относительно маршрутизатора
как в моих атрибутах скорости ingress/egress.


Теперь в планах добавить keep alive для pppoe, сейчас его нет. есть только таймеры неактивности сессий.

И потом добавить новый тип инкапсуляции для qinq интерфейса, аля
   encapsulation dot1Q 35 second-dot1q any
 

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

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


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

new pppoe build is http://therouter.net/downloads/the_router.6cores.dpdk.17.11.1.pppoe.pppoe_a0.08.tar.gz

 

- radius: add new the_router specific radius attributes:
    ATTRIBUTE therouter_remote_id  11 string
    ATTRIBUTE therouter_circuit_id 12 string
    ATTRIBUTE therouter_lladdr     13 string

 

- pppoe: add support of pppoe vendor specific tags: remote-id, circuid-id.
if this tags are present in a pppoe discovery request their values will be 
included into a radius authentication request using the corresponding 
the_router specific radius attiributes

 

- pppoe: add subscriber's link layer address into a radius authentication request

 

- pppoe: use nas-port-id radius attribute instead of nas-port attribute.
format of nas-port-id attribute values is portid/svid.cvid

 

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


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

Новый билд

http://therouter.net/downloads/the_router.6cores.dpdk.17.11.1.pppoe.pppoe_a0.13.tar.gz

 

pppoe: add sysctl variable "ppp_1session_per_username"

When ppp_1session_per_username is turned on the_router disconnects
new pppoe subscribers that use the username already being used by another session.

When ppp_1session_per_username is turned on pppoe username can be used in CoA.

 

pppoe: add LCP keepalive support

https://github.com/alexk99/the_router/blob/master/conf_options.md#lcp_keepalive_interval

 

pppoe: add support of CoA disconnect using Acct-Session-Id

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

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


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

http://therouter.net/downloads/the_router.6cores.dpdk.17.11.1.pppoe.pppoe_a0.16.tar.gz

 

vif: add rx, tx byte counters to the output of the command "sh vif counters"
remove from the output of that command dynamic (subscribers) and lo interfaces;

 

pppoe: add rcli command "sh pppoe subsc <user-name>" that outputs the pppoe subscriber
with the given username

 

pppoe: add 'uptime' field to the output of "sh pppoe subsc" command

 

pppoe: increase username length up to 20 characters;
add username the output of "sh pppoe subsc" command;

 

pppoe coa: fix minor bugs, add support WISPr-Bandwidth-Max-Down/WISPr-Bandwidth-Max-Up attributes

 

pppoe: add sysctl variable "ppp_install_subsc_linux_routes"
When enabled the_router will install linux kernel /32 routes for subscribers ip addresses
Linux kernel routes will be installed at 'lo' interface in the namespace TheRouter is running in.
This option allows to announce subscriber's /32 prefixes by using "redisribute kernel" command
in FRR/Quagga bgpd or ospfd daemons.

 

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


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

TheRouter PPPoE performance evaluation tests

https://github.com/alexk99/the_router/blob/master/pppoe_perf_tests.md

 

Результаты боевых тестов на днях.

 

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


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

DHCP сервер, управляемый RADIUS, либо напрямую работающий с SQL имеется / планируется?

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


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

18 минут назад, andryas сказал:

DHCP сервер, управляемый RADIUS, либо напрямую работающий с SQL имеется / планируется?

нет/нет

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


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

планов по смене квагги на bird не имеете?

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


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

22 минуты назад, nixx сказал:

планов по смене квагги на bird не имеете?

пока нет, т.к. Quagga/FRR в большинстве случаев достаточно.

под какой-то конкретный проект с внедрением можно было бы обсудить отдельно.

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


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

Запустили два сервера под управлением TheRouter в продакшн.

25K сессий.

первый сервер ash1 - PPPoE cервер.
второй сервер ash2 - NAT.
результаты во вложении

 

Конфигурация cерверов
   проц Intel Xeon E3-1285Lv3 3.10GHz, 4 Core
   память 32GB
   сетевухи Intel XL710-QDA2

Rate limiter режет ровно по тарифу, burst отрабатывает.

P.S. трафик небольшой из-за ограничений интернет тарифов.

pppoe_nat_11_04_2019_6.png

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


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

11 минут назад, pppoetest сказал:

cpu load где

это DPDK без применения power management схем, cpu 100% всегда

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


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

А шейпер умеет разную скорость на разные подсети?

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


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

1 час назад, Sacrament сказал:

А шейпер умеет разную скорость на разные подсети?

Не умеет.

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


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

Судя по описанию, это то во что должен был превратиться accel-pppd.

Очень интересно, будем пробовать.

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


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

В 13.04.2019 в 18:14, dursun266 сказал:

Не умеет.

Печалька, а какой-нить скрипт по подключению, отключению, СоА умеет как ассель?

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


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

1 час назад, Sacrament сказал:

Печалька, а какой-нить скрипт по подключению, отключению, СоА умеет как ассель?

COA умеет без скрипта, кроме on/off есть еще speed change.

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


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

В 15.04.2019 в 05:10, Sacrament сказал:

Печалька, а какой-нить скрипт по подключению, отключению, СоА умеет как ассель?

а зачем скрипты?

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


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

11 часов назад, kisa сказал:

а зачем скрипты?

Эта фича из accel-ppp. Изначально вопрос про разную скорость на разные подсети.

Из accel'я запускается скрипт с tc с нужными настройками htb.

 

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


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

2 часа назад, dursun266 сказал:

Эта фича из accel-ppp. Изначально вопрос про разную скорость на разные подсети.

Из accel'я запускается скрипт с tc с нужными настройками htb.

 

это фича из pppd :) зачем она в линуксе я понять могу, в контексте therouter я не вижу пока зачем она может быть нужна.

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


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

5 часов назад, kisa сказал:

это фича из pppd :) зачем она в линуксе я понять могу, в контексте therouter я не вижу пока зачем она может быть нужна.

Нету смысла резать скорость до кэшей различных и пирингов 

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


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

58 минут назад, zhenya` сказал:

Нету смысла резать скорость до кэшей различных и пирингов 

Я о скриптах, а не о шейпере с разными направлениями, который однозначно нужная фича

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


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

9 часов назад, kisa сказал:

Я о скриптах, а не о шейпере с разными направлениями, который однозначно нужная фича

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

А так если такой шейпер будет сразу встроен, то конечно скрипты не нужны.

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


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

6 часов назад, Sacrament сказал:

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

А так если такой шейпер будет сразу встроен, то конечно скрипты не нужны.

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

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

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


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

Join the conversation

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

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

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

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

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

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

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