Disponer de una IP pública es algo bastante difícil debido a que son un bien escaso en el estándar IPv4 y suelen ser caras. No obstante, hay algunas soluciones IoT antiguas que usan IPs públicas fijas.
En conectividad celular lo más común es que los carriers asignen dinámicamente una IP pública en un periodo de tiempo durante el cual se supone que el dispositivo abre un contexto para transmitir datos.
No es recomendado ninguno de los dos escenarios comentados, ya que las IP públicas pueden ser objeto de ataques DDOS y packet sniffing.
Para que os hagáis una idea, la mayoría de las IPs públicas de Internet son escaneadas desde la red, con lo que, aunque el dispositivo no esté transmitiendo datos, genera tráfico no deseado para responder a los escaneos. Este tráfico depende de cada red, pero puede suponer unos 30-40 MB adicionales mensuales.
No solo es algo no seguro, sino que puede aumentar significativamente la factura que pagas al carrier por los datos. En la mayoría de los casos de uso en IoTse suelen consumir volúmenes de datos pequeños.
Lo más habitual es que los carriers manejen IPS privadas para los dispositivos que se natean a IPs públicas en los puntos de entrada en Internet. Los carriers tienen infraestructura preparada para proteger y aislar los dispositivos de sus clientes.