Theoretically this is possible by checking the requestheader. But it might not always work. The information may not always be meaningful due to network address translation (NAT). Depending on how clients connect to the internet, multiple clients may share the same IP address (that of a gateway computer). The IP address may also change over the course of several request. (This can strongly relate to the provider system or maintenance etc. etc.)
But it also does not eleminate the problem that you can't know if the machine isn't used by other persons.