DHCP-сервер и интеграция с mysql

Все остальное

Re: DHCP-сервер и интеграция с mysql

Сообщение root » 21 июн 2010, 09:52

Про оциию 82 почтай вот тут: http://xgu.ru/wiki/DHCP_option_82
Правило для порта 5.

Код: Выделить всё
class "port-5"
{
 match if binary-to-ascii (10, 8, "", suffix( option agent.circuit-id, 1)) = "5";
}

pool {
  range 192.168.1.155;
  allow members of "port-5";
}
С уважением, root

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

Re: DHCP-сервер и интеграция с mysql

Сообщение Андрей » 21 июн 2010, 18:42

Код: Выделить всё
pool {
  range 192.168.1.155;
  allow members of "port-5";
}

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

Re: DHCP-сервер и интеграция с mysql

Сообщение MadMax » 22 июн 2010, 11:15

Андрей писал(а):
Код: Выделить всё
pool {
  range 192.168.1.155;
  allow members of "port-5";
}

Подразумевает использование пула адресов.
У меня нет желания выделять пул адресов на клиента.


это подразумевает использование пула из одного адреса. написано было исключительно ради примера
www.mega-net.ru - IT аутсорсинг
MadMax
Site Admin
 
Сообщения: 37
Зарегистрирован: 09 июл 2008, 15:39
Откуда: Moscow

Re: DHCP-сервер и интеграция с mysql

Сообщение Андрей » 22 июн 2010, 12:12

Хорошо.
Тогда еще вопрос.
Если я вместо mac-адреса клиента внесу mac-порта свитча, к которому пдключен клиент - что я получу?
Как это будет работать?
.ı|ı..ı|ı.
Андрей
местный житель
 
Сообщения: 1028
Зарегистрирован: 14 янв 2009, 13:37
Откуда: Оренбургская область

Re: DHCP-сервер и интеграция с mysql

Сообщение root » 23 июн 2010, 16:51

Андрей писал(а):Если я вместо mac-адреса клиента внесу mac-порта свитча

надо использовать не мак порта, а его номер
С уважением, root

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

Re: DHCP-сервер и интеграция с mysql

Сообщение Андрей » 23 июн 2010, 17:23

root писал(а):надо использовать не мак порта, а его номер

Хорошо. Допустим так.
По всей сетке находится 122 свитча. Из них 2/3 это 3Com, 1/3 - Nortel и сейчас я ввожу Cisco.
Может и глупый вопрос, но все же.
Абонент сидит в 5 порту. Этих 5 портов у меня 122 штуки. Как DHCP поймет какому клиенту какой ip выдать, если сеть поделена на сегменты с маской подсети /24 в каждом сегменте?

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

Re: DHCP-сервер и интеграция с mysql

Сообщение root » 24 июн 2010, 10:31

Андрей писал(а):Абонент сидит в 5 порту. Этих 5 портов у меня 122 штуки. Как DHCP поймет какому клиенту какой ip выдать, если сеть поделена на сегменты с маской подсети /24 в каждом сегменте?

потому что можно указать не только порт, но и IP-адрес свича:
10.0.1.1 - адрес DHCP сервера
10.0.1.15 - адрес свича
10.2.8.22 - адрес выдаваемый абоненту

dhcpd.conf:
Код: Выделить всё
option domain-name "domain.ru";
option domain-name-servers 1.1.1.1, 2.2.2.2;

lease-file-name "/var/db/dhcpd/dhcpd.leases";

default-lease-time 1200;
max-lease-time 1200;
authoritative;
ddns-update-style none;
log-facility local7;

option subnet-mask 255.255.255.0;

use-lease-addr-for-default-route on;
one-lease-per-client on;
deny duplicates;
deny bootp;
ping-check off;

option arp-cache-timeout 3600;
option netbios-node-type 1; # B-node (Broadcast)

# MS routes: adds extras to supplement routers option
option ms-classless-static-routes code 249 = array of unsigned integer 8;
# RFC3442 routes: overrides routers option
option rfc3442-classless-static-routes code 121 = array of unsigned integer 8;

option space microsoft;
option microsoft.disable-netbios-over-tcpip code 1 = unsigned integer 32;
option microsoft.release-on-shutdown        code 2 = unsigned integer 32;
if substring(option vendor-class-identifier, 0, 4) = "MSFT" {
    vendor-option-space microsoft;
    option microsoft.disable-netbios-over-tcpip 2;
    option microsoft.release-on-shutdown 1;
}

option classless-static-route    code 121 = array of unsigned integer 8;
option classless-static-route-ms code 249 = array of unsigned integer 8;

log(info, concat("- Log anyway: ", binary-to-ascii(10, 8, ".", leased-address), " via IP: ", switch-addr, " (MAC: ", switch-mac, ") on port: ", switch-port, " in VLAN: ", switch-port-vlan, " Class Name: ",concat(binary-to-ascii(16,8,":",substring(option agent.remote-id,3,6)),":",binary-to-ascii(10,8,"",substring(option agent.circuit-id,5,1)))));
   set switch-addr = binary-to-ascii(10, 8, ".", packet(24, 4));
   set switch-port = binary-to-ascii(10, 8, "", substring(option agent.circuit-id, 5, 1));
   set switch-port-vlan = binary-to-ascii(10, 16, "", substring(option agent.circuit-id, 2, 2));

class "10.0.1.15:19" {
        match if concat(binary-to-ascii(10,8,".",packet(24,4)),":",binary-to-ascii(10,8,"",substring(option agent.circuit-id,5,1))) = "10.0.1.15:19";
}
shared-network switches {
   subnet 10.2.8.0 netmask 255.255.255.0 {
      option ms-classless-static-routes 16, 10,2, 10,2,8,1;
      option rfc3442-classless-static-routes 16, 10,2, 10,2,8,1;
      pool {
        range 10.2.8.22;
        allow members of "10.0.1.15:19";
      }
   }
}


на свиче, на примере Dlink DES-3526, для этого дожна быть включена "опция 82", вот полная секция в конфиге:
Код: Выделить всё
# DHCP_RELAY

enable dhcp_relay
config dhcp_relay hops 4 time 0
config dhcp_relay option_82 state enable
config dhcp_relay option_82 check disable
config dhcp_relay option_82 policy replace
config dhcp_relay option_82 remote_id default
config dhcp_relay option_60 state disable
config dhcp_relay option_60 default mode drop
config dhcp_relay option_61 state disable
config dhcp_relay option_61 default drop
config dhcp_relay add ipif System 10.0.1.1

# DHCP_LOCAL_RELAY

config dhcp_local_relay option_82 ports 1-26 policy keep


таким образом абонент за 19-м портом свича с IP 10.0.1.15 получает адрес 10.2.8.22 и статик маршрут в подсеть 10.2.0.0/16 через 10.2.8.1
С уважением, root

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

Re: DHCP-сервер и интеграция с mysql

Сообщение Андрей » 24 июн 2010, 10:51

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

Re: DHCP-сервер и интеграция с mysql

Сообщение Андрей » 02 мар 2011, 13:34

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

Re: DHCP-сервер и интеграция с mysql

Сообщение root » 02 мар 2011, 13:41

ответ очевиден:
Андрей писал(а): Кто как борется с подменой dhcp сервера?

блокируем на порту свича, смотрящего в сторону клиента, возможность передавать трафик с порта udp/67
С уважением, root

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

Пред.След.

Вернуться в Разное (networks)

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

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