Прошил присланной 1.06-b05. Описываю ситуацию с подключением пользователя:
Поскольку пользователь еще "не подключен", видим его мак на порту как BlockByAddrBind:
Код:
VID VLAN Name MAC Address Port Type
---- -------------------------------- ----------------- ---- ---------------
18 x8 00-14-85-2A-F4-FF 23 BlockByAddrBind
18 x8 00-19-5B-00-F3-9E 23 Dynamic
Прописываем в DHCP конфиге
Код:
host user91 {hardware ethernet 00:14:85:2a:f4:ff; fixed-address 172.16.109.91;}
Делаем привязку на порту
Код:
DES-3028:4#cr add i i 172.16.109.91 m 00-14-85-2A-F4-FF p 23
Command: create address_binding ip_mac ipaddress 172.16.109.91 mac_address 00-14-85-2A-F4-FF ports 23
Success.
Смотрим маки на порту
Код:
DES-3028:4#sh fdb p 23
Command: show fdb port 23
VID VLAN Name MAC Address Port Type
---- -------------------------------- ----------------- ---- ---------------
18 x8 00-19-5B-00-F3-9E 23 Dynamic
Total Entries : 1
Видим что этот мак уже не BlockByAddrBind. Клиент запрашивает настройки и мы видим его запросы на сервере
Код:
tcpdump -n -i eth0.18 udp port 67 or udp port 68
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on eth0.18, link-type EN10MB (Ethernet), capture size 96 bytes
14:08:13.192449 IP 0.0.0.0.68 > 255.255.255.255.67: BOOTP/DHCP, Request from 00:14:85:2a:f4:ff, length: 312
14:08:13.192774 IP 172.16.108.2.67 > 172.16.109.91.68: BOOTP/DHCP, Reply, length: 331
14:08:17.178040 IP 0.0.0.0.68 > 255.255.255.255.67: BOOTP/DHCP, Request from 00:14:85:2a:f4:ff, length: 312
14:08:17.178563 IP 172.16.108.2.67 > 172.16.109.91.68: BOOTP/DHCP, Reply, length: 331
14:08:25.177403 IP 0.0.0.0.68 > 255.255.255.255.67: BOOTP/DHCP, Request from 00:14:85:2a:f4:ff, length: 312
14:08:25.177708 IP 172.16.108.2.67 > 172.16.109.91.68: BOOTP/DHCP, Reply, length: 331
14:08:42.176404 IP 0.0.0.0.68 > 255.255.255.255.67: BOOTP/DHCP, Request from 00:14:85:2a:f4:ff, length: 312
14:08:42.176713 IP 172.16.108.2.67 > 172.16.109.91.68: BOOTP/DHCP, Reply, length: 331
Но клиент адресс не получает. В логах свтча видим:
Код:
DES-3028:4#sh log
Command: show log
Index Data Time Log Text
----- ---------- -------- ------------------------------------------------------
93 0000-00-00 04:32:47 Unauthenticated IP-MAC address and discarded by ip mac
port binding (IP: 169.254.140.99, MAC: 00-14-85-2A-F4
-FF, Port: 23)
......
Смотрим снова маки на порту и видим наш мак как BlockByAddrBind:
Код:
DES-3028:4#sh fdb p 23
Command: show fdb port 23
VID VLAN Name MAC Address Port Type
---- -------------------------------- ----------------- ---- ---------------
18 x8 00-14-85-2A-F4-FF 23 BlockByAddrBind
18 x8 00-19-5B-00-F3-9E 23 Dynamic
Делаем "финт ушами":
Код:
DES-3028:4#delete address_binding blocked vlan_name x8 mac_address 00-14-85-2A-F4-FF
Command: delete address_binding blocked vlan_name x8 mac_address 00-14-85-2A-F4-FF
Success.
Клиент повторно запрашивет настройки и ... он их получает
Код:
DES-3028:4#sh fdb p 23
Command: show fdb port 23
VID VLAN Name MAC Address Port Type
---- -------------------------------- ----------------- ---- ---------------
18 x8 00-14-85-2A-F4-FF 23 Dynamic
18 x8 00-19-5B-00-F3-9E 23 Dynamic
На прошивке 1.05-B03 то же самое. Итак: если клиент получает настройки по DHCP и по какой либо причине его MAC становится BlockByAddrBind, то больше правильные настройки он по DHCP не получит. При этом, если прописать клиенту правильную связку IP-MAC вручную, он получит доступ к сети.