Во время, когда полмира сидит за NAT-ом, никак.
Частный случай - сделайте составной уникальный индекс
--
IntegerField - жирновато будет. SmallInt/ TinyInt
Попробуйте вместе с ip еще nginx user_id использовать либо какой отпечаток браузера (первая строка из гугл
look-in.net/2012/08/19/browser-fingerprint)