Duda con realizar un dispositivo que permita ser controlado a larga distancia

Hola buenas, estaba empezando con arduino, y quería hacer un dispositivo que mediante el celular permita conectar diferentes luces, yo pensaba hacerlo con un modulo rele de 4 canales, pero mi duda es, ya que el bluetooth tiene un alcance limitado, que otra posibilidad hay?, investigando vi que existía una placa, la ESP8266, que permite trabajar con wifi, pero debido a que mi ISP cambia la direccion IP publica de mi router, seria tedioso tener un servidor web, queria saber sus opiniones y así tener alguna idea.
Muchas gracias desde ya.
PD: Es el primer post que realizo, no se si es el lugar correcto, si no es asi, pido disculpas.

Quizás esto te puede ayudar.

Saber mi IP

Usa mqtt con el esp8266. Yo uso mqttcloud.com. Para lo que quieres tienen cuentas gratuitas. Al estar el bróker en Internet y el esp8266 mantener la conexion abierta funciona sin saber la ip. La aplicación del móvil se comunica con el bróker. Funciona desde inet y desde la misma red local. Aplicaciones para el móvil hay muchas. Yo uso mqtt dash. Puedes configurar la cuenta y crear botones para tus luces o lo que sea..
Saludos.

Blynk es lo que buscas