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

Аккаунтинг Radius VLAN телесин

Добного времени суток.

 

Такая ситуация - запустил аккаунтинг связка - FreeRadius + AT 9424T когда аутенификация идет просто по маку, все нормально, но как только аутенифицируется клиент которому через радиус назначается VLAN аккаунтинг не проходит, радиус выдает такое предупреждение

 

rlm_acct_unique: WARNING: Attribute Acct-Session-Id was not found in request, unique ID MAY be inconsistent

 

И в лог акаунтинга пишется

 

Acct-Status-Type = Failed

 

ПОдскажите пожалуйста в какую сторону копать? Кто виновен в данной ситуации свитч? Или так и должно быть?мвм

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


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

а авторизацию влан запрашивает?

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


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

Да. авторизацию запрашивает, авторизируется и во влан нужный засовывается с этим проблем нет. Только страрт_стоп аккаунтиг не показывает.

 

rad_recv: Accounting-Request packet from host 10.x.x.x port 1026, id=13, length=166
    Acct-Status-Type = Start
    NAS-IP-Address = 10.x.x.x
    NAS-Port = 15
    Framed-MTU = 1336
    NAS-Port-Type = Ethernet
    Acct-Authentic = RADIUS
    Called-Station-Id = "00-15-55-AC-50-1C"
    Calling-Station-Id = "00-00-00-00-00-55"
    User-Name = "00-00-00-00-00-55"
    Acct-Session-Id = "00000000|00-15-55-AC-50-1C|00-00-00-00-00-55|1.15|1"
+- entering group preacct
++[preprocess] returns ok

 

А если включаю привязку влана по маку то получаем следующее

rad_recv: Accounting-Request packet from host 10.x.x.x port 1026, id=21, length=113
    Acct-Status-Type = Failed
    NAS-IP-Address = 10.x.x.x
    NAS-Port = 15
    Framed-MTU = 1336
    NAS-Port-Type = Ethernet
    Acct-Authentic = RADIUS
    Called-Station-Id = "00-15-55-AC-50-1C"
    Calling-Station-Id = "00-00-00-00-00-11"
    User-Name = "00-00-00-00-00-11"
+- entering group preacct
++[preprocess] returns ok
rlm_acct_unique: WARNING: Attribute Acct-Session-Id was not found in request, unique ID MAY be inconsistent

 

 

Вот содержимое файла users

 

00-00-00-00-00-11       Auth-Type := Local, Cleartext-Password := 00-00-00-00-00-11
        Tunnel-Type = "VLAN",
        Tunnel-Medium-Type = "IEEE-802",
        Tunnel-Private-Group-ID = "test_2"

00-00-00-00-00-22       Auth-Type := Local, Cleartext-Password := 00-00-00-00-00-22
        Tunnel-Type = "VLAN",
        Tunnel-Medium-Type = "IEEE-802",
        Tunnel-Private-Group-ID = "test_1"

00-00-00-00-00-77       Auth-Type := Local, Cleartext-Password := 00-00-00-00-00-77

00-00-00-00-00-55       Auth-Type := Local, Cleartext-Password := 00-00-00-00-00-55

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


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

Вот с привязкой к влану

auth: user supplied User-Password matches local User-Password
Login OK: [00-00-00-00-00-11/00-00-00-00-00-11] (from client TEST_AT9424T port 15 cli 00-00-00-00-00-11)
+- entering group post-auth
++[exec] returns noop
Sending Access-Accept of id 16 to 10.x.x.x port 1026
    Tunnel-Type:0 = VLAN
    Tunnel-Medium-Type:0 = IEEE-802
    Tunnel-Private-Group-Id:0 = "test_2"
Finished request 32.

 

А вот без привязки

auth: user supplied User-Password matches local User-Password
Login OK: [00-00-00-00-00-55/00-00-00-00-00-55] (from client TEST_AT9424T port 15 cli 00-00-00-00-00-55)
+- entering group post-auth
++[exec] returns noop
Sending Access-Accept of id 1 to 10.x.x.x port 1026
Finished request 36.

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

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


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

авторизация по SQL?

А просто по маку авторизация если какой выдаёт Acct-Session-Id?

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

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


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

Авторизация по маку, не SQL(сначала всю систему отладим на файлах, уже после переводить на SQL будем). По идее Acct-Session-Id это просто идентификатор сессии который кто то генерирует, чтобы единожды знать активен хост или нет(что то наподобие сессии в браузере) и по нему радиус определяет что это именно тот хост.

 

На самом деле нужно узнать кто герерирует этот самый Acct-Session-Id и уже в сторону него копать.

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


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

Телесин генерирует, он-же отдаёт сессию на аккаунтинг. Непонятно только как заставить радиус проглатывать пакеты с таким Acct-Session-Id

Поле он выдаёт очень большое + использует знак "|", что радиусу не нравится

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

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


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

У FreeRADIUS есть модуль, который позволяет генерировать вместо приходящего с NAS атрибута Acct-Session-Id свой собственный, составленный из полей RADIUS-запроса, от которых потом хэш берётся. Этот модуль специально сделан для «кривого» железа, которое не может выдавать нормальные Acct-Session-Id. Попробуйте его приспособить, должно сработать.

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

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


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

Телесин генерирует, он-же отдаёт сессию на аккаунтинг. Непонятно только как заставить радиус проглатывать пакеты с таким Acct-Session-Id

Поле он выдаёт очень большое + использует знак "|", что радиусу не нравится

Нее :) я там выше видимо не совсем корректно сказал, там где очень большое поле как раз все нормально, аккаунтинг отрабатывает нормально. А ругается он как раз в следующем случае на отсутствие Acct-Session-Id.

 

2dk_

 

Ваш вариант похоже более убедителен про "кривое железо". Не подскажите хотябы часть названия этого модуля?

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

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


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

Модуль rlm_acct_unique. Комментарии из конфига FreeRADIUS:

    #  Create a unique accounting session Id.  Many NASes re-use
    #  or repeat values for Acct-Session-Id, causing no end of
    #  confusion.
    #
    #  This module will add a (probably) unique session id 
    #  to an accounting packet based on the attributes listed
    #  below found in the packet.  See doc/rlm_acct_unique for
    #  more information.
    #
    acct_unique {
        key = "User-Name, Acct-Session-Id, NAS-IP-Address, Client-IP-Address, NAS-Port"
    }

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


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

Ааа, этот модуль у меня включен, он как раз и генерирует уникальный ИД, но в данном случае это не помогает :(

 

Судя по

rad_recv: Accounting-Request packet from host 10.x.x.x port 1026, id=21, length=113
    Acct-Status-Type = Failed

Со свитча уже прилетает информация, что произошла ошибка аккаунтинга, т.е. тут проблема похоже в информации которую кидает свитч.

 

Задал вопрос на форуме алиена все полчат как партизаны.

 

P.S. этот AT 9424T сплошные костыли а не свитч

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


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

Join the conversation

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

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

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

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

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

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

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