Биллинговая система Nodeny

Главная категория => Nodeny 49 => Тема начата: andreit от 13 Июля 2009, 23:58:20



Название: PPPOE
Отправлено: andreit от 13 Июля 2009, 23:58:20
Cоединение по PPPOE висити в области уведомлений Windows XP секунд 5-6  и вылетат.
В mpd.log появляется запись:
RADIUS: rad_send_request for user ' ' failed: No valid RADIUS responses received
Подскажыте, в каку сторону копать?


Название: Re: PPPOE
Отправлено: Efendy от 14 Июля 2009, 08:59:55
radtest-ом проверь как в доке radius.html


Название: Re: PPPOE
Отправлено: andreit от 14 Июля 2009, 12:37:33
radtest-ом проверял, все ОК - работает. Где бы еще копнуть?


Название: Re: PPPOE
Отправлено: Efendy от 14 Июля 2009, 16:02:11
Смущает, что имя пользователя пустое (for user ' '). Может имя в кириллице задано?


Название: Re: PPPOE
Отправлено: andreit от 14 Июля 2009, 18:12:18
Нееее, имя точно не в кирилице. Смущает то что на сервере радтестом проходит а с виндвой машины проходит но отваливается со временем.


Название: Re: PPPOE
Отправлено: andreit от 16 Июля 2009, 21:00:32
делаю радтестом: radtest admin 12345 127.0.0.1 0 hardpass5
ответ:
Sending Access-Request of id 93 to 127.0.0.1 port 1812
            User-Name = "admin"
            User-Password = "255.255.255.255"
            NAS-IP-Address = 255.255.255.255
            NAS-Port = 0
rad_recv: Access-Accept packet from host 127.0.0.1:1812, id=93, length=38
            Rfamed-IP-Address = 192.168.6.11
            Framed-IP-Netmask = 255.255.255.255
            Framed-Protokol = PPP
Радтест читает из базы
Потом пробую етот же пароль и логин из базы, авторизацию проходит и обрывает через 3 сек.
Помогите, подскажыте где копать?


Название: Re: PPPOE
Отправлено: versus от 17 Июля 2009, 10:58:12
какой МТУ на соединении с пользователем через пппое стоит?


Название: Re: PPPOE
Отправлено: andreit от 17 Июля 2009, 23:17:11
Есть папке радиуса запись в файле users Framed-MTU =576
про MTU в  mpd.conf ни одной строчки, как тут http://nodeny.googlegroups.com/web/mpd.conf?gda=VyL8CjoAAAAgUfCIJ2zqFSTFsdriX7fbEhgQ-zPCyb5t1JY48VC3jjhPPYYfYk9JfALI_tX_Sr397daDQaep90o7AOpSKHW0


Название: Re: PPPOE
Отправлено: andreit от 19 Июля 2009, 20:26:04
В общем получилось, рррое соединение стабильно, не падает, но появилась новая проблема нет интернета у клиента при рррое соединении, даже невозможно попасть на страничку управления статистикой. Такое  ощущение что в другой подсети. Как можно проверить правильно ли настроенный mpd5? Через авторизатор работает без проблем.


Название: Re: PPPOE
Отправлено: Maks от 19 Июля 2009, 22:41:21
А ты IP погляди какой тебе сервер дает
У меня в свойствах
У меня адрес сервера 192.168.254.1
Адрес клиента 192.168.254.2 и так далее..


Название: Re: PPPOE
Отправлено: andreit от 19 Июля 2009, 23:04:10
У меня сервер IP дает:
адрес сервера: 192.168.9.200
адрес клиента: 127.0.0.2

Все как примере: 192.168.9.200 у меня реально внешний ай-пи, ну а 127.0.0.2 из примера взят. Или я чего-то не правильно понял и намутил с настройками?


Название: Re: PPPOE
Отправлено: Maks от 20 Июля 2009, 07:07:53
Попробуй как у меня
адрес сервера чтоб была сетевая которя смотрит в сеть.

И по моему подсеть 127.0.0.0 преданлежит одному компьютеру, внурненяя подсеть.
Вот пример

C:\Documents and Settings\_Maks_>ping 127.0.0.2

Обмен пакетами с 127.0.0.2 по 32 байт:

Ответ от 127.0.0.1: число байт=32 время<1мс TTL=128
Ответ от 127.0.0.1: число байт=32 время<1мс TTL=128

Статистика Ping для 127.0.0.2:
   
Пинговал 127.0.0.2 а ответил 127.0.0.1.

Так что бери нормальную подсеть.. 192.168.0.0 или 10.0.0.0


Название: Re: PPPOE
Отправлено: andreit от 20 Июля 2009, 13:01:56
я пингую 127.0.0.2 и отвечает 127.0.0.2, не так как у тебя 127.0.0.1
на пинг 127.0.0.1 отвечает 127.0.0.1
Возможно в етом и есть причина.
Maks, если не трудно кинь на andreit@ukr.net свои настройки mpd.conf


Название: Re: PPPOE
Отправлено: Maks от 20 Июля 2009, 13:45:46
Пиши в асю 26-01-90-триста сорок шесть


Название: Re: PPPOE
Отправлено: andreit от 23 Июля 2009, 00:07:38
PPPOE соединие есть, интернета нет, не пингуется внешний интерфейс. В свойствах рррое соединения почему то айпи - клиента выдает 127.0.0.2. Процедуры мускула по новой перебрал. Прошелся еще раз по мануалу, не могу понять где ошибка, подскажыте чего еще проверить.


Название: Re: PPPOE
Отправлено: Efendy от 23 Июля 2009, 08:33:44
Цитировать
Rfamed-IP-Address = 192.168.6.11
не замечаешь, что есть синтаксическая ошибка? Ключевые папаметры лучше копируй, когда в конфиг пишешь что-то руками - ошибся и ищи днями...


Название: Re: PPPOE
Отправлено: andreit от 23 Июля 2009, 12:38:52
В реальных конфигах проверял - в норме, а тут на форуме я перепечатывал с екрана моитора


Название: Re: PPPOE
Отправлено: blackjack от 23 Июля 2009, 13:19:27
Привет всем. Вроде все тоже настроил по мануалу, но при проверке получаю реджект
Код:
[root@router /var/log]# radtest router2 1 127.0.0.1 0 hardpass5 
Sending Access-Request of id 13 to 127.0.0.1 port 1812
User-Name = "router2"
User-Password = "1"
NAS-IP-Address = 255.255.255.255
NAS-Port = 0
rad_recv: Access-Reject packet from host 127.0.0.1:1812, id=13, length=20

юзер с таким паролем точно в базе есть
а радиус в это время пишет это
Код:
Ready to process requests.
rad_recv: Access-Request packet from host 127.0.0.1:63422, id=173, length=59
User-Name = "router2"
User-Password = "1"
NAS-IP-Address = 255.255.255.255
NAS-Port = 0
  Processing the authorize section of radiusd.conf
modcall: entering group authorize for request 0
  modcall[authorize]: module "preprocess" returns ok for request 0
  modcall[authorize]: module "chap" returns noop for request 0
  modcall[authorize]: module "mschap" returns noop for request 0
    rlm_realm: No '@' in User-Name = "router2", looking up realm NULL
    rlm_realm: No such realm "NULL"
  modcall[authorize]: module "suffix" returns noop for request 0
  rlm_eap: No EAP-Message, not doing EAP
  modcall[authorize]: module "eap" returns noop for request 0
  modcall[authorize]: module "files" returns notfound for request 0
radius_xlat:  'router2'
rlm_sql (sql): sql_set_user escaped user --> 'router2'
radius_xlat:  'call radcheck('router2')'
rlm_sql (sql): Reserving sql socket id: 4
rlm_sql_mysql: MYSQL check_error: 1305 received
rlm_sql_getvpdata: database query error
rlm_sql (sql): SQL query error; rejecting user
rlm_sql (sql): Released sql socket id: 4
  modcall[authorize]: module "sql" returns fail for request 0
modcall: leaving group authorize (returns fail) for request 0
There was no response configured: rejecting request 0
Server rejecting request 0.
Finished request 0
Going to the next request
--- Walking the entire request list ---
Waking up in 1 seconds...
--- Walking the entire request list ---
Waking up in 1 seconds...
--- Walking the entire request list ---
Sending Access-Reject of id 173 to 127.0.0.1 port 63422
Waking up in 4 seconds...
--- Walking the entire request list ---
Cleaning up request 0 ID 173 with timestamp 4a6844dc
Nothing to do.  Sleeping until we see a request.
не пойму что фигня.


Название: Re: PPPOE
Отправлено: blackjack от 23 Июля 2009, 14:10:21
выяснил что не сохранятся процедуры. Если в конфиг ввести напрямую запрос то так работает.
Код:
[root@router /home/admin]# radtest router2 1 127.0.0.1 0 hardpass5 
Sending Access-Request of id 199 to 127.0.0.1 port 1812
User-Name = "router2"
User-Password = "1"
NAS-IP-Address = 255.255.255.255
NAS-Port = 0
rad_recv: Access-Accept packet from host 127.0.0.1:1812, id=199, length=20
теперь вопрос в том, почему не сохраняются процедуры?


Название: Re: PPPOE
Отправлено: versus от 23 Июля 2009, 16:49:01
Код:
versus@versus-laptop:~$ mysql -u root -p bill
Enter password:
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 318
Server version: 5.0.75-0ubuntu10.2-log (Ubuntu)

Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
mysql> SHOW CREATE PROCEDURE radcheck;
ERROR 1305 (42000): PROCEDURE radcheck does not exist
mysql> DROP PROCEDURE IF EXISTS `radcheck`;
Query OK, 0 rows affected, 1 warning (0.00 sec)

mysql> DELIMITER $$  
mysql> CREATE PROCEDURE `radcheck` (IN login VARCHAR(64))
    -> BEGIN
    ->   SELECT id,name,'Password' AS Attribute,AES_DECRYPT(passwd,'hardpass3') AS Value,'=='
    ->     FROM users WHERE name=login;
    -> END$$
Query OK, 0 rows affected (0.00 sec)

mysql> DELIMITER ;
mysql> SHOW CREATE PROCEDURE radcheck \G
*************************** 1. row ***************************
       Procedure: radcheck
        sql_mode:
Create Procedure: CREATE DEFINER=`root`@`localhost` PROCEDURE `radcheck`(IN login VARCHAR(64))
BEGIN
  SELECT id,name,'Password' AS Attribute,AES_DECRYPT(passwd,'hardpass3') AS Value,'=='
    FROM users WHERE name=login;
END
1 row in set (0.00 sec)



А как это делаешь ты ???


Название: Re: PPPOE
Отправлено: blackjack от 23 Июля 2009, 16:54:03
да действительно так работает, я просто копировал из доки запрос в пхпмайадмин
видимо пхпмайадмин не работает с хранимыми процедурами


Название: Re: PPPOE
Отправлено: blackjack от 23 Июля 2009, 17:09:14
а тепреь такая ошибка вылазит
Код:
mysql> call radcheck('router2');
ERROR 1267 (HY000): Illegal mix of collations (latin1_swedish_ci,IMPLICIT) and (cp1251_general_ci,IMPLICIT) for operation '='


Название: Re: PPPOE
Отправлено: blackjack от 23 Июля 2009, 17:20:15
наверно я при последнем обновлении не указал вкомпилдировать в мускул cp1251


Название: Re: PPPOE
Отправлено: blackjack от 24 Июля 2009, 11:30:32
Итак, мускул пересобрал с cp1251
база создана правильно
Код:
mysql> SHOW CREATE DATABASE nodeny;
+----------+-------------------------------------------------------------------+
| Database | Create Database                                                   |
+----------+-------------------------------------------------------------------+
| nodeny   | CREATE DATABASE `nodeny` /*!40100 DEFAULT CHARACTER SET cp1251 */ |
+----------+-------------------------------------------------------------------+
1 row in set (0.00 sec)

и всеравно при выполнении запроса вылазит ошибка
Код:
mysql> call radcheck('router2');
ERROR 1267 (HY000): Illegal mix of collations (latin1_swedish_ci,IMPLICIT) and (cp1251_general_ci,IMPLICIT) for operation '='


Название: Re: PPPOE
Отправлено: blackjack от 24 Июля 2009, 12:45:17
не врубаюсь почему но работает так
Код:
mysql> DROP PROCEDURE IF EXISTS `radcheck`;
Query OK, 0 rows affected, 1 warning (0.00 sec)

mysql> DELIMITER $$ 
mysql> CREATE PROCEDURE `radcheck` (IN login VARCHAR(64))
    -> BEGIN
    ->   SET NAMES 'latin1';
    ->   SELECT id,name,'Password' AS Attribute,AES_DECRYPT(passwd,'hardpass3') AS Value,'=='
    ->     FROM users WHERE name='router2' COLLATE 'latin1_swedish_ci';
    -> END$$
Query OK, 0 rows affected (0.00 sec)

mysql> DELIMITER ;
mysql> call radcheck('router2');
+-----+---------+-----------+-------+----+
| id  | name    | Attribute | Value | == |
+-----+---------+-----------+-------+----+
| 660 | router2 | Password  | 1     | == |
+-----+---------+-----------+-------+----+
1 row in set (0.00 sec)

Query OK, 0 rows affected (0.00 sec)

так почему же не работает с кодровкой cp1251


Название: Re: PPPOE
Отправлено: blackjack от 24 Июля 2009, 14:44:51
разобрался, почемуто  поле name было задано в кодировке latin1
хэр его знает почему оно было не в той кодировке но сейчас работает
Код:
[root@router /home/admin]# radtest router2 1 127.0.0.1 0 hardpass5 
Sending Access-Request of id 124 to 127.0.0.1 port 1812
        User-Name = "router2"
        User-Password = "1"
        NAS-IP-Address = 255.255.255.255
        NAS-Port = 0
rad_recv: Access-Accept packet from host 127.0.0.1:1812, id=124, length=38
        Framed-IP-Address = 172.16.23.8
        Framed-IP-Netmask = 255.255.255.255
        Framed-Protocol = PPP

Спасибо за внимание


Название: Re: PPPOE
Отправлено: andreit от 27 Июля 2009, 13:16:30
Наконец-то, свершилось! Благодарю всех за оказаную поддержку и помощь в решении вопроса!