dhcpd option 82

Технические вопросы по UTM 5.0
Аватара пользователя
hellard
Сообщения: 52
Зарегистрирован: Вт апр 05, 2005 05:59
Откуда: Абакан
Контактная информация:

Сообщение hellard »

dAverk писал(а): запрос с биллинга дёргает у пользователя ip из услуги "Локальная сеть", свич и порт из его профиля и кладёт файл в виде: #свич порт ip_клиента
service_id = связка "Локальная сеть"
Не совсем ясен этот момент.
Если услуга в составе тарифного плана, то у нее свой ID для каждого тарифного плана.
А если не в составе тарифного плана, то как будет работать тарифный план?

или у вас гибридная авторизация? узер-порт + vpn/pppoe ?

mikkey finn
Сообщения: 1612
Зарегистрирован: Пт ноя 10, 2006 15:23

Сообщение mikkey finn »

если в тарифном плане типично используется одна услуга передачи IP-трафика, по типу услуги можно выцепить, если захотеть.

Аватара пользователя
hellard
Сообщения: 52
Зарегистрирован: Вт апр 05, 2005 05:59
Откуда: Абакан
Контактная информация:

Сообщение hellard »

mikkey finn писал(а):если в тарифном плане типично используется одна услуга передачи IP-трафика, по типу услуги можно выцепить, если захотеть.
Имеете ввиду по дескрипшену (названию услуги парсить)?

Аватара пользователя
hellard
Сообщения: 52
Зарегистрирован: Вт апр 05, 2005 05:59
Откуда: Абакан
Контактная информация:

Сообщение hellard »

dAverk писал(а):

Код: Выделить всё

#!/bin/bash
service=/sbin/service

BASE_STR=`mcookie`   # 32-символьный (128 бит) magic cookie.
POS=11               # Произвольная позиция в строке magic cookie.
LEN=5                # $LEN последовательных символов.
Подскажите плиз аналог mcookie для freebsd.

dAverk
Сообщения: 43
Зарегистрирован: Сб июн 09, 2007 18:23

Сообщение dAverk »

честно говоря хз =)
вот те маджик жопа =)

Код: Выделить всё

dd if=/dev/urandom  bs=10 count=10 |  tr -dc A-Za-z0-9_ | head -c8

Аватара пользователя
hellard
Сообщения: 52
Зарегистрирован: Вт апр 05, 2005 05:59
Откуда: Абакан
Контактная информация:

Сообщение hellard »

Запрос dAverk, который наш кодер модифицировал.
Работает под 5.2.1-007 без проблем.

Первый выбирал по услуге, текущий выбирает по родительской услуге.

Код: Выделить всё

select
(
select
INET_NTOA(b.router_bin_ip & 0x00000000FFFFFFFF)
from
users a, routers_info b
where
b.id = a.remote_switch_id and a.id = c.user_id and a.is_deleted = 0
)
as
switch_ip,
(
select
a.port_number
from
users a
where
a.id = c.user_id and is_deleted = 0
)
as
switch_port,
(
select
INET_NTOA(a.ip & 0x00000000FFFFFFFF)
from
ip_groups a
where
a.ip_group_id =
(
select
a.ip_group_id
from
iptraffic_service_links a
where
a.id = c.id and is_deleted = 0
)
and is_deleted = 0
)
as
user_ip
from
service_links c, services_data
where
services_data.parent_service_id = 3 and services_data.is_deleted = 0 and c.service_id = services_data.id and c.is_deleted = 0 and services_data.tariff_id != 0
order by
switch_ip, switch_port

Аватара пользователя
hellard
Сообщения: 52
Зарегистрирован: Вт апр 05, 2005 05:59
Откуда: Абакан
Контактная информация:

Сообщение hellard »

dAverk писал(а):честно говоря хз =)
вот те маджик жопа =)

Код: Выделить всё

dd if=/dev/urandom  bs=10 count=10 |  tr -dc A-Za-z0-9_ | head -c8
Спс. все работает.

solomon
Сообщения: 316
Зарегистрирован: Вт мар 16, 2010 08:39

Сообщение solomon »

Скажите пожалуйста товарищи.... у меня резко встал критичный вопрос по внедрению dhcp opt 82 - умеет ли родной от нетапа радиус работать с дцхп опт 82 - обязательно ли ставить FreeRadius?
И еще такой вопрос - на определенный свич определенному порту указан IPшник - который выдается клиенту на этом порту, а как передаются шлюз днс'ки - вообще сам маршрут....сильно не ругайтесь просто немного не понял как это робит

Arti
Сообщения: 266
Зарегистрирован: Пн окт 01, 2007 02:44

Сообщение Arti »

DHCP и RADIUS протоколы не имеющие отношения друг к другу. Что создатели FreeRadius сделали поддержку DHCP - это их сугубо личная инициатива :)

solomon
Сообщения: 316
Зарегистрирован: Вт мар 16, 2010 08:39

Сообщение solomon »

ну а все таки кто нить использует в боевую option 82?
мы планируем привязку к порту свича ip'шник ....

solomon
Сообщения: 316
Зарегистрирован: Вт мар 16, 2010 08:39

Сообщение solomon »

Тут всплывал вопрос про динамическую выдачу IP адресов по OPT82 кто нить пробывал у себя реализовывать? поделитесь пожалуйста опытом :)

dAverk
Сообщения: 43
Зарегистрирован: Сб июн 09, 2007 18:23

Сообщение dAverk »

Клиент-серверная реализация на mono не появлялась - ибо впадлу, но в НГ праздники допишу точно генератор, заодно и логику немного подковыряю, ждите ещё порцию глючащих и тормозящих кошмаров :D :D :D
Т.к. интереса у народа нет - разработку буду пилить в закрытом виде.

vofka-morkofka
Сообщения: 3
Зарегистрирован: Чт ноя 18, 2010 09:41

Спасибо

Сообщение vofka-morkofka »

после допиливания скриптов под свои задачи, всё заработало как надо (пример очень полный и адаптируется быстро). автору большое спасибо за помощь и сэкономленное время.

dAverk
Сообщения: 43
Зарегистрирован: Сб июн 09, 2007 18:23

Сообщение dAverk »

UPD: last small fix in sql + script.

Аватара пользователя
TiRider
Сообщения: 568
Зарегистрирован: Сб июн 07, 2008 12:43

Сообщение TiRider »

Пытался 2 запроса опубликованных тут выполнить, работают. Но ничего не выводят. В ответ от мускуля - тишина :(

Ребята кто подскажет, может где надо в админке чего-то допилить(подправить). Выполнял вот эти запросы:

Код: Выделить всё

select (select INET_NTOA(b.router_bin_ip & 0x00000000FFFFFFFF) from users a, routers_info b where b.id=a.remote_switch_id and a.id=c.user_id and a.is_deleted='0') as switch_ip, (select a.port_number from users a where a.id=c.user_id and is_deleted='0') as switch_port, (select INET_NTOA(a.ip & 0x00000000FFFFFFFF) from ip_groups a where a.ip_group_id=(select a.ip_group_id from iptraffic_service_links a where a.id=c.id and is_deleted='0') and is_deleted='0') as user_ip from service_links c, services_data where services_data.parent_service_id='3' and services_data.is_deleted='0' and c.service_id=services_data.id and c.is_deleted='0' and services_data.tariff_id!='0' order by switch_ip, switch_port;

Код: Выделить всё

select * from (select (select INET_NTOA(b.router_bin_ip & 0xFFFFFFFF) from users a, routers_info b where b.id = a.remote_switch_id and a.id = c.user_id and a.is_deleted = '0') as switch_ip, (select a.port_number from users a where a.id = c.user_id and is_deleted = 0 and a.port_number > '0') as switch_port, (select INET_NTOA(a.ip & 0xFFFFFFFF) from ip_groups a where a.ip_group_id = (select a.ip_group_id from iptraffic_service_links a where a.id = c.id and is_deleted = '0') and is_deleted = '0') as user_ip from service_links c where c.service_id = '5' and is_deleted = '0' order by user_ip) u where u.switch_ip is not NULL and u.switch_port is not NULL;
Можно конечно посидеть и покумекать, но реально, времени нет, курить тему еще и со свичами опт82... в связке L3(acl) + dhcp 4 + opt82 для dsl юзверей, все намного проще...

Ответить