Здравствуйте, столкнулся с такой проблемой, есть freebsd c isc-dhcp 3.1.3.
клиент подключен в d-link des-3526(в примере адрес 10.250.100.98) во второй порт с такой настройкой:
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 192.168.0.254
Настройка dhcpd.conf:
subnet 192.168.0.0 netmask 255.255.255.0 {
option routers 192.168.0.253;
class "port2"
{
match if (option agent.circuit-id ="0:04:01:f4:0:02") and (binary-to-ascii (16, 8, ":", suffix ( option agent.remote-id, 6)) = "0:06:0:13:46:99:2d:fd");
}
pool {
range 192.168.0.249;
allow members of "port2";
}
}
Адрес не выдается.
dhcpdump показывает:
TIME: 2011-03-05 08:42:26.326
IP: 10.250.100.98 (00:14:f6:8a:ac:db) > 192.168.0.254 (00:11:11:88:78:c9)
OP: 1 (BOOTPREQUEST)
HTYPE: 1 (Ethernet)
HLEN: 6
HOPS: 1
XID: 620a840d
SECS: 2816
FLAGS: 0
CIADDR: 0.0.0.0
YIADDR: 0.0.0.0
SIADDR: 0.0.0.0
GIADDR: 10.250.100.98
CHADDR: 00:26:9e:59:39:e9:00:00:00:00:00:00:00:00:00:00
SNAME: .
FNAME: .
OPTION: 53 ( 1) DHCP message type 1 (DHCPDISCOVER)
OPTION: 116 ( 1) DHCP Autoconfiguration 01 .
OPTION: 61 ( 7) Client-identifier 01:00:26:9e:59:39:e9
OPTION: 12 ( 4) Host name cr1m
OPTION: 60 (

Vendor class identifier MSFT 5.0
OPTION: 55 ( 11) Parameter Request List 1 (Subnet mask)
15 (Domainname)
3 (Routers)
6 (DNS server)
44 (NetBIOS name server)
46 (NetBIOS node type)
47 (NetBIOS scope)
31 (Perform router discovery)
33 (Static route)
249 (MSFT - Classless route)
43 (Vendor specific info)
OPTION: 82 ( 18) Relay Agent Information
Circuit-ID 00:04:01:f4:00:02 <unknown-0> 02:08 Remote-ID 00:06:00:13:46:99:2d:fd
Может подскажите что не так делаю , думаю Circuit-ID и Remote-ID в dhcpd.conf не верны?
Если настраиваю без option 82, то на мак-адрес dhcp ip выдает нормально.
Если поймать tshark'ом dhcp-request, который приходит от коммутатора
des-3526, смотрю поле, относящееся к option82:
Option: (t=82,l=18) Agent Information Option
Option: (82) Agent Information Option
Length: 18
Value: 0106000401F4000202080006001346992DFD
Agent Circuit ID: 000401F40002
Agent Remote ID: 0006001346992DFD
End Option
видно, что значение Value: 0106000401F4000202080006001346992DFD
складывется из Agent Circuit ID: 000401F40002 и Agent Remote ID:
0006001346992DFD, но между ними добавляет 2 значения 0208, на которые и
ругается сервер. Непонятно что это за значение и как от него избавиться или под него подстроить dhcpd.conf