Ubuntu DHCP 서버의 DHCP 풀이 제대로 작동하지 않습니다.

Ubuntu DHCP 서버의 DHCP 풀이 제대로 작동하지 않습니다.

"55:a3" 및 "56:2a"로 끝나는 Mac 주소도 마지막 풀에 포함됩니다.

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 }   

누구든지 해당 구성에서 오류를 지적할 수 있습니까?

답변1

문제는 필터 사용에 있습니다 hardware.

설명서에는 다음과 같이 명시되어 있습니다.

하드웨어 연산자는 데이터 문자열을 반환합니다.첫 번째 요소는 고려 중인 패킷에 표시된 네트워크 인터페이스 유형이고 후속 요소는 클라이언트의 링크 계층 주소입니다.. 패킷이 없거나 RFC2131 hlen 필드가 유효하지 않은 경우 결과는 null입니다. 하드웨어 유형에는 이더넷(1), 토큰 링(6) 및 fddi(8)가 포함됩니다. 하드웨어 유형은 IETF에 의해 지정되며 유형 번호가 정의되는 방법에 대한 자세한 내용은 RFC2131(ISC DHCP 배포판에서는 doc/ 하위 디렉터리에 포함되어 있음)에서 찾을 수 있습니다.

즉, hardware, 5, 6예상한 것처럼 MAC 주소의 5번째와 6번째 옥텟을 반환하지 않고, 첫 번째 요소가 유형(이더넷이므로 0x01)이 되기 때문에 4번째와 5번째 옥텟을 반환합니다.

관련 정보