usare i cookie non è sicurissimo, anche perchè si possono cancellare e si può far in modo di non accettarli neanche...
lo stesso vale per l'IP: la maggior parte delle persone hanno ip variabili che gli vengono assegnati al momento della connessione (e sono associati a quel pc solo per quella connessione)
ance le sessioni hanno vari problemi, è possibile ad esempio che chiudendo il browser e/o la connessione, vadano a farsi benedire consentendo quindi una ulteriore votazione
se proprio vuoi essere sicuro IO opterei per i cookie prevedendo un meccanismo che impedisca il voto a chi non li accetta (anche se non è sicurissimo lo stesso perchè si possono sempre cancellare, ma senza login non penso si possa pretendere molto di +)