[Router OS 7.8] DHCP Matcher

Hello

I need to send DHCP 43 Options to a dhcp server, but using Vendor Class ID to only send the option to the routers that match, but the type of router that i’m using does not send the VID to the server by default, i saw the changes in DHCP Matcher, and i’m wondering how can i use the matcher, since in the tests that i’ve done i had no sucess

DHCP Option 43 that the Router sends to the RouterBoard:
Vendor-Specific = 02-07-55-4E-4B-4E-4F-57-4E-04-0C-41-4C-43-4C-46-43-33-35-34-46-38-43-05-0C-33-46-45-34-39-32-33-36-42-44-41-41-06-0E-33-46-45-34-39-34-37-34-48-4A-49-4C-39-36-08-06-30

Has anyone had sucess in changing the pool that the device will use using the matcher? i tryed using the matcher with the HEX, and by plain text, no sucess.
DHCPmatcher01.png

I have the same issue on 7.9.1, where I cannot get the matcher to work with a vendor class string.

To be honest, the RouterOS DHCP server is a bit of a hot mess - the Matcher only allows you to assign DHCP options, but not changing the next-server or boot-filename options which is what I really need it for (passing a tftp server and preseed filename for debian-installer, and also passing server/filename to PXE clients only). The matcher does not allow for substring/regex matching, it’s expecting explicit values (as far as I can see from documentation). Additionally, you do not seem to be able to specify logical ANDs with the matcher… for example, if VID is X, and arch is Y, give A.. or if VID is X and arch is Z, give B.

So, for the moment, I’m restricted to staying with usage of isc-dhcp-server.

02-07-55-4E-4B-4E-4F-57-4E-04-0C-41-4C-43-4C-46-43-33-35-34-46-38-43-05-0C-33-46-45-34-39-32-33-36-42-44-41-41-06-0E-33-46-45-34-39-34-37-34-48-4A-49-4C-39-36-08-06-30

0x02 0x07 UNKNOWN
0x04 0x0C ALCLFC354F8C
0x05 0x0C 3FE49236BDAA
0x06 0x0E 3FE49474HJIL96
0x08 0x06 0

I am having the same problem with the Generic Matcher (ROS 7.17.2). I am trying us the hostname (code 12) to determine which pool to assign. Examples from years ago seemed to indicate that the pool could be assigned based on vendor class ID. Subsequently, the vendor class ID matcher was replaced with the Generic matcher.