Jump to content
Калькуляторы

dhcp opt82 небольшая проблема с настройкой DHCP

Добрый вечер :)

в общем проблема в следующем -

 

Переводим сеть на опцию 82., ip будет выдаваться на основании порта коммутатора и ip коммутатора.

 

так как сходу сегмент перевести не получится, потому что народа много, то пришла в голову идея, части абонентов из одного сегмента

выдавать ип динамически как и раньше, и потом потихоньку перетаскивать на опцию 82.

 

Смысл в том что бы описать в dhcp.conf сеть например 192.168.10.0/24 у которой предположим 150 адресов могут выдаваться динамически (range 192.168.10.2 192.168.10.150) а остальной кусок адресного пространства зарезервировать

под opt82 и не спеша перетаскивать абонов.

 

Но тут есть косяк, если описывать subnet как набор class(порт коммутатора + ip коммутатора) и pools, т е чистый opt82 то проблем нет, ip выдаются верные.

если в эту же подсеть добавить еще и range. то opt82 перестает работать. причем независимо для какой subnet описан range.

такое впечатление что dhcp ищет любой range из любой подсети и выдает кому угодно любые ip адреса :)))

получается что абонент из 192.168.10.* подсети получает ip 192.168.20.*. Есстественно ничего не работает.

 

 

#
# DHCP Server Configuration file.
#   see /usr/share/doc/dhcp*/dhcpd.conf.sample
#   see 'man 5 dhcpd.conf'
#
option domain-name "****";
option domain-name-servers *.*.*.*, *.*.*.*;

default-lease-time 600;
max-lease-time 3600;
authoritative;
ddns-update-style none;
log-facility local6;
ping-check true;

if exists agent.circuit-id
{
log (
info, concat( "Lease for ",
binary-to-ascii (10, 8, ".", leased-address),
" Switch port: ",
binary-to-ascii (10, 8, "/", suffix ( option agent.circuit-id, 2)),
" Switch MAC: ",
binary-to-ascii (16, 8, ":", suffix ( option agent.remote-id, 6)),
" VLAN: ",
binary-to-ascii (10, 16, "", substring( option agent.circuit-id, 2, 2)),
" Client MAC: ",
binary-to-ascii (16, 8, ":", substring(hardware, 1, 7))
)
);
}
include "/etc/dhcp/classes.conf";

shared-network NET {
stash-agent-options on;
subnet 192.168.0.0 netmask 255.255.255.240 {}

include "/etc/dhcp/subnets.conf";
include "/etc/dhcp/pools.conf";
}

 

classes.conf

class "10_1_4" {match if option agent.circuit-id = 0:4:00:a:1:4 and option agent.remote-id = 1:4:c0:a8:c2:32;}
class "204_4_6" {match if option agent.circuit-id = 0:4:00:cc:1:6 and option agent.remote-id = 1:4:c0:a8:c3:01;}
class "5_2_8" {match if option agent.circuit-id = 0:4:00:5:1:8 and option agent.remote-id = 1:4:c0:a8:c3:01;}

 

pools.conf

pool {range 192.168.100.15; allow members of "10_1_4";}
pool {range 192.168.204.10; allow members of "204_4_6";}
pool {range 192.168.200.26; allow members of "5_2_8";}

 

subnets.conf

subnet 192.168.100.0 netmask 255.255.255.0 { range 192.168.100.100 192.168.100.250; option routers 192.168.100.1;}
subnet 192.168.204.0 netmask 255.255.255.0 { range 192.168.204.100 192.168.204.250; option routers 192.168.204.1;}
subnet 192.168.200.0 netmask 255.255.255.0 { range 192.168.200.100 192.168.200.250; option routers 192.168.200.1;}

Edited by alexxx71

Share this post


Link to post
Share on other sites

Насколько я помню все пулы должны быть прописаны внутри сабнета. С какой то из версий ISC-DHCPd такое изменение сделали. У нас все пулы внутри сабнета, работает выделение и по опт82 и без него одновременно.

Share this post


Link to post
Share on other sites

Скажите какую версию используете?

и еще вопрос - можно ли оптион 82 использовать с динамическим пулом адресов?

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this