diff --git a/package/dnsmasq/files/dnsmasq.init b/package/dnsmasq/files/dnsmasq.init
index 0c038b7d3101d529e8954b1304177b2a050bd56a..4f8ff9d0f870140cdbb5e14b4d9eb09c615b16fd 100644
--- a/package/dnsmasq/files/dnsmasq.init
+++ b/package/dnsmasq/files/dnsmasq.init
@@ -176,13 +176,18 @@ dhcp_host_add() {
 	config_get networkid "$cfg" networkid
 	[ -n "$networkid" ] && dhcp_option_add "$cfg" "$networkid"
 
-	config_get mac "$cfg" mac
-	[ -n "$mac" ] || return 0
+	config_get macs "$cfg" mac
+	[ -n "$macs" ] || return 0
 
 	config_get ip "$cfg" ip
 	[ -n "$ip" ] || return 0
 
-	append args "--dhcp-host=$mac,${networkid:+net:$networkid,}$ip${name:+,$name}"
+	macs=""
+	config_get mac "$cfg" mac
+	for m in $mac; do append macs "$m" ","; done
+	[ -n "$macs" ] || return 0
+
+	append args "--dhcp-host=$macs,${networkid:+net:$networkid,}$ip${name:+,$name}"
 }
 
 dhcp_mac_add() {