Заполнение DHCP при помощи WEB-face PHP

Скрипты PHP, PERL и т.п. помогающие управлять сетью

Заполнение DHCP при помощи WEB-face PHP

Сообщение Андрей » 21 авг 2009, 06:53

Привет всем.
Хочу сделать форму для заполнения dhcp конфига.
Суть так, что мне надо брать только логин клиента, номер его квартиры и мак и записывать все в файл таким образом, чтобы запись организовывалась до знака "}".
Т.е.
Имеем один из инклудов в файл:
Код: Выделить всё
subnet 10.1.1.0 netmask 255.255.255.0{
host Ivanov{
    fixed-address 10.1.1.2;
    hardware ethernet 00:1f:d0:b6:f5:a3;
    option routers 10.1.1.1;
}
}

Теперь надо добавить следующую инфу в файл:
Код: Выделить всё
host Petrov{
    fixed-address 10.1.1.3;
    hardware ethernet 00:1a:30:d5:46:a0;
    option routers 10.1.1.1;
}

Но таким образом, чтобы она встала между закрывающейся фигурной скобкой от описания последнего клиента (Ivanov) и между закрывающейся фигурной скобкой от описания подсети (subnets ...).
Т.е. В итоге должен получить это:
Код: Выделить всё
subnet 10.1.1.0 netmask 255.255.255.0{
host Ivanov{
    fixed-address 10.1.1.2;
    hardware ethernet 00:1f:d0:b6:f5:a3;
    option routers 10.1.1.1;
}
host Petrov{
    fixed-address 10.1.1.3;
    hardware ethernet 00:1a:30:d5:46:a0;
    option routers 10.1.1.1;
}
}


Быть может у кого-то есть готовый скрипт? Поделитесь пожалуйста.
Заранее благодарен.
.ı|ı..ı|ı.
Андрей
местный житель
 
Сообщения: 1028
Зарегистрирован: 14 янв 2009, 13:37
Откуда: Оренбургская область

Re: Заполнение DHCP при помощи WEB-face PHP

Сообщение lehisnoe » 21 авг 2009, 10:29

IMHO, такие вещи лучше делать:
1. на основе данных из БД.
2. не добавлением в середину файла доп.инфы, а генерацией файла целиком (сильно проще получается).
No users
No troubles
No money
------------
www.mega-net.ru - IT аутсорсинг
Аватара пользователя
lehisnoe
Site Admin
 
Сообщения: 539
Зарегистрирован: 11 июн 2008, 14:09
Откуда: Moscow

Re: Заполнение DHCP при помощи WEB-face PHP

Сообщение Андрей » 21 авг 2009, 11:10

На основе данных из БД я буду брать ip подсети для дома/участка и ip-роутера.
Мне скинули уже готовый скрипт, но там дотого все мутно, что я решил что проще так сделать.
А есть готовы решения?
.ı|ı..ı|ı.
Андрей
местный житель
 
Сообщения: 1028
Зарегистрирован: 14 янв 2009, 13:37
Откуда: Оренбургская область

Re: Заполнение DHCP при помощи WEB-face PHP

Сообщение root » 21 авг 2009, 11:36

я не знаю ни одного готового
С уважением, root

Изображение
------------
www.mega-net.ru - IT аутсорсинг
Аватара пользователя
root
Site Admin
 
Сообщения: 1894
Зарегистрирован: 11 июн 2008, 13:05
Откуда: Moscow, Russia

Re: Заполнение DHCP при помощи WEB-face PHP

Сообщение Андрей » 21 авг 2009, 12:46

Жалко. :(
.ı|ı..ı|ı.
Андрей
местный житель
 
Сообщения: 1028
Зарегистрирован: 14 янв 2009, 13:37
Откуда: Оренбургская область

Re: Заполнение DHCP при помощи WEB-face PHP

Сообщение elser » 24 окт 2009, 01:49

подсказки как такие вещи делаются в принципе:
1. Многие конфиги понимают include
2. Метьте каментом место вставки (например: камент -> вставленый кусок + камент)
3. lehisnoe прав - часто проще сгенерить весь конфиг заново
4. Для совсем фанатов скриптинга в dhcpd.conf можно юзать on и exec
а вообще - динамический dhcpd.conf это true way, дерзайте господа!
Аватара пользователя
elser
проходил мимо
 
Сообщения: 1
Зарегистрирован: 24 окт 2009, 01:16

Re: Заполнение DHCP при помощи WEB-face PHP

Сообщение Андрей » 25 окт 2009, 09:17

elser писал(а):динамический dhcpd.conf это true way

ИМХО, это дплеко не истинный путь. Т.к. От инфицированных клиентов идут многочисленные запросы к DHCP-серверу.
Один удачный макспуффинг и DHCP для сегмента сети будет в DoS'е.

Качатеьно Вэб морды - я решил, что обучить 2х человек работать с mc намного легче, чем писать 3х километровый скрипт + задействовать в него БД. Правда в этом есть и ряд минусов. К примеру кто-то плохо обучился и перековырял конфиг вдоль и поперек, что потом я и сам не разберусь. Но это устранимо.
Вариант с генерацией конфига тоже отпадает, т.к. зачастую, при подключении клиента мы берем его mac и вносим в dhcp-конфиг и демона перезапускаем сразу. Это обеспечивает незамедлительное начало работы клиента в сети. Другое же дело если набить некоторый файл, а потом ждать когда конфиг сгенерируется и еще ждать, когда dhcpd перезапустится.
.ı|ı..ı|ı.
Андрей
местный житель
 
Сообщения: 1028
Зарегистрирован: 14 янв 2009, 13:37
Откуда: Оренбургская область

Re: Заполнение DHCP при помощи WEB-face PHP

Сообщение root » 25 окт 2009, 14:05

elser писал(а):1. Многие конфиги понимают include

ага, я активно этим пользуюсь при автогенерации конфига
elser писал(а):2. Метьте каментом место вставки (например: камент -> вставленый кусок + камент)

согласен, очень помогает при дебаге :)
elser писал(а):3. lehisnoe прав - часто проще сгенерить весь конфиг заново

проще конечно, но когда конфиг реально большой....
я все же сделал возможность регенирить конфиг не полностью, а только по конкретному свичу
elser писал(а):а вообще - динамический dhcpd.conf это true way, дерзайте господа!

+10000000000 :)

Андрей писал(а):я решил, что обучить 2х человек работать с mc намного легче, чем писать 3х километровый скрипт + задействовать в него БД. Правда в этом есть и ряд минусов

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

Андрей писал(а):. Другое же дело если набить некоторый файл, а потом ждать когда конфиг сгенерируется и еще ждать, когда dhcpd перезапустится.

все зависит о того как ты все реализуешь.
у меня конфиг DHCP генерится автоматом и никто ничего не ждет, т.к. после того как внесли изменения в web-интерфейс биллинга он незамедлительно отсылает команду DHCP серверу на регенерацию конфига и перезапуск dhcpd после генерации конфига.
а помогает мне отослать команду из web-интерфейса это: Свой клиент-сервер, управляем серверами FreeBSD удаленно
С уважением, root

Изображение
------------
www.mega-net.ru - IT аутсорсинг
Аватара пользователя
root
Site Admin
 
Сообщения: 1894
Зарегистрирован: 11 июн 2008, 13:05
Откуда: Moscow, Russia

Re: Заполнение DHCP при помощи WEB-face PHP

Сообщение Андрей » 26 окт 2009, 13:32

Я лучше по ssh сделаю. :)
.ı|ı..ı|ı.
Андрей
местный житель
 
Сообщения: 1028
Зарегистрирован: 14 янв 2009, 13:37
Откуда: Оренбургская область

Re: Заполнение DHCP при помощи WEB-face PHP

Сообщение root » 26 окт 2009, 15:01

Андрей писал(а):Я лучше по ssh сделаю.

да сделать мона как угодно
я к тому, что нужно тока подумать, а решить можно любой вопрос, в том числе и "ожидания" ;)
С уважением, root

Изображение
------------
www.mega-net.ru - IT аутсорсинг
Аватара пользователя
root
Site Admin
 
Сообщения: 1894
Зарегистрирован: 11 июн 2008, 13:05
Откуда: Moscow, Russia


Вернуться в Программинг и сети

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 13