Биллинговая система Nodeny
04 Мая 2024, 12:56:07 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
Новости: Прекращена поддержка версии Nodeny 49
 
   Начало   Помощь Поиск Войти Регистрация  
Страниц: 1 2 3 [4] 5 6 ... 12
  Печать  
Автор Тема: Связка Juniper MX80 и Nodeny Plus  (Прочитано 66056 раз)
NodenY45
NoDeny
Старожил
*

Карма: 2
Offline Offline

Сообщений: 365


Просмотр профиля
« Ответ #45 : 05 Ноября 2016, 08:43:02 »

Процедуры стандартные, когда ты скачивал CoA там как раз моя конфигурация..
По твоему вопросу врятли чего-то подскажу, т.к. используется pppoe.
Понял, спасибо. С понедельника будет время, отпишу.
Записан
Warlock
NoDeny
Старожил
*

Карма: 8
Offline Offline

Сообщений: 369


Просмотр профиля
« Ответ #46 : 05 Ноября 2016, 09:09:51 »

Небольшая поправка...
в /usr/local/etc/raddb/sql.conf 2 строки были приведены к виду:
Код:
        postauth_query = "call radupdate('%{User-Name}','%{Framed-IP-Address}',\
                'user=%{ERX-Dhcp-Mac-Addr};ses=%{Acct-Session-Id}')"
        accounting_update_query = "call radupdate('%{User-Name}','%{Framed-IP-Address}',\
                'user=%{ERX-Dhcp-Mac-Addr};ses=%{Acct-Session-Id}')"}
и в процедуре radupdate строка
Код:
CALL set_auth(usr_ip, CONCAT('mod=pppoe;',REPLACE(properties,':','')));
была изменена на
Код:
CALL set_auth(usr_ip, CONCAT('mod=pppoe;',REPLACE(properties,'.','')));
В твоем случае скорее всего нужно:
Код:
CALL set_auth(ip, CONCAT('mod=dhcp;',REPLACE(properties,'.','')));
И тебе нужно будет обратиться к Стасу, чтоб он тебе дал/продал небольшую приблуду для билинга (snmp_chkses), которая по snmp будет получать список авторизованных пользователей.. Хз, может для ipoe ее нужно будет чуток переделать, т.к. сейчас она получает список логинов.
Так же смогу тебе помочь с настройкой гостевого профайла на джуне, который будет перенаправлять на заглушку билинга.
« Последнее редактирование: 05 Ноября 2016, 09:55:37 от Warlock » Записан
NodenY45
NoDeny
Старожил
*

Карма: 2
Offline Offline

Сообщений: 365


Просмотр профиля
« Ответ #47 : 05 Ноября 2016, 23:21:01 »


но при изменении скорости, она стает 50 мбит вместо 10, хотя в динамических профилях на шейпере стоит 10..

через файл радиуса users все ок... что ж такое)

А если сессию передёрнуть, то скорость какая?
По порядку.
В файле радиуса юзерс
Код:
2892.4a23.b7c8  Cleartext-Password := "IPoE-Opt82"
                Framed-IP-Address = 10.100.100.5,
В настройках dhcp-local
Код:
pool-match-order {
    ip-address-first;
    external-authority;
    option-82;
}
authentication {
    password IPoE-Opt82;
    username-include {
        mac-address;
    }
}
group local {
    dynamic-profile DYNSUB-SVLAN-IPDEMUX;
    interface ge-1/0/0.0;

В динамических профилях
Код:
# show dynamic-profiles DYNINTF-SVLAN-DHCP-INET 
interfaces {
    "$junos-interface-ifd-name" {
        unit "$junos-interface-unit" {
            demux-source inet;
            proxy-arp restricted;
            vlan-id "$junos-vlan-id";
            family inet {
                unnumbered-address lo0.0 preferred-source-address 10.100.100.1;
            }
        }
    }
}
# show dynamic-profiles DYNSUB-SVLAN-IPDEMUX
interfaces {
    demux0 {
        unit "$junos-interface-unit" {
            proxy-arp;
            demux-options {
                underlying-interface "$junos-underlying-interface";
            }
            family inet {
                demux-source {
                    $junos-subscriber-ip-address;
                }
                unnumbered-address lo0.0 preferred-source-address 10.100.100.1;
            }
        }
    }
}

Сабскрайберс
Код:
# run show subscribers extensive                                                               
Type: VLAN
Logical System: default
Routing Instance: default
Interface: ge-1/0/0.1073742693
Interface type: Dynamic
Underlying Interface: ge-1/0/0
Dynamic Profile Name: DYNINTF-SVLAN-DHCP-INET
State: Active
Session ID: 1083
VLAN Id: 999
Login Time: 2016-11-03 08:45:34 EET

Type: DHCP
User Name: 2892.4a23.b7c8
IP Address: 10.100.100.5
IP Netmask: 255.255.255.128
Logical System: default
Routing Instance: default
Interface: demux0.1073742694
Interface type: Dynamic
Underlying Interface: ge-1/0/0.1073742693
Dynamic Profile Name: DYNSUB-SVLAN-IPDEMUX
MAC Address: 28:92:4a:23:b7:c8
State: Active
Radius Accounting ID: 1084
Session ID: 1084
VLAN Id: 999
Agent Circuit ID: len 6
00 04 03 e7 01 30
Agent Remote ID: len 8
00 06 00 1d a1 41 aa 00
Login Time: 2016-11-03 08:45:38 EET
DHCP Options: len 69
35 01 01 3d 07 01 28 92 4a 23 b7 c8 0c 0a 48 50 2d 52 65 76
6f 6c 76 65 3c 08 4d 53 46 54 20 35 2e 30 37 0d 01 0f 03 06
2c 2e 2f 1f 21 79 f9 fc 2b 52 12 01 06 00 04 03 e7 01 30 02
08 00 06 00 1d a1 41 aa 00
IP Address Pool: dhcp-subs
 

Таким образом инет дается клиенту без ограничения. При попытки повесить сервис svc-global-ipoe на сессию
Код:
# run request network-access aaa subscriber add session-id 1084 service-profile svc-global-ipoe 
   Service Session ID: 1086
   Service Session Name: svc-global-ipoe
   State: Active
   Family: inet
   IPv4 Input Filter Name: INET_IN-demux0.1073742694-in
   IPv4 Output Filter Name: INET_OUT-demux0.1073742694-out

# run show network-access aaa subscribers session-id 1084 detail                                     
Type: dhcp
Stripped username: 2892.4a23.b7c8
AAA Logical system/Routing instance: default:default
Target Logical system/Routing instance: default:default
Access-profile: sbr
Session ID: 1084
Accounting Session ID: 1084
Multi Accounting Session ID: 0
IP Address: 10.100.100.5
Authentication State: AuthStateActive
Accounting State: Acc-Interim-Sent
Provisioning Type: None
Service name: svc-global-ipoe
  Service State: SvcActive
  Service Family: inet
  Service Activation Source: Radius
  Session ID: 0
  Session uptime: 00:00:56

, скорость начинает шейпится по дефолту вместо 1мбита - до 50мбит... хотя в фаерволе по этому клиенту висит полисер на скорость 1мбит. И интересно почему Session ID: 0

Что не доглядел? Может кто сталкивался.

Нашел проблему с шейпером Смеющийся
Неправильно были объявлены переменные в динамических профилях
Было:
Код:
set dynamic-profiles svc-global-ipoe variables SPEED_IN default-value 2m
set dynamic-profiles svc-global-ipoe variables SPEED_OUT default-value 2m
set dynamic-profiles svc-global-ipoe interfaces demux0 unit "$junos-interface-unit" family inet filter input "$INET_IN"
set dynamic-profiles svc-global-ipoe interfaces demux0 unit "$junos-interface-unit" family inet filter input precedence 50
set dynamic-profiles svc-global-ipoe interfaces demux0 unit "$junos-interface-unit" family inet filter output "$INET_OUT"
set dynamic-profiles svc-global-ipoe interfaces demux0 unit "$junos-interface-unit" family inet filter output precedence 50
set dynamic-profiles svc-global-ipoe firewall family inet filter INET_IN interface-specific
set dynamic-profiles svc-global-ipoe firewall family inet filter INET_IN term 1 then policer POLICER_IN
set dynamic-profiles svc-global-ipoe firewall family inet filter INET_IN term 1 then service-accounting
set dynamic-profiles svc-global-ipoe firewall family inet filter INET_IN term 1 then accept
set dynamic-profiles svc-global-ipoe firewall family inet filter INET_OUT interface-specific
set dynamic-profiles svc-global-ipoe firewall family inet filter INET_OUT term 1 then policer POLICER_OUT
set dynamic-profiles svc-global-ipoe firewall family inet filter INET_OUT term 1 then service-accounting
set dynamic-profiles svc-global-ipoe firewall family inet filter INET_OUT term 1 then accept
set dynamic-profiles svc-global-ipoe firewall policer POLICER_IN filter-specific
set dynamic-profiles svc-global-ipoe firewall policer POLICER_IN if-exceeding bandwidth-limit "$SPEED_IN"
set dynamic-profiles svc-global-ipoe firewall policer POLICER_IN if-exceeding burst-size-limit 512k
set dynamic-profiles svc-global-ipoe firewall policer POLICER_IN then discard
set dynamic-profiles svc-global-ipoe firewall policer POLICER_OUT filter-specific
set dynamic-profiles svc-global-ipoe firewall policer POLICER_OUT if-exceeding bandwidth-limit "$SPEED_OUT"
set dynamic-profiles svc-global-ipoe firewall policer POLICER_OUT if-exceeding burst-size-limit 512k
set dynamic-profiles svc-global-ipoe firewall policer POLICER_OUT then discard

Сменил на следующие, стало все нормально шейпится(недописывал "$"), продолжаю тесты.
Код:
set dynamic-profiles svc-global-ipoe variables SPEED_IN default-value 2m
set dynamic-profiles svc-global-ipoe variables SPEED_OUT default-value 2m
set dynamic-profiles svc-global-ipoe variables INET_IN uid
set dynamic-profiles svc-global-ipoe variables INET_OUT uid
set dynamic-profiles svc-global-ipoe variables POLICER_IN uid
set dynamic-profiles svc-global-ipoe variables POLICER_OUT uid
set dynamic-profiles svc-global-ipoe interfaces demux0 unit "$junos-interface-unit" family inet filter input "$INET_IN"
set dynamic-profiles svc-global-ipoe interfaces demux0 unit "$junos-interface-unit" family inet filter input precedence 50
set dynamic-profiles svc-global-ipoe interfaces demux0 unit "$junos-interface-unit" family inet filter output "$INET_OUT"
set dynamic-profiles svc-global-ipoe interfaces demux0 unit "$junos-interface-unit" family inet filter output precedence 50
set dynamic-profiles svc-global-ipoe firewall family inet filter "$INET_IN" interface-specific
set dynamic-profiles svc-global-ipoe firewall family inet filter "$INET_IN" term 1 then policer "$POLICER_IN"
set dynamic-profiles svc-global-ipoe firewall family inet filter "$INET_IN" term 1 then service-accounting
set dynamic-profiles svc-global-ipoe firewall family inet filter "$INET_IN" term 1 then accept
set dynamic-profiles svc-global-ipoe firewall family inet filter "$INET_OUT" interface-specific
set dynamic-profiles svc-global-ipoe firewall family inet filter "$INET_OUT" term 1 then policer "$POLICER_OUT"
set dynamic-profiles svc-global-ipoe firewall family inet filter "$INET_OUT" term 1 then service-accounting
set dynamic-profiles svc-global-ipoe firewall family inet filter "$INET_OUT" term 1 then accept
set dynamic-profiles svc-global-ipoe firewall policer "$POLICER_IN" filter-specific
set dynamic-profiles svc-global-ipoe firewall policer "$POLICER_IN" if-exceeding bandwidth-limit "$SPEED_IN"
set dynamic-profiles svc-global-ipoe firewall policer "$POLICER_IN" if-exceeding burst-size-limit 512k
set dynamic-profiles svc-global-ipoe firewall policer "$POLICER_IN" then discard
set dynamic-profiles svc-global-ipoe firewall policer "$POLICER_OUT" filter-specific
set dynamic-profiles svc-global-ipoe firewall policer "$POLICER_OUT" if-exceeding bandwidth-limit "$SPEED_OUT"
set dynamic-profiles svc-global-ipoe firewall policer "$POLICER_OUT" if-exceeding burst-size-limit 512k
set dynamic-profiles svc-global-ipoe firewall policer "$POLICER_OUT" then discard
Записан
NodenY45
NoDeny
Старожил
*

Карма: 2
Offline Offline

Сообщений: 365


Просмотр профиля
« Ответ #48 : 05 Ноября 2016, 23:25:52 »

Небольшая поправка...
в /usr/local/etc/raddb/sql.conf 2 строки были приведены к виду:
Код:
        postauth_query = "call radupdate('%{User-Name}','%{Framed-IP-Address}',\
                'user=%{ERX-Dhcp-Mac-Addr};ses=%{Acct-Session-Id}')"
        accounting_update_query = "call radupdate('%{User-Name}','%{Framed-IP-Address}',\
                'user=%{ERX-Dhcp-Mac-Addr};ses=%{Acct-Session-Id}')"}
и в процедуре radupdate строка
Код:
CALL set_auth(usr_ip, CONCAT('mod=pppoe;',REPLACE(properties,':','')));
была изменена на
Код:
CALL set_auth(usr_ip, CONCAT('mod=pppoe;',REPLACE(properties,'.','')));
В твоем случае скорее всего нужно:
Код:
CALL set_auth(ip, CONCAT('mod=dhcp;',REPLACE(properties,'.','')));
И тебе нужно будет обратиться к Стасу, чтоб он тебе дал/продал небольшую приблуду для билинга (snmp_chkses), которая по snmp будет получать список авторизованных пользователей.. Хз, может для ipoe ее нужно будет чуток переделать, т.к. сейчас она получает список логинов.
Так же смогу тебе помочь с настройкой гостевого профайла на джуне, который будет перенаправлять на заглушку билинга.

Спасибо, а что там сложного с редиректом? через роутинг инстанс?

Если Стас читает, думаю ответит что-за фича, и как работает. И нужна ли она в моем случае.


Кстати та проблема, из за которой у меня не хотело работать CoA, это само собой кривые руки))))) Надо было просто указать айпи адрес джунипера, а не самого сервера радиус Смеющийся

« Последнее редактирование: 05 Ноября 2016, 23:58:13 от NodenY45 » Записан
Warlock
NoDeny
Старожил
*

Карма: 8
Offline Offline

Сообщений: 369


Просмотр профиля
« Ответ #49 : 06 Ноября 2016, 09:18:03 »

Профайл + роутинг инстанс + правило в фаерволе на сервере, на который идет next-hop.
По поводу snmp_chkses это та сам смотри. Подключи пользователя, если в билинге ключ не пропадает в течении 3-5 минут, то он тебе не нужен.
Записан
NodenY45
NoDeny
Старожил
*

Карма: 2
Offline Offline

Сообщений: 365


Просмотр профиля
« Ответ #50 : 06 Ноября 2016, 12:36:13 »

Профайл + роутинг инстанс + правило в фаерволе на сервере, на который идет next-hop.

Если можете - покажите.
Находил примеры на НАГе.
Записан
Warlock
NoDeny
Старожил
*

Карма: 8
Offline Offline

Сообщений: 369


Просмотр профиля
« Ответ #51 : 06 Ноября 2016, 18:36:20 »

Стас, предлагаю написать доку.. с меня по настройке pppoe.. штука ведь нужная, или тебе не интересно развивать эту тему?
Записан
NodenY45
NoDeny
Старожил
*

Карма: 2
Offline Offline

Сообщений: 365


Просмотр профиля
« Ответ #52 : 06 Ноября 2016, 19:09:59 »

Стас, предлагаю написать доку.. с меня по настройке pppoe.. штука ведь нужная, или тебе не интересно развивать эту тему?

Как введу в эксплуатацию мх80+ipoe+nodeny - напишу мануал обязательно.
Записан
Efendy
Администратор
Спец
*****

Карма: 138
Offline Offline

Сообщений: 4782



Просмотр профиля
« Ответ #53 : 06 Ноября 2016, 21:33:14 »

Стас, предлагаю написать доку.. с меня по настройке pppoe.. штука ведь нужная, или тебе не интересно развивать эту тему?
зарегайся в wiki:  http://nodeny.com.ua/wiki/ - дам доступ на редактирование статьи
Записан
NodenY45
NoDeny
Старожил
*

Карма: 2
Offline Offline

Сообщений: 365


Просмотр профиля
« Ответ #54 : 06 Ноября 2016, 22:48:55 »

По поводу snmp_chkses это та сам смотри. Подключи пользователя, если в билинге ключ не пропадает в течении 3-5 минут, то он тебе не нужен.
и действительно, авторизовал пользователя, в биллинге ключ позеленел, дальше отключил ПК, и сколько не ждешь гаснуть он(ключ) не собирается.
А что именно отвечает за поддержание авторизации? в мануале написано радиус, вопрос как? если даже проверок никаких нету.
Записан
Efendy
Администратор
Спец
*****

Карма: 138
Offline Offline

Сообщений: 4782



Просмотр профиля
« Ответ #55 : 07 Ноября 2016, 11:54:41 »

Есть такая штука: accounting - радиус периодически шлет инфо о том, сколько трафика потребил абонент. Вот если по юзеру пришла такая инфа - считается, что он авторизован. Это хорошо работает на pppoe, если был дисконект, то аккаунтинг по юзеру не будет посылаться. Это походу лучше чем регистрировать дисконнект по пакету "дисконнект" ибо если такой пакет не прийдет, например, временный лаг сети, то юзер будет долго висеть авторизованным.

В "не-pppoe" аккаунтинг не слишком удобен, поскольку, например в  dhcp если юзер выключит комп, то не факт что он пошлет пакет об освобождении адреса. Как раздаете инет вашей железякой - я не смотрел, слишком много букв вы понаписали
Записан
goletsa
NoDeny
Спец
*

Карма: 21
Offline Offline

Сообщений: 973


Просмотр профиля
« Ответ #56 : 07 Ноября 2016, 15:30:50 »

У MX80 с аккаунтингом грустно, он редко шлет его. Интервал от 10 до 60 минут что-ли был.
И то они у меня не всегда приходили.
Записан
NodenY45
NoDeny
Старожил
*

Карма: 2
Offline Offline

Сообщений: 365


Просмотр профиля
« Ответ #57 : 07 Ноября 2016, 21:48:36 »

Есть такая штука: accounting - радиус периодически шлет инфо о том, сколько трафика потребил абонент. Вот если по юзеру пришла такая инфа - считается, что он авторизован. Это хорошо работает на pppoe, если был дисконект, то аккаунтинг по юзеру не будет посылаться. Это походу лучше чем регистрировать дисконнект по пакету "дисконнект" ибо если такой пакет не прийдет, например, временный лаг сети, то юзер будет долго висеть авторизованным.

В "не-pppoe" аккаунтинг не слишком удобен, поскольку, например в  dhcp если юзер выключит комп, то не факт что он пошлет пакет об освобождении адреса. Как раздаете инет вашей железякой - я не смотрел, слишком много букв вы понаписали

инет собираемся раздавать также как и через nodeny+, выдача по dhcp(релей)+option82+radius.

проясните как быть с отключением авторизации с ipoe+mx80+radius+nodeny?
Записан
Efendy
Администратор
Спец
*****

Карма: 138
Offline Offline

Сообщений: 4782



Просмотр профиля
« Ответ #58 : 07 Ноября 2016, 23:08:47 »

Модуль ядра  dhcp запущен?
Записан
Warlock
NoDeny
Старожил
*

Карма: 8
Offline Offline

Сообщений: 369


Просмотр профиля
« Ответ #59 : 08 Ноября 2016, 06:41:48 »

зарегайся в wiki:  http://nodeny.com.ua/wiki/ - дам доступ на редактирование статьи
Зарегался, только сначала себе wikki поставлю, чтоб понять как там заполнять нужно..
Записан
Страниц: 1 2 3 [4] 5 6 ... 12
  Печать  
 
Перейти в:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.20 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!