Биллинговая система Nodeny
25 Апреля 2024, 20:02:17 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
Новости: Прекращена поддержка версии Nodeny 49
 
   Начало   Помощь Поиск Войти Регистрация  
Страниц: 1 ... 18 19 [20] 21 22 ... 26
  Печать  
Автор Тема: DHCP  (Прочитано 101136 раз)
Cell
NoDeny
Спец
*

Карма: 52
Offline Offline

Сообщений: 1407



Просмотр профиля
« Ответ #285 : 31 Мая 2018, 12:53:50 »

Посмотри внимательно, скорее всего у тебя install.pl -x не до конца выполнился по какой-то причине. У меня 520 ревизия - все на местах.
Записан
Gosha
Постоялец
***

Карма: 7
Offline Offline

Сообщений: 199


Просмотр профиля
« Ответ #286 : 31 Мая 2018, 15:05:45 »

Разобрался. Это я протупил.
Дело в том, что в более новых версиях нужно было задать привилегии в настройках админа.
Хорошо , что есть дубликат биллинга для экспериментов...  Улыбающийся
Записан
tom
Постоялец
***

Карма: 2
Offline Offline

Сообщений: 216


Просмотр профиля
« Ответ #287 : 23 Августа 2018, 21:03:03 »

Есть неприятная ситуация.

Есть клиенты на pon у которых стоит один на порту+фиксированное подключение, авторизация по mac свича + порт.

Сигментировали сеть, сменили vlan и подсеть.

У клиента не проходит авторизаци
Код:
10.11.2017 19:04:00 Duplicate entry 'e894f6b07995' for key 'mac'

{
  'sql' => 'UPDATE mac_uid SET time=UNIX_TIMESTAMP(), ip=INET_ATON(?), mac=? WHERE device_mac=? AND device_port=? AND oneconnect>0',
  'param' => [
    '10.194.132.19',
    'e894f6b07995',
    'e067b31533b2',
    1
  ]
};

 UPDATE mac_uid SET time=UNIX_TIMESTAMP(), ip=INET_ATON('10.194.132.19'), mac='e894f6b07995' WHERE device_mac='e067b31533b2' AND device_port='1' AND oneconnect>0
10.11.2017 19:04:00 Connecting to DBI:mysql:database=nodeny;host=localhost;port=3306;mysql_connect_timeout=5 : 0.000274 sec
10.11.2017 19:04:00 INSERT INTO mac_uid SET uid=0, mac='e894f6b07995', device_mac='e067b31533b2', device_port='1', ip=INET_ATON('10.194.132.19'), time=UNIX_TIMESTAMP() ON DUPLICATE KEY UPDATE device_mac='e067b31533b2', device_port='1', ip=INET_ATON('10.194.132.19'), time=UNIX_TIMESTAMP()
Строк: 1. Время выполнения sql: 0.0003 сек
10.11.2017 19:04:00 SELECT uid FROM mac_uid WHERE mac='e894f6b07995' AND device_mac='e067b31533b2' AND device_port='1'
Строк: 1. Время выполнения sql: 0.0001 сек
10.11.2017 19:04:00 UPDATE ip_pool SET uid=0 WHERE ip=INET_ATON('10.194.132.19') AND type='dynamic'
Строк: 1. Время выполнения sql: 0.0002 сек

10.11.2017 19:04:00 [commit] ip=10.194.132.19, mac=e8:94:f6:b0:79:95, mac_ok=e894f6b07995, port=e067b31533b2[1] | Необходима регистрация мака


Почему так? и как побороть? Вроде один на порту, всеравно какой ip и vlan, авторизуем по маку свича и порта.

Заранее спасибо.


Хтось придумав як боротися з дублями маків при один на порту? Якби боротися там немає з чим, як краще робити в такій ситуації?
Записан
md5
NoDeny
Старожил
*

Карма: 0
Offline Offline

Сообщений: 256

647618
Просмотр профиля
« Ответ #288 : 18 Сентября 2018, 13:59:21 »

я поставил патч от dd на дхцп сервер. это в слущае если со свичами работаешь

Записан
Cell
NoDeny
Спец
*

Карма: 52
Offline Offline

Сообщений: 1407



Просмотр профиля
« Ответ #289 : 18 Сентября 2018, 14:31:08 »

я поставил патч от dd на дхцп сервер. это в слущае если со свичами работаешь
Я тоже так сделал, но не только лишь все такое смогут т.к. патчить практически вручную пришлось
а оно потом еще собираться не хотело.
Записан
md5
NoDeny
Старожил
*

Карма: 0
Offline Offline

Сообщений: 256

647618
Просмотр профиля
« Ответ #290 : 18 Сентября 2018, 16:11:15 »

я поставил патч от dd на дхцп сервер. это в слущае если со свичами работаешь
Я тоже так сделал, но не только лишь все такое смогут т.к. патчить практически вручную пришлось
а оно потом еще собираться не хотело.

на версию 4.3.1 становится. Ты прав только руками править

прилепил файл с версией 4.3.1
удалите в портах новую версию /usr/ports/net/isc-dhcp43-server

и замените этой версией
сам патч. править только руками

Код:
diff -Naur dhcp-4.2.6.orig/common/bpf.c dhcp-4.2.6/common/bpf.c
--- dhcp-4.2.6.orig/common/bpf.c 2014-02-01 01:35:09.000000000 +0600
+++ dhcp-4.2.6/common/bpf.c 2014-07-09 23:56:26.603356968 +0600
@@ -575,6 +575,7 @@
  */
         switch (sa->sdl_type) {
                 case IFT_ETHER:
+                case IFT_L2VLAN:
                         hw->hlen = sa->sdl_alen + 1;
                         hw->hbuf[0] = HTYPE_ETHER;
                         memcpy(&hw->hbuf[1], LLADDR(sa), sa->sdl_alen);
diff -Naur dhcp-4.2.6.orig/server/dhcp.c dhcp-4.2.6/server/dhcp.c
--- dhcp-4.2.6.orig/server/dhcp.c 2014-02-01 01:35:09.000000000 +0600
+++ dhcp-4.2.6/server/dhcp.c 2014-07-09 23:56:31.427356932 +0600
@@ -31,6 +31,8 @@
 #include <limits.h>
 #include <sys/time.h>
 
+extern int flag_dd_option;
+
 static void commit_leases_ackout(void *foo);
 static void maybe_return_agent_options(struct packet *packet,
         struct option_state *options);
@@ -4181,8 +4183,12 @@
  {
  if (pool -> free)
  candl = pool -> free;
- else
+ else if (pool -> abandoned)
  candl = pool -> abandoned;
+ else if (flag_dd_option) {
+ candl = pool -> active;
+ candl -> ends = cur_time;
+ }
  }
 
  /*
diff -Naur dhcp-4.2.6.orig/server/dhcpd.c dhcp-4.2.6/server/dhcpd.c
--- dhcp-4.2.6.orig/server/dhcpd.c 2014-02-01 01:35:09.000000000 +0600
+++ dhcp-4.2.6/server/dhcpd.c 2014-07-10 00:00:42.159355085 +0600
@@ -42,6 +42,8 @@
 #include <sys/types.h>
 #include <sys/time.h>
 
+int flag_dd_option = 0;
+
 #if defined (PARANOIA)
 #  include <sys/types.h>
 #  include <unistd.h>
@@ -334,6 +336,8 @@
  usage ();
  set_chroot = argv [i];
 #endif /* PARANOIA */
+ } else if (!strcmp (argv [i], "-dd")) {
+   flag_dd_option = 1;
  } else if (!strcmp (argv [i], "-cf")) {
  if (++i == argc)
  usage ();
@@ -1225,7 +1229,7 @@
    "             [-tf trace-output-file]\n"
    "             [-play trace-input-file]\n"
 #endif /* TRACING */
-   "             [-pf pid-file] [--no-pid] [-s server]\n"
+   "             [-pf pid-file] [--no-pid] [-s server] [-dd]\n"
    "             [if0 [...ifN]]");
 }
 #endif
Записан
md5
NoDeny
Старожил
*

Карма: 0
Offline Offline

Сообщений: 256

647618
Просмотр профиля
« Ответ #291 : 18 Сентября 2018, 16:41:32 »

Вот тогда тут ворой вопрос.

Есть олт ZTE... на епоне маки в формате xxxx.xxxx.xxxx
На жпоне используеться серийный номер в формате XXXXXXXXXXXX

В данный момент на 50й версии я подкрутил регулярками что бы можно было такие маки добавлять, естественно на олте используеться 82я.. Но там криво чуть работает.

мне приходится класы скриптами формировать вот в таком формате

Код:
class "ZTEGC108F8AC" { match if substring(option agent.remote-id, 0, 14)="ZTEGC108F8AC";}
class "a0c6.ec06.8309" { match if substring(option agent.remote-id, 0, 14)="a0c6.ec06.8309";}

тут назревает вопрос. Как организовать это всю процедуру не добавляя юзерских ону в оборудку ?

Записан
cojiict
Старожил
****

Карма: 0
Offline Offline

Сообщений: 341


Просмотр профиля Email
« Ответ #292 : 18 Сентября 2018, 23:44:20 »

Стас. Поправ в модулі
Код:
 Db->do("ALTER TABLE mac_uid ADD comment VARCHAR(256) DEFAULT NULL AFTER oneconnect");
потрібні '  замість "
Записан
md5
NoDeny
Старожил
*

Карма: 0
Offline Offline

Сообщений: 256

647618
Просмотр профиля
« Ответ #293 : 24 Сентября 2018, 12:09:38 »

Так что есть какое то решение по моему вопросу ?
Записан
tom
Постоялец
***

Карма: 2
Offline Offline

Сообщений: 216


Просмотр профиля
« Ответ #294 : 24 Сентября 2018, 17:28:21 »

Використовуй влан на користувача ))

В мене теж питання, поки не знайшов на форумі. Хтось реалізовував систему з динамічними ір, коли на одну учотку більше одного мака?

Відразу модуль з логінами до статичних ір, не дуже підходить, він для ппое.
Записан
Efendy
Администратор
Спец
*****

Карма: 138
Offline Offline

Сообщений: 4782



Просмотр профиля
« Ответ #295 : 25 Сентября 2018, 11:00:36 »

Можно в поле "комментарий" там, где указывается мак, указывать номер ip в списке ip. Костыльное решение, правда. Подходит?
Записан
md5
NoDeny
Старожил
*

Карма: 0
Offline Offline

Сообщений: 256

647618
Просмотр профиля
« Ответ #296 : 25 Сентября 2018, 11:42:19 »

Можно в поле "комментарий" там, где указывается мак, указывать номер ip в списке ip. Костыльное решение, правда. Подходит?

не совсем.. на зте олте опция82 работает иначе..
Вот допустим:

Код:
interface gpon-onu_1/2/1:4
  switchport mode hybrid vport 1
  service-port 1 vport 1 user-vlan 2355 vlan 2355
  port-location format flexible-syntax vport 1
  port-location sub-option remote-id enable vport 1
  port-location sub-option remote-id name [b]NGPN100008AC[/b] vport 1
  dhcp-option82 enable vport 1
  dhcp-option82 trust true replace vport 1
  ip dhcp snooping enable vport 1
  ip access-group 300 in vport 1
!

  port-location sub-option remote-id name NGPN100008AC vport 1

NGPN100008AC вот это указывается в место agent.remote-id

собсвенно и получается что класс формируеться таким образом
class "NGPN100008AC" { match if substring(option agent.remote-id, 0, 14)="NGPN100008AC";}

Тут стоит вопрос. Как сделать так, что бы формировался класс так же как и на свич, только без добавления в группу оборудования
Записан
Efendy
Администратор
Спец
*****

Карма: 138
Offline Offline

Сообщений: 4782



Просмотр профиля
« Ответ #297 : 25 Сентября 2018, 12:58:29 »

Я отвечал tom для варианта с динамическими ip. У тебя ж я так понял конфиг формируется скриптом? я не сильно вчитывался в тред
Записан
tom
Постоялец
***

Карма: 2
Offline Offline

Сообщений: 216


Просмотр профиля
« Ответ #298 : 25 Сентября 2018, 21:23:02 »

Ааа, ну шикарне рішення наче. Таким чином модернізувати модуль привязки ір до логіна?
« Последнее редактирование: 25 Сентября 2018, 22:02:25 от tom » Записан
Efendy
Администратор
Спец
*****

Карма: 138
Offline Offline

Сообщений: 4782



Просмотр профиля
« Ответ #299 : 25 Сентября 2018, 23:08:39 »

я тут подумал, что в самой таблице mac_uid есть поле ip, но оно нужно для схемы с динамическими ip и стираются время от времени (иначе нельзя). Подумаю как для статических ip заюзать
Записан
Страниц: 1 ... 18 19 [20] 21 22 ... 26
  Печать  
 
Перейти в:  

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