Você pode forçar todos a se conectarem por meio de uma VPN com autenticação de usuário, se quiserem acessar a Internet. O OpenVPN pode ser executado em praticamente todas as plataformas e você pode configurá-lo para que os usuários tenham para entrar com um nome de usuário / senha . Você poderia então configurar dinamicamente filtros com base no usuário que efetuou login.
Por exemplo, você poderia ter um daemon monitorando os logs do OpenVPN, e sempre que alguém se conectasse, ele modificaria os filtros para o seu endereço IP (também mostrado nos logs).