
Endereços Mac terminados em “55:a3” e “56:2a” também terminarão no último pool
123 match if binary-to-ascii(16,8,":",substring(hardware, 5, 6)) = "55:a3";
124 }
125
126 class "esx67" {
127 match if binary-to-ascii(16,8,":",substring(hardware, 5, 6)) = "56:2a";
128 }
129
130 shared-network 20-30 {
131 subnet 20.30.0.0 netmask 255.255.0.0 {
132 option domain-name "nsbucqesystem.test";
133 option domain-name-servers 20.30.0.1;
134 option routers 20.30.0.1;
135 default-lease-time 2592000;
136 max-lease-time 2592000;
137 ping-check true;
138 }
139 pool {
140 allow members of "esx65";
141 range 20.30.1.1 20.30.1.254;
142 }
143 pool {
144 allow members of "esx67";
145 range 20.30.2.1 20.30.2.254;
146 }
147 pool {
148 deny members of "esx67";
149 deny members of "esx65";
150 range 20.30.3.1 20.30.254.254;
151 }
152 }
Alguém pode apontar erro nessa configuração
Responder1
O problema está no uso do hardware
filtro.
A documentação afirma que:
O operador de hardware retorna uma string de dadoscujo primeiro elemento é o tipo de interface de rede indicada no pacote sendo considerado, e cujos elementos subsequentes são o endereço da camada de enlace do cliente. Se não houver pacote ou se o campo hlen RFC2131 for inválido, o resultado será nulo. Os tipos de hardware incluem ethernet (1), token-ring (6) e fddi (8). Os tipos de hardware são especificados pela IETF, e detalhes sobre como os números dos tipos são definidos podem ser encontrados em RFC2131 (na distribuição ISC DHCP, isso está incluído no subdiretório doc/).
Ou seja, hardware, 5, 6
não retorna o 5º e o 6º octeto do endereço MAC, como seria de esperar, mas sim o 4º e o 5º, pois o primeiro elemento será do tipo (0x01, pois é Ethernet).