<p>Alternativement à la solution de <span class="mention">@Chopper3</span>, vous pouvez ajouter des règles <code>iptables</code> comme celles-ci :</p>
<pre><code class="lang-auto"># Create the DHCP_clients chain in the 'raw' table
iptables -t raw -N DHCP_clients
Incoming DHCP, pass to chain processing DHCP
iptables -t raw -A PREROUTING -p udp --dport 67 -j DHCP_clients
Allowed DHCP clients
iptables -t raw -A DHCP_clients -m mac --mac-source 00:11:22:33:44:55 -j ACCEPT
iptables -t raw -A DHCP_clients -m mac --mac-source 00:11:22:33:44:56 -j ACCEPT
iptables -t raw -A DHCP_clients -m mac --mac-source 00:11:22:33:44:57 -j ACCEPT
Deny other clients not listed above
iptables -t raw -A DHCP_clients -j DROP
</code></pre>
<p><em><strong>Modification :</strong></em> Si vous devez ajouter des clients supplémentaires ‘connus’/autorisés, procédez comme suit pour chaque client supplémentaire :</p>
<pre><code class="lang-auto"># We insert a rule at the head of the chain using the '-I' command
iptables -t raw -I DHCP_clients -m mac --mac-source $CLIENT_MAC -j ACCEPT
</code></pre>
<p>(Remarque : on utilise <code>-I</code> (insertion) au lieu de <code>-A</code> (ajout), de sorte que la nouvelle règle sera la première vérifiée. Si nous n’insérons pas, les règles ajoutées seront supplantées par la règle avec <code>-j DROP</code>)</p>