Diferenciar conexión red local y remota

Soltrac

Veamos...

Estoy terminando una aplicación y estoy liado de lleno en la parte de licencias. La parte más importante es que debo poder limitar si las conexiones que recibe son en red local o por internet por tema de q una es más cara q otra.

La aplicación está desarrollada en .NET y puedo obtener la IP con la q se me conecta el cliente al servidor.

¿Sería capaz de saber si lo está haciendo por internet o por red local?

Voy a decir hasta ahora lo q he pensado. Las principales formas que tiene el usuario final de intentar timarme son VPNs y que el rango de IPs locales sea "parecido" (muy entre comillas) al que pertenece el cliente por internet. Con un ejemplo, si el cliente tiene una ip externa q sea 98.12.123.12, q mi red local esté por ejemplo en 98.12.123.X.

Suponiendo q soy capaz de analizar todas mis interfaces de red (que en .NET se puede), sería interesante si alguien pudiera proporcionarme de estrategias, algoritmos, etc. para poder controlar esto.

Gracias!

r2d2rigo

Podrias hacer un tracert, examinar los resultados, y ver si hay saltos que salen de la red local.

Soltrac

#2 Lo pensé aunque los tracert son lentillos. Voy a mirar librerias open source de tracerts y ponerles maxhops bajos para ver q tal.

Gracias!

maRc

#3, hombre, el comprobar la licencia no es algo que sea muy rápido en muchos programas.

También es verdad que cuanto más rápido sea, mejor para el usuario y por tanto, para ti.

Usuarios habituales

  • maRc
  • Soltrac
  • r2d2rigo