Jump to content

ISC DHCP + Option 82 - no free leases


Recommended Posts

Вобщем заморочился с настрйкой сабжевого DHCP

Схема такая

Интернет ---> (em0 - 192.168.1.2/24 SERVER em1 - 10.0.0.1) --> D-link DES-3526 (IP 10.0.0.250) --> Ноут

dhcpd.conf:

option domain-name-servers 8.8.8.8;
lease-file-name "/var/log/dhcpd.leases";
log-facility local7;
default-lease-time 600;
max-lease-time 1200;
ddns-update-style none;
local-address 10.0.0.1;

include "/usr/local/etc/dhcp/sw-170.conf";

if exists agent.circuit-id {
log(info, concat("Lease"," IP ",binary-to-ascii(10, 8,".",leased-address),
" MAC ",binary-to-ascii(16,8,":",substring(hardware,1, 6)),
" port ",binary-to-ascii(10,16, "",substring(option agent.circuit-id, 4, 2)),
" VLAN ",binary-to-ascii(10, 16,"",substring(option agent.circuit-id, 2, 2))
)
);
}


shared-network test {
subnet 192.168.2.0 netmask 255.255.255.0 {
deny unknown-clients;
}

subnet 10.0.0.0 netmask 255.255.255.0 {
option broadcast-address 10.0.0.255;
option domain-name-servers 8.8.8.8;
option routers 10.0.0.1;
option subnet-mask 255.255.255.0;


pool { range 10.0.0.101; allow members of "sw170-1";}
pool { range 10.0.0.102; allow members of "sw170-2";}
pool { range 10.0.0.103; allow members of "sw170-3";}
pool { range 10.0.0.104; allow members of "sw170-4";}
pool { range 10.0.0.105; allow members of "sw170-5";}
pool { range 10.0.0.106; allow members of "sw170-6";}
pool { range 10.0.0.107; allow members of "sw170-7";}
pool { range 10.0.0.108; allow members of "sw170-8";}
pool { range 10.0.0.109; allow members of "sw170-9";}
pool { range 10.0.0.110; allow members of "sw170-10";}
pool { range 10.0.0.111; allow members of "sw170-11";}
pool { range 10.0.0.112; allow members of "sw170-12";}
pool { range 10.0.0.113; allow members of "sw170-13";}
pool { range 10.0.0.114; allow members of "sw170-14";}
pool { range 10.0.0.115; allow members of "sw170-15";}
pool { range 10.0.0.116; allow members of "sw170-16";}
pool { range 10.0.0.117; allow members of "sw170-17";}
pool { range 10.0.0.118; allow members of "sw170-18";}
pool { range 10.0.0.119; allow members of "sw170-19";}
pool { range 10.0.0.120; allow members of "sw170-20";}
pool { range 10.0.0.121; allow members of "sw170-21";}
pool { range 10.0.0.122; allow members of "sw170-22";}
pool { range 10.0.0.123; allow members of "sw170-23";}
pool { range 10.0.0.124; allow members of "sw170-24";}

 

sw-170.conf:

#Device Type : DES-1210-28 Fast Ethernet Switch
#MAC Address : 1C-AF-F7-C9-31-59
#IP Address : 192.168.2.170 (Manual)
#VLAN Name : 
#Subnet Mask : 255.255.255.0
#Default Gateway : 192.168.2.1
#Boot PROM Version : 1.00.002
#Firmware Version : 5.10.B012
#Hardware Version : A1
#System Name :sw-170

class "sw170-1" {
match if binary-to-ascii(16, 8, "-", suffix(option agent.remote-id, 5)) = "af:f7:c9:31:59" and binary-to-ascii(10, 8, "", suffix(option agent.circuit-id, 1)) = "1"; 
}
class "sw170-2" {
match if binary-to-ascii(16, 8, "-", suffix(option agent.remote-id, 5)) = "af:f7:c9:31:59" and binary-to-ascii(10, 8, "", suffix(option agent.circuit-id, 1)) = "2"; 
}
class "sw170-3" {
match if binary-to-ascii(16, 8, ":", suffix(option agent.remote-id, 5)) = "af:f7:c9:31:59" and binary-to-ascii(10, 8, "", suffix(option agent.circuit-id, 1)) = "3"; 
}
class "sw170-4" {
match if binary-to-ascii(16, 8, ":", suffix(option agent.remote-id, 5)) = "af:f7:c9:31:59" and binary-to-ascii(10, 8, "", suffix(option agent.circuit-id, 1)) = "4"; 
}
class "sw170-5" {
match if binary-to-ascii(16, 8, ":", suffix(option agent.remote-id, 5)) = "af:f7:c9:31:59" and binary-to-ascii(10, 8, "", suffix(option agent.circuit-id, 1)) = "5"; 
}
class "sw170-6" {
match if binary-to-ascii(16, 8, ":", suffix(option agent.remote-id, 5)) = "af:f7:c9:31:59" and binary-to-ascii(10, 8, "", suffix(option agent.circuit-id, 1)) = "6"; 
}
class "sw170-7" {
match if binary-to-ascii(16, 8, ":", suffix(option agent.remote-id, 5)) = "af:f7:c9:31:59" and binary-to-ascii(10, 8, "", suffix(option agent.circuit-id, 1)) = "7"; 
}
class "sw170-8" {
match if binary-to-ascii(16, 8, ":", suffix(option agent.remote-id, 5)) = "af:f7:c9:31:59" and binary-to-ascii(10, 8, "", suffix(option agent.circuit-id, 1)) = "8"; 
}
class "sw170-9" {
match if binary-to-ascii(16, 8, ":", suffix(option agent.remote-id, 5)) = "af:f7:c9:31:59" and binary-to-ascii(10, 8, "", suffix(option agent.circuit-id, 1)) = "9"; 
}
class "sw170-10" {
match if binary-to-ascii(16, 8, ":", suffix(option agent.remote-id, 5)) = "af:f7:c9:31:59" and binary-to-ascii(10, 8, "", suffix(option agent.circuit-id, 1)) = "10"; 
}
class "sw170-11" {
match if binary-to-ascii(16, 8, ":", suffix(option agent.remote-id, 5)) = "af:f7:c9:31:59" and binary-to-ascii(10, 8, "", suffix(option agent.circuit-id, 1)) = "11"; 
}
class "sw170-12" {
match if binary-to-ascii(16, 8, ":", suffix(option agent.remote-id, 5)) = "af:f7:c9:31:59" and binary-to-ascii(10, 8, "", suffix(option agent.circuit-id, 1)) = "12"; 
}
class "sw170-13" {
match if binary-to-ascii(16, 8, ":", suffix(option agent.remote-id, 5)) = "af:f7:c9:31:59" and binary-to-ascii(10, 8, "", suffix(option agent.circuit-id, 1)) = "13"; 
}
class "sw170-14" {
match if binary-to-ascii(16, 8, ":", suffix(option agent.remote-id, 5)) = "af:f7:c9:31:59" and binary-to-ascii(10, 8, "", suffix(option agent.circuit-id, 1)) = "14"; 
}
class "sw170-15" {
match if binary-to-ascii(16, 8, ":", suffix(option agent.remote-id, 5)) = "af:f7:c9:31:59" and binary-to-ascii(10, 8, "", suffix(option agent.circuit-id, 1)) = "15"; 
}
class "sw170-16" {
match if binary-to-ascii(16, 8, ":", suffix(option agent.remote-id, 5)) = "af:f7:c9:31:59" and binary-to-ascii(10, 8, "", suffix(option agent.circuit-id, 1)) = "16"; 
}
class "sw170-17" {
match if binary-to-ascii(16, 8, ":", suffix(option agent.remote-id, 5)) = "af:f7:c9:31:59" and binary-to-ascii(10, 8, "", suffix(option agent.circuit-id, 1)) = "17"; 
}
class "sw170-18" {
match if binary-to-ascii(16, 8, ":", suffix(option agent.remote-id, 5)) = "af:f7:c9:31:59" and binary-to-ascii(10, 8, "", suffix(option agent.circuit-id, 1)) = "18"; 
}
class "sw170-19" {
match if binary-to-ascii(16, 8, ":", suffix(option agent.remote-id, 5)) = "af:f7:c9:31:59" and binary-to-ascii(10, 8, "", suffix(option agent.circuit-id, 1)) = "19"; 
}
class "sw170-20" {
match if binary-to-ascii(16, 8, ":", suffix(option agent.remote-id, 5)) = "af:f7:c9:31:59" and binary-to-ascii(10, 8, "", suffix(option agent.circuit-id, 1)) = "20"; 
}
class "sw170-21" {
match if binary-to-ascii(16, 8, ":", suffix(option agent.remote-id, 5)) = "af:f7:c9:31:59" and binary-to-ascii(10, 8, "", suffix(option agent.circuit-id, 1)) = "21"; 
}
class "sw170-22" {
match if binary-to-ascii(16, 8, ":", suffix(option agent.remote-id, 5)) = "af:f7:c9:31:59" and binary-to-ascii(10, 8, "", suffix(option agent.circuit-id, 1)) = "22"; 
}
class "sw170-23" {
match if binary-to-ascii(16, 8, ":", suffix(option agent.remote-id, 5)) = "af:f7:c9:31:59" and binary-to-ascii(10, 8, "", suffix(option agent.circuit-id, 1)) = "23"; 
}
class "sw170-24" {
match if binary-to-ascii(16, 8, ":", suffix(option agent.remote-id, 5)) = "af:f7:c9:31:59" and binary-to-ascii(10, 8, "", suffix(option agent.circuit-id, 1)) = "24"; 
}

 

Конфиг свича:

DES-3526:# show dhcp_relay 
Command: show dhcp_relay

DHCP/BOOTP Relay Status : Enabled
DHCP/BOOTP Hops Count Limit : 16
DHCP/BOOTP Relay Time Threshold : 0
DHCP Relay Agent Information Option 82 State : Enabled
DHCP Relay Agent Information Option 82 Check : Disabled
DHCP Relay Agent Information Option 82 Policy : Keep
DHCP Relay Agent Information Option 82 ID : 1C-AF-F7-C9-31-59

Interface Server 1 Server 2 Server 3 Server 4
--------- --------------- --------------- --------------- ---------------
System 10.0.0.1[color=#4B5C77][font=tahoma, sans-serif][size=3][background=rgb(250, 250, 250)] [/background][/size][/font][/color]

В итоге ноут воткнутый в любой из портов пытается получить настройки, но в лог dhcpd.log сыпет

DHCPDISCOVER from 00:17:31:db:cf:a2 via em1: network test: no free leases
DHCPDISCOVER from 00:17:31:db:cf:a2 via 10.0.0.250: network test: no free leases

Так несколько записей подряд, после чего попытки получить адрес прекращаются

Где косяк?

Link to post
Share on other sites

class "sw170-1" {

match if binary-to-ascii(16, 8, "-", suffix(option agent.remote-id, 5)) = "af:f7:c9:31:59" and binary-to-ascii(10, 8, "", suffix(option agent.circuit-id, 1)) = "1";

}

 

 

 

это что за бред?

вы по порту или по маку? читать до просветления мануалы.

а для наглядности:

class "192.168.240.37-P01" {
   match if binary-to-ascii (10, 8, ".", packet(24, 4)) = "192.168.240.37" and binary-to-ascii (10, 8, ":", suffix( option agent.circuit-id, 1)) = "1";
}

 

пиво завтра, жду возле памятника ленину.

Link to post
Share on other sites

class "sw170-1" {

match if binary-to-ascii(16, 8, "-", suffix(option agent.remote-id, 5)) = "af:f7:c9:31:59" and binary-to-ascii(10, 8, "", suffix(option agent.circuit-id, 1)) = "1";

}

 

 

 

это что за бред?

вы по порту или по маку? читать до просветления мануалы.

а для наглядности:

class "192.168.240.37-P01" {
match if binary-to-ascii (10, 8, ".", packet(24, 4)) = "192.168.240.37" and binary-to-ascii (10, 8, ":", suffix( option agent.circuit-id, 1)) = "1";
}

 

пиво завтра, жду возле памятника ленину.

 

а ниче

class "port-2_106"

{ match if suffix(option agent.circuit-id,1)=2

and suffix(option agent.remote-id,6)=00:25:9e:ee:71:0b;}

class "port-3_106"

{ match if suffix(option agent.circuit-id,1)=3

and suffix(option agent.remote-id,6)=00:25:9e:ee:71:0b;}

(порты в hex )

 

 

это раз

второе

DHCP Relay Agent Information Option 82 ID : 1C-AF-F7-C9-31-59 и af:f7:c9:31:59 ?

а не ip

 

dhcpdump и слушать.

Link to post
Share on other sites

Да вот тут до меня дошло только с подсветкой синтаксиса что конфиги я частично копипастил и RemoteID там от другого коммутатора :facepalm:

В общем для коммутатора с RemoteID 11-22-33-44-55-66

класс будет примерно такой?

 


class "sw170-1" {
match if binary-to-ascii(16, 8, "-", suffix(option agent.remote-id, 5)) = "22-33-44-55-66" and binary-to-ascii(10, 8, "", suffix(option agent.circuit-id, 1)) = "1";


или такой?


class "sw170-1" {
match if binary-to-ascii(16, 8, "-", suffix(option agent.remote-id, 6)) = "11-22-33-44-55-66" and binary-to-ascii(10, 8, "", suffix(option agent.circuit-id, 1)) = "1";

Немогу понять зачем автор исходного конфига отбрасывает "11-"? И сейчас догнал что конфиг для "нескольких свичей". Тоесть проверяется не только принадлежность DHCP запроса к порту, но и принадлежность к рилею?

Link to post
Share on other sites

Вобщем немного подправил конфиг, есть реакция, но странная..

Конфиг свича не трогал

Конфиг dhcp.conf тоже

Подправил только sw-170.conf.

Итак при

class "sw170-1"
{
match if suffix(option agent.remote-id, 6)="00:17:9A:BB:77:C7" and suffix(option agent.circuit-id, 1)=1;
}

dhcpd.log

Sep 15 06:17:12 router dhcpd: DHCPDISCOVER from e8:11:32:c6:9c:d7 via em1: network test: no free leases
Sep 15 06:17:12 router dhcpd: DHCPDISCOVER from e8:11:32:c6:9c:d7 via em1: network test: no free leases
Sep 15 06:17:12 router dhcpd: DHCPDISCOVER from e8:11:32:c6:9c:d7 via 10.0.0.250: network test: no free leases
Sep 15 06:17:12 router dhcpd: DHCPDISCOVER from e8:11:32:c6:9c:d7 via 10.0.0.250: network test: no free leases

При

class "sw170-2"
{
match if suffix(option agent.remote-id,6)="00-17-9A-BB-77-C7" and suffix(option agent.circuit-id,1)="2";
}

В логах тоже самое

при

class "sw170-3"
{
match if suffix(option agent.remote-id,6)=00-17-9A-BB-77-C7 and suffix(option agent.circuit-id, 1)=3;
}

Ничего не меняется

Ну и самое интересное при

class "sw170-4"
{
match if suffix(option agent.remote-id,6)=00:17:9A:BB:77:C7 and suffix(option agent.circuit-id, 1)=4;
}

в dhcp.log сыпется циклически

 

Sep 15 06:23:11 router dhcpd: DHCPDISCOVER from e8:11:32:c6:9c:d7 via 10.0.0.250
Sep 15 06:23:11 router dhcpd: DHCPDISCOVER from e8:11:32:c6:9c:d7 via 10.0.0.250
Sep 15 06:23:11 router dhcpd: DHCPOFFER on 10.0.0.104 to e8:11:32:c6:9c:d7 (Hostname Unsuitable for Printing) via 10.0.0.250
Sep 15 06:23:11 router dhcpd: DHCPOFFER on 10.0.0.104 to e8:11:32:c6:9c:d7 (Hostname Unsuitable for Printing) via 10.0.0.250
Sep 15 06:23:11 router dhcpd: DHCPREQUEST for 10.0.0.104 (10.0.0.1) from e8:11:32:c6:9c:d7 via em1: lease 10.0.0.104 unavailable
Sep 15 06:23:11 router dhcpd: DHCPREQUEST for 10.0.0.104 (10.0.0.1) from e8:11:32:c6:9c:d7 via em1: lease 10.0.0.104 unavailable 
Sep 15 06:23:11 router dhcpd: DHCPNAK on 10.0.0.104 to e8:11:32:c6:9c:d7 via em1
Sep 15 06:23:11 router dhcpd: DHCPNAK on 10.0.0.104 to e8:11:32:c6:9c:d7 via em1
Sep 15 06:23:11 router dhcpd: Lease IP 10.0.0.104 MAC e8:11:32:c6:9c:d7 port 4 VLAN 1
Sep 15 06:23:11 router dhcpd: Lease IP 10.0.0.104 MAC e8:11:32:c6:9c:d7 port 4 VLAN 1
Sep 15 06:23:11 router dhcpd: DHCPREQUEST for 10.0.0.104 (10.0.0.1) from e8:11:32:c6:9c:d7 (Hostname Unsuitable for Printing) via 10.0.0.250
Sep 15 06:23:11 router dhcpd: DHCPREQUEST for 10.0.0.104 (10.0.0.1) from e8:11:32:c6:9c:d7 (Hostname Unsuitable for Printing) via 10.0.0.250
Sep 15 06:23:11 router dhcpd: DHCPACK on 10.0.0.104 to e8:11:32:c6:9c:d7 (Hostname Unsuitable for Printing) via 10.0.0.250
Sep 15 06:23:11 router dhcpd: DHCPACK on 10.0.0.104 to e8:11:32:c6:9c:d7 (Hostname Unsuitable for Printing) via 10.0.0.250
Sep 15 06:23:11 router dhcpd: DHCPDISCOVER from e8:11:32:c6:9c:d7 via em1: network test: no free leases
Sep 15 06:23:11 router dhcpd: DHCPDISCOVER from e8:11:32:c6:9c:d7 via em1: network test: no free leases

Причем лог может разнести до нереальных размеров буквально за 5 минут

Link to post
Share on other sites

кстати срабатывает и с

 

class "sw170-6" {
match if binary-to-ascii(16, 8, ":", suffix(option agent.remote-id, 5)) = "17:9a:bb:77:c7" and binary-to-ascii(10, 8, "", suffix(option agent.circuit-id, 1)) = "6";
}

Но в логах все тоже что в последний раз. кстати непонятно почему все запросы по 2 шт?

Link to post
Share on other sites

Блин и кого только берут на УЗ работать носом уже ткнули.

P.S. Теперь не удивляюсь что пришел к жене на работу потестил скорость и в осадок выпал довнлоад 512 аплоад не ограничен)

P.S.2 Изучайте матчасть а не тупо конфиги копируйте.

P.S.3 Нужно с опцией USE_SOCKETS собирать.

Link to post
Share on other sites

про USE_SOCKETS догадывался, но не догнал до конца. как это сделать на фряхе я хз, опыта работы с ней часа 3...

Кто-то подскажет?

Link to post
Share on other sites

Вроде в 4.1 должно и так работать !НО глянул сорцы и подумал лучше руками все сделать надежней будет. site.h

Как поставить порту ручками и вообще для самообразования изучаем http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/

Далее распечатываете свой конфиг и возле каждой директивы пишете для чего она и что означает.

 

Совет если не знаете что это то и не делайте честно скажите не знаю.

Link to post
Share on other sites

С самим конфигом в принципе все понятно. На счет USE_SOCKETS я как бы тоже читал что в 4.1 уже по дефолту включено.

Не могу понять почему всех записей в логе по 2 шт?

Link to post
Share on other sites

cat /usr/local/etc/dhcpd.conf

local-address	 172.16.0.1;
default-lease-time 1800;
max-lease-time 7200;
authoritative;
ddns-update-style none;
one-lease-per-client true;
log-facility local7;
include "/usr/local/etc/dhcp/sdfa_class.conf";
include "/usr/local/etc/dhcp/sdfb_class.conf";
if exists agent.circuit-id
{
log ( info, concat( " Lease for ", binary-to-ascii (10, 8, ".", leased-address),
			 " Switch port: ",
				 binary-to-ascii (10, 8, ".", option agent.circuit-id),
				 " Switch MAC: ",
				 binary-to-ascii(16, 8, ".", option agent.remote-id)));
}
include "/usr/local/etc/dhcp/sdfa_dhcpd.conf";
include "/usr/local/etc/dhcp/sdfb_dhcpd.conf";

 

cat /usr/local/etc/dhcp/sdfa_dhcpd.conf

shared-network sharedname {
subnet 10.90.200.0 netmask 255.255.255.0 {
}
subnet 192.168.16.0 netmask 255.255.255.0 {
option routers 192.168.16.1;
option domain-name-servers 10.90.200.5,172.16.12.8;
pool { range 192.168.16.56;allow members of "port-6_106";}
pool { range 192.168.16.52;allow members of "port-2_106";}
pool { range 192.168.16.54;allow members of "port-4_106";}
pool { range 192.168.16.53;allow members of "port-3_106";}
pool { range 192.168.16.55;allow members of "port-5_106";}
pool { range 192.168.16.59;allow members of "port-8_106";}
pool { range 192.168.16.60;allow members of "port-9_106";}
pool { range 192.168.16.57;allow members of "port-7_106";}
pool { range 192.168.16.41;allow members of "port-10_106";}
pool { range 192.168.16.44;allow members of "port-11_106";}
pool { range 192.168.16.45;allow members of "port-12_106";}
pool { range 192.168.16.46;allow members of "port-13_106";}
pool { range 192.168.16.48;allow members of "port-15_106";}
pool { range 192.168.16.61;allow members of "port-16_106";}
pool { range 192.168.16.43;allow members of "port-17_106";}
pool { range 192.168.16.58;allow members of "port-18_106";}
}

cat /usr/local/etc/dhcp/sdfa_class.conf

class "port-2_106"
{ match if suffix(option agent.circuit-id,1)=2
 and suffix(option agent.remote-id,6)=00:c5:01:fd:71:0b;}
class "port-3_106"
{ match if suffix(option agent.circuit-id,1)=3
 and suffix(option agent.remote-id,6)=00:c5:01:fd:71:0b;}
class "port-4_106"
{ match if suffix(option agent.circuit-id,1)=4
 and suffix(option agent.remote-id,6)=00:c5:01:fd:71:0b;}
class "port-5_106"
{ match if suffix(option agent.circuit-id,1)=5
 and suffix(option agent.remote-id,6)=00:c5:01:fd:71:0b;}
class "port-6_106"
{ match if suffix(option agent.circuit-id,1)=6
 and suffix(option agent.remote-id,6)=00:c5:01:fd:71:0b;}
class "port-7_106"
{ match if suffix(option agent.circuit-id,1)=7
 and suffix(option agent.remote-id,6)=00:c5:01:fd:71:0b;}
class "port-8_106"
{ match if suffix(option agent.circuit-id,1)=8
 and suffix(option agent.remote-id,6)=00:c5:01:fd:71:0b;}
class "port-9_106"
{ match if suffix(option agent.circuit-id,1)=9
 and suffix(option agent.remote-id,6)=00:c5:01:fd:71:0b;}
class "port-10_106"
{ match if suffix(option agent.circuit-id,1)=a
 and suffix(option agent.remote-id,6)=00:c5:01:fd:71:0b;}
class "port-11_106"
{ match if suffix(option agent.circuit-id,1)=b
 and suffix(option agent.remote-id,6)=00:c5:01:fd:71:0b;}
class "port-12_106"
{ match if suffix(option agent.circuit-id,1)=c
 and suffix(option agent.remote-id,6)=00:c5:01:fd:71:0b;}
class "port-13_106"
{ match if suffix(option agent.circuit-id,1)=d
 and suffix(option agent.remote-id,6)=00:c5:01:fd:71:0b;}
class "port-15_106"
{ match if suffix(option agent.circuit-id,1)=f
 and suffix(option agent.remote-id,6)=00:c5:01:fd:71:0b;}
class "port-16_106"
{ match if suffix(option agent.circuit-id,1)=10
 and suffix(option agent.remote-id,6)=00:c5:01:fd:71:0b;}	
class "port-17_106"
{ match if suffix(option agent.circuit-id,1)=11
 and suffix(option agent.remote-id,6)=00:c5:01:fd:71:0b;}	
class "port-18_106"
{ match if suffix(option agent.circuit-id,1)=12
 and suffix(option agent.remote-id,6)=00:c5:01:fd:71:0b;}

 

00:c5:01:fd:71:0b = mac комутотора

порты ! в hex = конфиг генерится скриптом с ось хорошо понимает hex поэтому переводить в dec как бы смысла нет.

 

для тестов

cd /usr/ports/net/ dhcpdump/ && make install clean

 

dhcpdump -i igb0

 

и смотрим что и как.

пересобрать порт

 

сd usr/ports/net/isc-dhcp41-server

make deinstall

make clean

make config

выбираем опции

make

make install

make clean

 

можно и исходник поправить....

Link to post
Share on other sites

Про порты в hex понял, эксперементировал на портах до 10, так что там не имеет значения hex или dec

Ставил DHCPdump

запускаю dhcpdump -i em1

втыкаю клиента в порт коммутатора и запросы начинают сыпаться с бешеной скоростью.

Попробую порт что ли пересобрать

Link to post
Share on other sites

дело в том что днцпдамп иногда глючит (в порту все таки написано экспериментально) - попробуйте сменить порт на коммутаторе

вы уведите нормальные запросы и ответы сервера .

Link to post
Share on other sites

Зачем грызть кактус? :facepalm: Есть нормальные dhcp сервера специально для Option 82.

ввиде нормального админа?

Link to post
Share on other sites

На наге есть два DHCP сервера. Скелет (без логики, свою логику надо дописывать) от Ivan_83 и готовый (ставь и пользуйся) мой.

Написаны специально, чтобы избежать костылей с isc dhcpd.

Link to post
Share on other sites

В описании пулов между ";" и "}" пропущен пробел. Порасставляй пробелы и будет тебе счастье.

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
  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...