La sintassi di ipchains è improntata all'aggiunta, cancellazione, manipolazione di catene aggiuntive così come di singole regole all'interno delle catene stesse. A differenza del suo predecessore ipfwadm, ipchains gestisce in modo flessibile le regole gestendo costrutti quali la negazione il riconoscimento delle porte TCP utilizzate tramite il riferimento al protocollo comunemente attestatovi.
Le regole permettono di discriminare sui parametri del pacchetto comprendenti IP e porta TCP sorgente, IP e porta TCP destinazione, interfaccia di rete su cui il pacchetto è arrivato. Allo scopo di eliminare certi tipi di connessione il ipchains può eliminare del tutto qualsiasi pacchetto destinato a tale connessione oppure può semplicemente eliminare il primo pacchetto inviato (un segnale di SYN). Questo rende comunque impossibile la connessione vera e propria per cui raggiunge lo scopo con il minimo sforzo. Per proteggere gli host da eventuali malformazioni dei pacchetti è presente il controllo di validità ma un attacante esperto potrebbe aggirare l'ostacolo segmentando le informazioni su più pacchetti. Il firewall agisce solo sul primo segmento che contiene i dati dell'intera ricostruzione mentre lascia passare gli altri. Per evitare l'eventualità di problemi su tali ``segmenti vaganti'' è possibile imporre al firewall la ricostruzione integrale dei dati intransito prima dell'inizio del processo di filtraggio. Per garantire la massima sicurezza le connessioni FTP attive sono negate e solo l'installazione di una apposita patch può aggirare tale funzionalità.
Durante l'esame del pacchetto è possibile ridefinire alcuni parametri come i bit del ``Type of service''. Tali bit dovrebbero essere letti da tutti i router in modo da privilegiare nel modo più opportuno alcuni tipi di pacchetti appartenenti a servizi critici. Ad esempio è teoricamente possibile massimizzare la velocità di consegna di un pacchetto telnet o incrementare il flusso dati di una connessione ftp. Purtroppo l'instradamento dei dati su Internet è gestito da una tale quantità di hardware e software eterogeneo che l'utilizzo effettivo dei bit di ``type of service'' non è certo garantito.
Come detto in precedenza una delle funzionalità più comuni delegate al firewall è il NAT. Tale sistema permette ai computer di una intranet di presentarsi in rete tramite l'indirizzo IP del firewall che fa le richieste in loro vece. Tale sistema è quindi intrinsecamente sicuro poichè in primo luogo nasconde al mondo l'esistenza dell'intera intranet ed in secondo luogo protegge la stessa esponendosi agli attacchi -essendo comunque opportunamente pensato per resistervi-. Se i computer interni devono essere in qualche modo visibli al mondo il firewall può ridirigere le connessioni alle proprie porte TCP verso le porte TCP di un host specifico interno alla intranet. Tale sistema è definito PAT (Port Address Translation) ed è particolarmente utile per mantenere ad esempio server di posta o news presso macchine locali senza caricare ulteriormente il firewall. Per garantire un'ulteriore grado di sicurezza le macchine parzialmente visibili alla rete possono essere collocate su una LAN -demilitarizzata o DMZ- a bassa sicurezza e quindi opportunamente isolata.
Per proteggersi dagli attacchi ``spoofing'' non interviene il firewall ma è lo stesso motore di routing di linux ad implementare, nelle release più recenti l'opzione per rifiutare pacchetti originati da IP non appartenenti alla rete dalla quale sono arrivati. Nelle versioni precedenti le regole dovevano essere specificate al firewall per ogni interfaccia.
Si noti che il firewall, allo shutdown ed alla partenza del sistema, non salva ne recupera la configurazione impostata. Per mantenere la configurazione tra un arresto e l'altro è necessario inserire all'interno degli script di avvio le regole di filtraggio. Questo però deve essere fatto prima che i servizi di rete siano caricati in modo che in nessun istante il computer sia vulnerabile.