Dhcp

具有更多匹配的 isc dhcp 類

  • September 11, 2020

有沒有辦法用 OR 定義更多匹配?

我想創建一個帶有mac地址檢查的類,比如

class "fixVms" {
match if substring (hardware, 1, 4) = 00:15:5d:aa;
}

但我想給它添加另一個mac,比如

subclass "fixVms" 1:00:15:5d:bb:00:00;

我試圖添加

match pick-first-value (option dhcp-client-identifier, hardware);

到班級機構,但它沒有用。這兩件事分開工作。

我自己無法對其進行測試,而且 DHCPD.conf 手冊頁也不是很好,但您可以嘗試以下方法:

match if ( substring(hardware,1,3) = 00:01:e6 ) or
        ( substring(hardware,1,3) = 00:60:b0 ) or
        ( substring(hardware,1,3) = 00:10:83 );

這來自以下郵件列表消息

http://marc.info/?l=dhcp-server&m=102521117221954&w=2

在類聲明中,“match if”和“match”語句將連接為 AND(交集),因此類可以重寫為:

class "fixVms" {
 match if substring(hardware, 1, 4) = 00:15:5d:aa or substring(hardware, 1, 6) = 00:15:5d:bb:00:00;
}

如果需要 mac 前綴 00:15:5d:aa 和 00:15:5d:bb 的靜態 mac 列表:

class "fixVms" {
 match if substring(hardware, 1, 4) = 00:15:5d:aa or substring(hardware, 1, 4) = 00:15:5d:bb;
 match hardware;
}

subclass "fixVms" 1:00:15:5d:aa:00:00;
subclass "fixVms" 1:00:15:5d:aa:01:01;
subclass "fixVms" 1:00:15:5d:bb:00:00;
subclass "fixVms" 1:00:15:5d:bb:0a:0a;
.  .  .

在這種情況下,如果 mac 與前綴匹配並且如果使用此 mac 聲明子類,則客戶端屬於類。

引用自:https://serverfault.com/questions/845978