Would be rather difficult. Aside for the username the only information you have is their IP, maybe through client end means information about the platform. Any attempt to restrict based on this would lead to users not being able to use multiple devices, cellular connections, non static IP's not to mention ability to travel across the country or globe and have access.
Multi million dollar media platforms face the same problem and how do they stop it? Generally they don't. Some of them have a product that can be limited like number of streams which negates the worry.
A plugin to detect the same account flip flopping between two ip geolocations could work to some extent. Except the accuracy of such will once again rain hell on mobile. My phone used to show up as 5 different states and none of them mine. So even if it were just one other state flip flopping between my phone and desktop would cause me to fall into trouble with you.