Agregar informe: Dirección IP duplicada

Is it possible for a report to be added under DASHBOARD > REPORTS, to list accounts that share the same IP address?

Or, if the processing is too heavy to do large forums, the report could potentially be capped eg: checks all new accounts from the last 3mths.

Discourse identifies such duplicates when looking up a specific user, but it would be useful to see this information across all users. Currently I have no tool to identify this, other than checking individual users one at a time.

I realise that a shared IP doesn’t always mean it’s the same person and that some IP addresses are shared by multiple users on a network, but it would still be very useful.

Possible?

5 Me gusta

You can do a query with data explorer plugin to find users with same ip.

There may be an example in What cool data explorer queries have you come up with?.

5 Me gusta

Thanks Jay. We don’t have the data explorer plugin on our hosted instance.

¿Existe alguna posibilidad de que esto se agregue a los informes estándar del panel de control de Discourse, sin necesidad del complemento de explorador de datos?

Esta función sería útil para la mayoría del personal de los foros de Discourse, ya que los usuarios con varias cuentas son una experiencia bastante común en los foros. Para mí, sería más útil de forma regular que la mayoría de los informes existentes del panel de control.

Pregúntate: ¿cuál es el número máximo de direcciones IP diferentes?

Creo que sería relativamente económico ejecutar count(ips) frente a count(distinct(ips)) para tener una idea general de cuántas cuentas han utilizado direcciones IP que también han sido usadas por otras cuentas.

Sería más costoso realizar una búsqueda “bajo demanda” de direcciones IP específicas.

Dependiendo de la cantidad de cuentas e IPs que tenga un foro, encontrar todas las IPs no distintas podría resultar extremadamente costoso. Si mis cálculos son aproximadamente correctos, la fórmula para determinar cuántas verificaciones serían necesarias sería algo como:
(n*(n+1)/2)-n

donde n es el número total de IPs.

* Por ejemplo, para 100, son 4950; para 1000, son 499500. Me entiendes.

3 Me gusta

No sé qué implicaría esto en términos de recursos del sistema, pero sería útil recibir un Mensaje de Moderador y/o generar un informe que permita obtener una lista de direcciones IP asociadas a más de un miembro, ya sea mediante el registro o la última IP.

Actualmente, la única forma de detectar IPs duplicadas (lo cual no necesariamente significa que un mismo miembro tenga varias cuentas) es verificar manualmente. Esto significa que solo nos enteramos cuando alguien está causando problemas.

Y lo que puede ocurrir (muy raramente, pero podría ser un problema recurrente con un troll motivado) es que una persona cree una serie de cuentas que “nivelan” para poder publicar, pero que de lo contrario mantiene inactivas. Es muy difícil y laborioso hacerlo con la disciplina suficiente para usar VPNs y mantener las IPs separadas. Por lo tanto, en algún momento del proceso de nivelación de una cuenta en el Nivel de Confianza, el troll suele cometer un error e iniciar sesión con una IP “real”. Si los moderadores pueden ser alertados cuando esto ocurre, o si esto aparece en algún informe que un grupo de moderadores pueda consultar periódicamente, sería de gran ayuda para prevenir que un troll utilice varias cuentas fantasma inactivas para causar una gran perturbación.

Pero ¿quizás esto exigiría demasiados recursos del sistema?

2 Me gusta

Siempre hay más de una forma de crear una aplicación, pero puedo compartir mi experiencia.

  • Adquirí un conjunto de datos que incluía direcciones IP asociadas a un foro de Discourse (~250K cuentas).
  • Escribí código en PHP (*nota, no Ruby) para analizar archivos CSV e insertar los datos en una base de datos MySQL (*nota, no PostgreSQL).
  • Descargué la base de datos de geolocalización de MaxMind, que ya está obsoleta.
  • Escribí código para realizar conversiones entre matrices INET y números, e inserté los valores en la base de datos.
  • Relacioné las direcciones IP individuales de Discourse con las ubicaciones correspondientes de MaxMind (incluso con cantidades limitadas, por ejemplo, 10K cuentas, este paso podía tardar más de dos horas en ejecutarse: una consulta de rango costosa).

Una vez que tuve los datos “base”, solo necesitaba actualizar lo nuevo desde la última vez. Nunca tardó más de varios minutos ejecutar una actualización [semanal].

Una vez que tuve los datos que me interesaban, ejecutar consultas por ubicación no era lento.

1 me gusta

Gracias por esto… lo siento, no lo vi antes, y gracias, hasta ahora. Se lo pasaré a nuestro administrador y discutiremos si vale la pena el trabajo.

Tenemos varios miles de miembros y con bastante frecuencia hay personas que crean cuentas adicionales. A veces con intención maliciosa, a menudo sin ninguna intención maliciosa aparente. Raramente es un problema significativo.

Solo unas pocas veces al año, creo, prohibimos a alguien y luego crean cuentas adicionales para ser molestos. Hasta ahora, ha sido molesto de gestionar, pero no un gran problema. Y, hasta ahora, siempre han perdido la voluntad de dedicar tiempo a nosotros para mantener sus tonterías, y o bien desaparecen… o quizás crean una cuenta y realmente se mantienen en silencio, siguen las reglas y no causan problemas. En ese caso, no es realmente un problema.

1 me gusta