Por qué la etiqueta de país de una VPN no es la dirección desde la que sales
Un campo del listado, una dirección enrutada y la opinión de una aplicación pueden discrepar. Averigua cuál de los tres lees antes de calificar la salida de mal etiquetada.
Eliges un país, te conectas y un sitio web te recibe en otro. La etiqueta de la lista nunca prometió nada sobre la dirección desde la que saldrías: es un campo que alguien publicó, derivado por un método que no has visto. Tratar ese campo como una dirección es donde empieza la confusión.
Tres cosas distintas llevan un valor de país, y pueden discrepar sin que nadie mienta. Distinguirlas hace que la discrepancia sea diagnosticable en lugar de misteriosa.
Tres cosas distintas llevan una etiqueta de país
La primera es el campo propio del directorio, que puede ser declarado por el operador, deducido de una base de datos de direcciones o simplemente copiado al crear la entrada. La segunda es la dirección en sí, que pertenece a la red que la anuncia, y eso es lo que responde una consulta de geolocalización usando datos de mapeo publicados en la forma que describe el RFC 8805. La tercera es lo que una aplicación decide mostrar, que puede venir de otra base de datos, de un ajuste de cuenta o de un permiso que concediste en el dispositivo. Solo la segunda es un hecho de red, e incluso esa es una consulta, no una observación.
La coherencia entre esas tres sería agradable y no se exige en ningún sitio. Una discrepancia es evidencia de que se derivaron de forma distinta, nada más.
Comprueba la dirección, no la bandera
La pregunta útil es por qué dirección pública sale realmente tu tráfico. Eso se puede responder desde el cliente y no depende de ningún campo del listado. Compara la respuesta con el prefijo que esperabas y con lo que dice una consulta de geolocalización sobre ella, manteniendo los dos resultados separados en tus notas. Una diferencia entre el país esperado y la consulta es una cuestión de enrutamiento o de base de datos, mientras que una diferencia entre la consulta y la opinión de la aplicación vuelve a ser una cuestión de base de datos.
Haz la comprobación dos veces si el servicio tiene varias salidas en la región. Un grupo puede entregar direcciones distintas en conexiones sucesivas, y una muestra solo describe una de ellas.
La cercanía en un mapa no es cercanía en la red
Un país cercano puede ser un camino más largo que uno lejano, porque la ruta de fibra no sigue la frontera. Elegir un nodo por latencia significa medir el destino que te importa en lugar de escoger la bandera más cercana. La misma lógica se aplica a la capacidad, porque una salida poco cargada a dos países de distancia puede superar a una saturada al lado. Mide primero, decide después, y anota la hora porque ambos números se mueven.
La ubicación tampoco dice nada sobre la retención ni sobre quién opera el punto final. Eso necesita sus propias pruebas, que una columna de país no puede contener.
Confirma tú mismo la dirección de salida
Pregunta al cliente y a un servicio externo cómo se ve tu dirección, y luego pregunta a la tabla de enrutamiento local cómo se eligió esa ruta. Los comandos de abajo hacen las tres cosas, y la tercera es la que la gente se salta. Sustituye el nombre de la interfaz por tu propio dispositivo de túnel.
curl -sS https://api.ipify.org; echo
curl -sS --interface tun0 https://api.ipify.org; echo
ip route get 1.1.1.1
ip -6 addr show dev tun0
Las dos primeras líneas deberían coincidir, y cuando no lo hacen, la ruta que crees tener no es la ruta que lleva tu tráfico. La consulta de ruta nombra la interfaz y la dirección de origen que el núcleo usaría para un destino, y ese es el mecanismo que hay detrás de la dirección de salida. La línea IPv6 importa porque una máquina puede mantener un túnel para una familia y un camino directo para la otra. Una etiqueta de país no cubre ninguno de esos casos por sí sola.
Escribe la dirección observada, la opinión de la base de datos y lo que muestra la aplicación como tres notas separadas. Así la próxima discrepancia que encuentres será fácil de atribuir.