Биллинговая система Nodeny
22 Ноября 2024, 14:37:21 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
Новости: Прекращена поддержка версии Nodeny 49
 
   Начало   Помощь Поиск Войти Регистрация  
Страниц: 1 ... 10 11 [12] 13 14 ... 26
  Печать  
Автор Тема: DHCP  (Прочитано 139567 раз)
Efendy
Администратор
Спец
*****

Карма: 138
Offline Offline

Сообщений: 4790



Просмотр профиля
« Ответ #165 : 25 Апреля 2014, 17:12:07 »

Все можно. Можно даже более крутые схемы делать, например, опция82 + статические ипы - сделал такое одной сети

Нужно заюзать модуль make_config, который будет создавать конфиг для dhcpd.
Записан
SerjioMati
NoDeny
Старожил
*

Карма: -4
Offline Offline

Сообщений: 282


Просмотр профиля
« Ответ #166 : 28 Апреля 2014, 14:46:44 »

у клиентов конфлик как ето исправить? модуль dhcp
Записан
md5
NoDeny
Старожил
*

Карма: 0
Offline Offline

Сообщений: 256

647618
Просмотр профиля
« Ответ #167 : 28 Апреля 2014, 19:07:40 »

 В замешательстве я в шоке... конфликт ip адресов что ли ?
Записан
Efendy
Администратор
Спец
*****

Карма: 138
Offline Offline

Сообщений: 4790



Просмотр профиля
« Ответ #168 : 29 Апреля 2014, 09:31:18 »

dhcp не выдает разным клиентам одинаковый ip. Это сетевая задача - смотри запущен ли ложный dhcp, может у кого статикой прописан ип и т.д.
Записан
SerjioMati
NoDeny
Старожил
*

Карма: -4
Offline Offline

Сообщений: 282


Просмотр профиля
« Ответ #169 : 29 Апреля 2014, 19:38:09 »

автоматично. це сталося після того як виключився сервер.почало в пару кліентів конфлікти
Записан
Efendy
Администратор
Спец
*****

Карма: 138
Offline Offline

Сообщений: 4790



Просмотр профиля
« Ответ #170 : 29 Апреля 2014, 20:17:10 »

ну может накрылся файл самого дхцп где прописаны ипы и маки. lease time закончится и по идее все станет ок
Записан
SerjioMati
NoDeny
Старожил
*

Карма: -4
Offline Offline

Сообщений: 282


Просмотр профиля
« Ответ #171 : 29 Апреля 2014, 21:39:42 »

как почистить ето?
Записан
md5
NoDeny
Старожил
*

Карма: 0
Offline Offline

Сообщений: 256

647618
Просмотр профиля
« Ответ #172 : 30 Апреля 2014, 10:02:08 »

скорее всего свичи тупые, и кто то роутер подключил не в тот порт. пошла раздача айпишников )
Записан
k291
Старожил
****

Карма: -10
Offline Offline

Сообщений: 455


Просмотр профиля
« Ответ #173 : 07 Июня 2014, 03:26:52 »

На ноуте получающего IP по DHCP, от NoDeny+, через примерно каждые 40мин, пропадает доступ в Интернет ~ на 2 сек.
Ктото сталкивался с данной проблемой?
Записан
k291
Старожил
****

Карма: -10
Offline Offline

Сообщений: 455


Просмотр профиля
« Ответ #174 : 07 Июня 2014, 03:38:07 »

На ноуте получающего IP по DHCP, от NoDeny+, через примерно каждые 40мин, пропадает доступ в Интернет ~ на 2 сек.
Ктото сталкивался с данной проблемой?
Вот сейчас опять. В cmd вывело:
Цитировать
PING: сбой передачи. General failure.
Из за чего это может быть?
Записан
k291
Старожил
****

Карма: -10
Offline Offline

Сообщений: 455


Просмотр профиля
« Ответ #175 : 07 Июня 2014, 03:42:10 »

Еще вопрос:
Создал услугу "Реальный IP", как научить DHCP, выдавать реальный IP при активации услуги, или выдавать серый IP, по завершению услуг?
Записан
Efendy
Администратор
Спец
*****

Карма: 138
Offline Offline

Сообщений: 4790



Просмотр профиля
« Ответ #176 : 07 Июня 2014, 18:07:52 »

Еще вопрос:
Создал услугу "Реальный IP", как научить DHCP, выдавать реальный IP при активации услуги, или выдавать серый IP, по завершению услуг?
нужно использовать модуль ядра make_config, который будет формировать конфиг для dhcp в зависимости от подключенной услуги. Кстати, пока услуги им не обрабатываются, но я смогу сделать, если найдется человек, который таки реализует что ты хочешь (не хочется тратить силы бесполезно) в шаблоне для dhcpd
Записан
k291
Старожил
****

Карма: -10
Offline Offline

Сообщений: 455


Просмотр профиля
« Ответ #177 : 07 Июня 2014, 22:28:56 »

Еще вопрос:
Создал услугу "Реальный IP", как научить DHCP, выдавать реальный IP при активации услуги, или выдавать серый IP, по завершению услуг?
нужно использовать модуль ядра make_config, который будет формировать конфиг для dhcp в зависимости от подключенной услуги. Кстати, пока услуги им не обрабатываются, но я смогу сделать, если найдется человек, который таки реализует что ты хочешь (не хочется тратить силы бесполезно) в шаблоне для dhcpd
Действительно, нет необходимости, что дописывать. Дабы не тратить силы и время, есть другой вариант, а именно:
1) Создаем услугу "Реальный IP" с продлением, которая будет снимать N денег.
2) Назначаем клиенту статический реальный IP. Но статика, это не динамика((
Вот тут вопрос, где указать в  NoDeny+, какой IP выдавать клиенту по DHCP, реальный или серый? Я пробовал создавать гуппу HomeLine-RealIP, в группе прописал сети реальных IP. Из новой группы, создавал клиента, но как получал серые IP так и получаю((( Может конфиг DHCP надо править:
Цитировать
log-facility local7;
option domain-name-servers 1.1.1.1, 8.8.8.8;
#option domain-name "xxx.net";

#silver ip
shared-network 123 {
interface igb0;
subnet 10.0.0.0 netmask 255.255.255.0 {
        range 10.0.0.2 10.0.0.254;
        option routers 10.0.0.1;
##    option broadcast-address 10.0.0.255;
        default-lease-time 2400;
        max-lease-time 1800;
   on commit {
        set ClientIP  = binary-to-ascii(10, 8, ".", leased-address);
        set ClientMac = binary-to-ascii(16, 8, ":", substring(hardware, 1, 6));
        set SwitchMac = "";
        set SwitchPort ="";
        if exists agent.circuit-id
        {
        set SwitchMac = binary-to-ascii(16, 8, ":", option agent.remote-id);
        set SwitchPort = binary-to-ascii(10, 8, ":", suffix(option agent.circuit-id, 1));
        }
        execute("/usr/bin/perl", "/usr/local/nodeny/modules/dhcp/events.pl", "commit",
        ClientIP, ClientMac, SwitchMac, SwitchPort);
   }
   on expiry {
        set ClientIP  = binary-to-ascii(10, 8, ".", leased-address);
        execute("/usr/bin/perl", "/usr/local/nodeny/modules/dhcp/events.pl", "expiry", ClientIP);
   }
   on release {
        set ClientIP  = binary-to-ascii(10, 8, ".", leased-address);
        execute("/usr/bin/perl", "/usr/local/nodeny/modules/dhcp/events.pl", "release", ClientIP);
   }
}

#real IP xxx.xx.xx.240/28
subnet xxx.xx.xx.240 netmask 255.255.255.240 {
        range xxx.xx.xx.243 xxx.xx.xx.254;
        option routers 217.66.99.241;
###    option broadcast-address 10.0.0.255;
        default-lease-time 2400;
        max-lease-time 1800;
   on commit {
        set ClientIP  = binary-to-ascii(10, 8, ".", leased-address);
        set ClientMac = binary-to-ascii(16, 8, ":", substring(hardware, 1, 6));
        set SwitchMac = "";
        set SwitchPort ="";
        if exists agent.circuit-id
        {
        set SwitchMac = binary-to-ascii(16, 8, ":", option agent.remote-id);
        set SwitchPort = binary-to-ascii(10, 8, ":", suffix(option agent.circuit-id, 1));
        }
        execute("/usr/bin/perl", "/usr/local/nodeny/modules/dhcp/events.pl", "commit",
        ClientIP, ClientMac, SwitchMac, SwitchPort);
   }
   on expiry {
        set ClientIP  = binary-to-ascii(10, 8, ".", leased-address);
        execute("/usr/bin/perl", "/usr/local/nodeny/modules/dhcp/events.pl", "expiry", ClientIP);
   }
   on release {
        set ClientIP  = binary-to-ascii(10, 8, ".", leased-address);
        execute("/usr/bin/perl", "/usr/local/nodeny/modules/dhcp/events.pl", "release", ClientIP);
   }
}
}

Записан
ivanmfan
Постоялец
***

Карма: 9
Offline Offline

Сообщений: 131


Просмотр профиля Email
« Ответ #178 : 08 Июня 2014, 09:31:15 »

Привет, вот как я мудрил
шаблон для make_config

У абона выбирается для него статический адрес. И генератор добавляет его в конфиг.


Код:
allow unknown-clients;
option domain-name-servers 1.1.1.1, 8.8.8.8;

default-lease-time 1800;
max-lease-time 1400;

authoritative;

ddns-update-style interim;

log-facility local7;



shared-network real_ip {
    subnet 192.168.100.0 netmask 255.255.255.128 {
        interface vlan100;
        option routers 192.168.100.1;
        option subnet-mask 255.255.255.127;
        range 192.168.100.2 192.168.100.126;
        allow unknown-clients;

        on commit {
               set ClientIP  = binary-to-ascii(10, 8, ".", leased-address);
                      set ClientMac = binary-to-ascii(16, 8, ":", substring(hardware, 1, 6));
                      set SwitchMac = "";
                      set SwitchPort ="";
                      if exists agent.circuit-id
                      {
                          set SwitchMac = binary-to-ascii(16, 8, ":", option agent.remote-id);
                          set SwitchPort = binary-to-ascii(10, 8, ":", suffix(option agent.circuit-id, 1));
                      }
                      execute("/usr/bin/perl", "/usr/local/nodeny/modules/dhcp/events.pl", "commit",
                              ClientIP, ClientMac, SwitchMac, SwitchPort);
            }
            on expiry {
              set ClientIP  = binary-to-ascii(10, 8, ".", leased-address);
              execute("/usr/bin/perl", "/usr/local/nodeny/modules/dhcp/events.pl", "expiry", ClientIP);
            }
            on release {
              set ClientIP  = binary-to-ascii(10, 8, ".", leased-address);
              execute("/usr/bin/perl", "/usr/local/nodeny/modules/dhcp/events.pl", "release", ClientIP);
            }
    }
    subnet xxx.yyy.zzz.0 netmask 255.255.255.128 {
        option subnet-mask 255.255.255.128;
        option broadcast-address xxx.yyy.zzz.127;
        option routers xxx.yyy.zzz.125;
        deny unknown-clients;
        on commit {
               set ClientIP  = binary-to-ascii(10, 8, ".", leased-address);
                      set ClientMac = binary-to-ascii(16, 8, ":", substring(hardware, 1, 6));
                      set SwitchMac = "";
                      set SwitchPort ="";
                      if exists agent.circuit-id
                      {
                          set SwitchMac = binary-to-ascii(16, 8, ":", option agent.remote-id);
                          set SwitchPort = binary-to-ascii(10, 8, ":", suffix(option agent.circuit-id, 1));
                      }
                      execute("/usr/bin/perl", "/usr/local/nodeny/modules/dhcp/events.pl", "commit",
                              ClientIP, ClientMac, SwitchMac, SwitchPort);
            }
            on expiry {
              set ClientIP  = binary-to-ascii(10, 8, ".", leased-address);
              execute("/usr/bin/perl", "/usr/local/nodeny/modules/dhcp/events.pl", "expiry", ClientIP);
            }
            on release {
              set ClientIP  = binary-to-ascii(10, 8, ".", leased-address);
              execute("/usr/bin/perl", "/usr/local/nodeny/modules/dhcp/events.pl", "release", ClientIP);
            }
    }
}
{% for user in users %}
    {% eval i = 0 %}
    {% for ip in user.ips %}
        {% if ip.type eq 'static' && user.mac.[i] %}
        host host{{ip.ipa}} {
                hardware ethernet {{user.mac.[i]|pretty_mac}};
                fixed-address {{ip.ipa}};
        }
        {% eval i = i + 1 %}
        {% endif %}
    {% endfor %}
{% endfor %}
Записан
k291
Старожил
****

Карма: -10
Offline Offline

Сообщений: 455


Просмотр профиля
« Ответ #179 : 10 Июня 2014, 13:14:40 »

Спасибо! Работает динамическая выдача серых IP, и статическая выдача real IP. При этом, real IP в приоритете.
К выше сказанному, надо сделать следующее:
1) Конфиг, что выше, прописать в /usr/local/nodeny/kernel/make_config/dhcp.tmpl
2)  В /usr/local/nodeny/kernel/make_config.cfg, ставим автозапуск run => 1; Внимание: чуть ниже, прописан путь к конфигу file       => '/tmp/dhcp.cfg .
3) Для того, чтобы DHCP использовал конфиг от make_config, в /etc/rc.conf, надо прописать путь к файлу:
Цитировать
dhcpd_enable="NO" # start idet v /etc/rc.local daby ne bylo plohih logov
dhcpd_ifaces="igb0" # 10.0.0.0
dhcpd_withuser="root"
dhcpd_conf="/tmp/dhcp.cfg"
Записан
Страниц: 1 ... 10 11 [12] 13 14 ... 26
  Печать  
 
Перейти в:  

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