Potresti provare a configurare un firewall di livello 2 tramite IPTables ma non vedo un'implementazione semplice. Forse ti piacerebbe dare un'occhiata a ARPTables: link
Se vuoi rilevare (non impedire!) attacchi di spoofing ARP puoi usare diversi strumenti, ad esempio ARPWatch. Questo strumento invia messaggi a syslog in modo da poter monitorare le modifiche sulla tua tabella ARP. link
C'è anche uno strumento attivo che impedisce gli attacchi di spoofing ARP su diversi scenari (DCHP, statico, ecc.) anche se richiede un "agente"
in ogni host che potrebbe non essere l'ideale a seconda delle esigenze:
link
In ogni caso, e dato il tuo scenario (presumo una piccola rete domestica) un'altra soluzione rapida potrebbe essere quella di impostare manualmente la tabella ARP del tuo host. Per fare ciò puoi usare il comando (nota che dopo il riavvio le modifiche andranno perse):
arp -s [IP address] [MAC address]
In questo modo, comunichi al kernel host di associare un IP a un MAC e altre richieste che tenteranno di sovrascrivere questo valore verranno ignorate.
Per un modo più elaborato di fare ciò, si può fare uno script che aggiunge un elenco di tutti gli IP-MAC all'interno della rete di cui si ha fiducia ed eseguirlo all'avvio, evitando possibili problemi di rete già falsificati.
Questo ha un limite se si dispone di un host che si sposta dalla rete a un'altra (cellulare o laptop) a meno che lo script non rilevi la rete esatta a cui si è connessi e disponga di più elenchi di IP-MAC attendibile. Questa soluzione però è altamente statica e difficile da mantenere in ambienti grandi / dinamici.