Si eres de los que estás intentando compartir una cuenta de Netflix con tus familiares o amigos y te encuentras con el mensaje de error “Tu TV no forma parte del Hogar con Netflix de esta cuenta”, entonces sigue leyendo que te voy a enseñar cómo resolverlo.
No solo es para tener Netflix compartido, con lo que verás hoy puedes compartir las cuentas de las demás plataformas de Streaming, cifrar el tráfico de red y así tener un toque de seguridad extra.
No importa la suscripción que tengas, ahora Netflix funciona para la cantidad de dispositivos que tengas contratado pero con la particularidad de que todos deben estar en el mismo hogar, lo que se traduce en términos más técnicos, que todos deben conectarse a través de la misma dirección IP pública.
Pueden haber varias soluciones para lograr tener la cuenta compartida de Netflix, pero hoy te voy a enseñar una de ellas, usando tu propio servidor VPN con la tecnología Wireguard en tu router de internet (Router Mikrotik)
Requisitos mínimos para compartir una cuenta de Netflix
Antes de empezar con las configuraciones, es necesario que tengas listos algunos requisitos mínimos.
En primer lugar, estaremos usando un router del fabricante Mikrotik como nuestro router principal de internet en casa. En mi caso tengo el Mikrotik hAP ax3.
En este artículo te muestro cómo hice para cambiar el router que me instaló el operador por uno propio de Mikrotik.
En segundo lugar, debes tener una dirección IP pública en tu router, no puedes estar detrás de un NAT (Network Address Traslation). En otras palabras, la dirección IP de tu router debe ser accesible desde Internet.
Si no sabes cómo identificar si tienes una dirección IP pública, hay varias formas de averiguarlo, una de ellas es hacer una búsqueda sencilla en Google “Cuál es mi IP” y entra a cualquiera de los primeros resultados, ahí tendrás detalles.
Luego mira compara esa dirección IP con la que tienes asignada por el operador a tu router en la interfaz WAN, si son iguales, felicitaciones, tienes una dirección IP pública. En caso contrario, estarás saliendo a internet a través de un NAT, o sea, que varios clientes de tu operador estarán usando la misma dirección IP pública.
La solución que tienes es contactar con tu proveedor de internet y solicitar que deseas tener una dirección IP pública, en algunos casos tendrá un coste extra en tu tarifa mensual. En mi caso me cuesta 1 euro al mes, que para las ventajas que me da, está super bien de precio.
En tercer lugar, en tu mikrotik debe estar corriendo la versión 7 o superior de su sistema operativo RouterOS. Es a partir de esta versión que viene de forma nativa en ellos. Además de todas las ventajas que tiene tener tu equipo actualizado.
Ahora sí, estamos listos para empezar a configurar todo hasta llegar a compartir una cuenta de Netflix.
Configuración del Servidor VPN Wireguard en Mikrotik
Abrimos nuestro Winbox para acceder a la administración de nuestro Mikrotik. En la parte izquierda aparece una lista de opciones, localizamos y escogemos la opción de Wireguard.
En la ventana que se abre, damos clic en el símbolo de + de color azul para crear un servidor nuevo.
La configuración es bastante sencilla, solo debemos escoger un nombre y escribirlo en el campo “Name”, en mi caso he puesto: wireguard1-jcnet.
En el campo “Listen Port”, o puerto de escucha, puedes poner cualquiera entre 1024 y 65535, pero yo te recomiendo que dejes el que viene por defecto que es el que normalmente utiliza el servicio de Wireguard que es el puerto 13231.
Luego, antes de dar OK, presiona el botón “Apply” y automáticamente se generan un para de llaves, privada y pública. La llave pública es la que debemos agregar en cada uno de los clientes o pares (Peers) que se van a conectar a nuestro servidor VPN. Ahora si, damos OK.
Configuración de la red para el servidor VPN
Ya tenemos creado nuestro servidor VPN, estamos casi listos para compartir una cuenta de Netflix. Después de crear el servidor WireGuard, se crea una interfaz de red nueva automáticamente con el mismo nombre que hemos puesto al servidor.
Vamos a definir la dirección IP de esta nueva interfaz, que será la puerta de enlace por defecto de los clientes que se conectan a la VPN. Nos vamos a IP/Address y le damos clic al símbolo de + de color azul para agregar una nueva.
En el caso del ejemplo, le he puesto la dirección IP 192.168.80.1/24 y siempre teniendo en cuenta el nombre de la interfaz a la que se lo estamos agregando, que en este caso tiene el mismo nombre que el servidor VPN.
Reglas del Firewall en el Router Mikrotik
Ya tenemos servidor VPN y la interfaz de red asociada a este configurada. Ahora tenemos que permitir el tráfico referente al WireGuard en las reglas de filtrado del firewall, porque asumo que si usas Mikrotik, al menos tengas las reglas por defecto o las mínimas para proteger tu red.
Podemos hacerlo mediante la línea de comandos de Mikrotik (CLI) o por la misma interfaz gráfica. Hoy te mostraré cómo hacerlo por comandos, que mola más.
Abrimos un terminal en Mikrotik y escribimos lo siguiente:
/ip/firewall/filter
damos enter y con esto nos situamos en el sitio correcto para pegar estas líneas:
add action=accept chain=input dst-port=13231 protocol=udp place-before=1 comment="Permitir_Wireguard"
add action=accept chain=input src-address=192.168.80.0/24 place-before=1 comment="Permitir_Trafico_Wireguard"
La primera crea una regla donde acepta todos los paquetes entrantes que sean del protocolo UDP, por el puerto 13231 que es el que hemos definido para que trabaje el WireGuard.
La segunda regla acepta todo el tráfico de entrada proveniente de la subred destinada a los clientes de WireGuard.
Tu propio nombre de dominio gratis
Este es un paso intermedio antes de configurar los clientes VPN. Como te comentaba en apartados anteriores, necesitas una dirección IP pública y si ya la tienes, estoy casi seguro que esta cambiará cuando reinicies tu router, se termine el tiempo del lease o cualquier otra cosa.
Entonces, imagina que cada vez que se cambie tu dirección IP pública en el router tengas que ir cliente por cliente para decirle cual es la nueva IP, es totalmente contraproducente. Pero no te preocupes que te voy a enseñar una de las formas que tengo para automatizar este proceso.
Usaremos un servicio de DNS dinámico, hay varios pero, quiero mostrarte el que estoy utilizando yo, es DuckDNS.
Entramos a su sitio web y nos registramos con cualquiera de las opciones que tiene, yo he escogido con Google. Las cuentas gratis tienen hasta 5 dominios para registrar, de momento vamos a registrar solo uno.
En el cuadro de texto donde pone sub domain vas a poner el nombre que hayas escogido para tu dominio y usarlo en el servidor VPN. En caso de que ya exista te lo dice y debes escoger otro.
Una vez que le des agregar dominio, te lo asociará a la dirección IP pública que detecta de tu conexión actual, por eso es que necesitábamos tener una dirección IP pública alcanzable desde Internet en nuestro router.
Script Mikrotik para actualizar la dirección IP en DuckDNS
Teniendo listo el paso anterior, debemos asegurarnos de que cada vez que cambie nuestra dirección IP, automáticamente lo actualice en DuckDNS y así olvidarnos de estar pendientes.
En la web de DuckDNS nos facilitan un script para ponerlo a correr en nuestro Mikrotik y con algunos ajustes personalizados estará listo.
Nos vamos arriba del todo y en la pestaña “Install” aparecerá una serie de opciones donde debes escoger la que más te conviene, en este caso estamos usando Mikrotik. Escogemos esta opción y más abajo debes escoger el dominio al cual se lo vas a aplicar, porque con esa información te completará algunos detalles en el script y es tiempo que te ahorras.
(Entre la información que agrega se encuentra el dominio que tienes creado y el token, que no es más que un código que puedes localizar en tu página principal de DuckDNS)
:global actualIP value=[/ip address get [find where interface=<Aquí la interfaz WAN>] value-name=address];
:global actualIP value=[:pick $actualIP -1 [:find $actualIP "/" -1] ];
:if ([:len [/file find where name=ipstore.txt]] < 1 ) do={
/file print file=ipstore.txt where name=ipstore.txt;
/delay delay-time=2;
/file set ipstore.txt contents="0.0.0.0";
};
:global previousIP value=[/file get [find where name=ipstore.txt ] value-name=contents];
:if ($previousIP != $actualIP) do={
:log info message=("Try to Update DuckDNS with actual IP ".$actualIP." - Previous IP are ".$previousIP);
/tool fetch mode=https keep-result=yes dst-path=duckdns-result.txt address=[:resolve www.duckdns.org] port=443 host=www.duckdns.org src-path=("/update?domains=<Aquí el subdominio>&token=<Aquí el token>&ip=".$actualIP);
/delay delay-time=5;
:global lastChange value=[/file get [find where name=duckdns-result.txt ] value-name=contents];
:global previousIP value=$actualIP;
/file set ipstore.txt contents=$actualIP;
:if ($lastChange = "OK") do={:log warning message=("DuckDNS update successfull with IP ".$actualIP);};
:if ($lastChange = "KO") do={:log error message=("Fail to update DuckDNS with new IP ".$actualIP);};
};
Copiamos el script y nos vamos a nuestro Mikrotik y abrimos en “system/scripts”, le damos al simbolo de + de color azul para agregar uno nuevo, le defines el nombre que desees (en mi caso puse duckdns-updater) y en el cuadro grande, donde pone Source, ahí vamos a pegar el script.
Como dato adicional, te recomiendo que cambies el nombre de la interfaz que viene por defecto por la interfaz de tu Mikrotik que está funcionando como WAN, la que tiene la dirección IP pública, en mi caso es la interfaz PPPoE.
Esto lo puedes encontrar en la primera línea del script:
:global actualIP value=[/ip address get [find where interface=MATRIX] value-name=address];
Ya casi hemos terminado, solo falta poner a correr el script periódicamente para verificar si nuestra dirección IP pública ha cambiado para actualizarla en DuckDNS. Para esto vamos a crear una planificación de la ejecución.
Nos vamos a “system/scheduler” y creamos uno nuevo, le vamos a definir un nombre (en mi caso 1min-duckdns), en “Start Time” vamos a poner startup, para que siempre que se reinicie el Mikrotik arranque el script. En “Interval” ponemos 00:01:00 que equivale a 1 minuto (El tiempo es a conveniencia de cada uno, puede ser más o menos) y en el campo “On event” vamos a escribir el nombre de nuestro script exactamente igual.
Le damos OK y listo, con esto garantizamos que cada 1 minuto se ejecute nuestro script que verifica la dirección IP actual de nuestra interfaz WAN y si es distinta a la anterior, se conecta a DuckDNS y la actualiza.
Configuración de los clientes VPN o pares WireGuard
La configuración de los clientes o pares WireGuard, es relativamente sencilla, se trata de instalar la aplicación y configurar unas pocas cosas.
Configuración de clientes móviles de WireGuard
El procedimiento tanto en Android como IOS es similar. Empezamos por instalar la aplicación de WireGuard desde cualquiera de las tiendas en ambos casos.
Después de instalada, la abrimos y presionamos en el símbolo + para agregar una nueva configuración, escogemos “Desde Cero”. Agregamos un nombre descriptivo, en mi caso he puesto “vpn-casa”.
Le damos al botón de “Generar Claves” y automáticamente se generarán las claves privada y pública, esta última es la que debemos tener en cuenta cuando vayamos a crear el Peer en el servidor.
En el apartado “Direcciones” se debe escribir una dirección IP de la subred que hemos definido en la interfaz WireGuard, en nuestro caso la subred que estamos trabajando es la 192.168.80.0/24. En este ejemplo vamos a definir 192.168.80.232 que es la que usará el cliente para la conexión a la red WireGuard.
En el caso del apartado “DNS” es opcional el que debes escoger, puede ser cualquiera de los Google, el mismo que te asigna tu proveedor, o el que desees. En este caso del ejemplo usaremos uno de Google, el 8.8.8.8.
En la parte del Peer que es el servidor, pondremos la clave pública del mismo. En el apartado “Endpoint” o punto final pondremos el dominio que hemos creado en DuckDns y el puerto de escucha del servidor. Puedes poner una lista de direcciones IP permitidas o simplemente permtes todas poniendo “0.0.0.0/0”
Le damos a salvar y ya solo falta crear este Peer en el servidor, pero antes te muestro cómo configurar un cliente en Windows.
Configuración del cliente WireGuard en Windows
Para instalarlo en Windows, vamos a ir a su sitio Web oficial y lo descargamos. La instalación es sencilla, del tipo siguiente, siguiente.
Lo abrimos y para crear un nuevo túnel vamos a la parte inferior izquierda donde pone “Añadir nuevo túnel” damos clic en el desplegable y escogemos la opción “Añadir túnel vacío…” Se abrirá una ventana y vamos a configurarlo de la siguiente forma:
En nombre he puesto para este ejemplo “wg0”, la Clave pública es la que debemos enviar al servidor para cuando vayamos a crear este Peer.
Ahora en el cuadro texto más grande te aparecerá la clave privada, vamos a escribir el resto de las configuraciones que necesitamos para hacerlo funcionar.
En “Address” vamos a poner al igual que en la versión móvil, una dirección IP de la subred de trabajo del WireGuard, en mi caso he escogido la IP 192.168.8.230. En el DNS igualmente usaremos uno de Google, 8.8.8.8.
Ahora en la parte correspondiente de su Peer, o sea del servidor, vamos a poner la clave pública que es la misma que hemos configurado en la versión móvil, las direcciones IP permitidas, ponemos todas de esta forma “0.0.0.0/0”.
Donde pone Endpoint o punto final es donde pondremos la dirección IP y el puerto del servidor, pero en su defecto usaremos la dirección con nombre de dominio que hemos creado en DuckDNS. Le damos a guardar y ya lo tendríamos listo para establecer la conexión.
Configuración de los Peers en el Servidor
En este caso de ejemplo sólo explicaré cómo configurar uno de los Peers porque es un procedimiento similar para todos.
En el Mikrotik, vamos a la opción WireGuard en la parte izquierda y escogemos la pestaña Peers, damos clic en el símbolo + de color azul para crear uno nuevo. Las opciones a configurar son las siguientes:
Interface, si solo tienes un servidor en el Mikrotik, se seleccionará automáticamente la interfaz creada para el servidor, es este caso “wireguard1-jcnet”. En la clave pública vamos a poner la que se ha generado en el cliente, en este caso estamos configurando el cliente móvil.
En direcciones permitidas vamos a poner solo la dirección IP que le hemos asignado, en el caso del ejemplo será 192.168.80.232. Le damos al OK y ya está todo listo para que el cliente del móvil se pueda conectar.
Y hasta aquí esta guía paso a paso de cómo configurar un servidor vpn propio con WireGuard y Mikrotik, claro sirve para compartir una cuenta de Netflix y de cualquier otra plataforma de Streaming.
Te dejo un par de videos de mi canal donde explico el procedimiento