ehm... che c'entra l'indirizzo ip?
- l'utente si logga e ti segni da qualche parte che l'utente X ha usato il sito alla data/ora Y
- l'utente usa il sistema... ogni volta che usa il sistema aggiorni la data/ora che sarà quindi Y+n_secondi
- ogni volta che l'utente usa il sistema, controlli che (Y+n) < Y+T, dove T sono i secondi di timeout entro i quali la sessione è considerata valida... se Y+n > Y+T, consideri la sessione scaduta e fai le procedure che ritieni opportune...
ad aggiungere, puoi controllare che l'utente operi sempre dallo stesso IP, se l'IP cambia consideri la sessione scaduta e lo rimandi alla login
l'indirizzo IP consideralo come "sempre valido", perchè non puoi sapere se l'ip dell'utente X è valido o meno, anche perchè puoi avere N utenti che usano lo stesso indirizzo IP (vedi utenti dietro nat come utenti aziendali, utenti fastweb, etc...)