Todos los artículos

OLLAMA_HOST=0.0.0.0: cómo configurarlo en Mac, Linux, Windows y Docker (probado en v0.40.15)

Ollama solo escucha en 127.0.0.1:11434 si no defines OLLAMA_HOST. Probamos v0.40.15 con varios valores, vimos en qué escucha y quién puede conectarse, y probamos OLLAMA_ORIGINS. Los pasos para Mac, Linux, Windows y Docker siguen la FAQ oficial.

Ollama OLLAMA_HOST=0.0.0.0: caja servidor de arcilla con forma de llama rodeada de un cable menta y dos portátiles de arcilla
También disponible en中文English

En resumen: sin ajustes, Ollama escucha solo en 127.0.0.1:11434, así que únicamente la propia máquina puede conectarse (la FAQ oficial dice que usa 127.0.0.1 puerto 11434 por defecto). Para que otros dispositivos de tu red se conecten, cambia la dirección con la variable de entorno OLLAMA_HOST; el valor habitual es 0.0.0.0:11434. La variable debe llegar al proceso del servidor: un export en tu terminal no lo ve la app de Ollama en segundo plano ni el servicio systemd. El 10/11/2026 ejecutamos Ollama v0.40.15 en Linux con varios valores y anotamos el resultado.

Prueba: dónde escucha cada valor

Montaje: Linux (contenedor), Ollama v0.40.15, varios servidores a la vez en puertos distintos, sin descargar modelos. «IP de red de la máquina» es la dirección propia de esta máquina en la red; consultamos /api/version con curl.

Valor de OLLAMA_HOSTLínea Listening del logPor 127.0.0.1Por la IP de red de la máquina
127.0.0.1:11601Listening on 127.0.0.1:11601Funciona, devuelve {"version":"0.40.15"}No conecta, sin respuesta
0.0.0.0:11602Listening on [::]:11602FuncionaFunciona, devuelve {"version":"0.40.15"}
0.0.0.0 (sin puerto)Listening on [::]:11434No probado por separadoNo probado por separado
:11603 (solo puerto)Listening on [::]:11603No probado por separadoNo probado por separado

Cómo leerlo:

  • Con 0.0.0.0, v0.40.15 registra [::] y ss -ltn muestra *:11602, es decir, todas las interfaces. No probamos IPv6 por separado.
  • Sin puerto, vuelve a 11434. Solo el puerto (:11603) también escucha en todas las interfaces.
  • «Funciona» solo significa que la red está abierta. curl recibió respuesta sin ninguna credencial, así que si escucha en todas las interfaces, cualquiera en esa red puede llamarlo. Lo tratamos en la sección de seguridad.

El cliente lee la misma variable. Desde otra máquina, apuntar OLLAMA_HOST a la IP y el puerto del servidor y ejecutar ollama list conectó y devolvió la cabecera (NAME ID SIZE MODIFIED, vacía porque no hay modelos). Sin servidor, ollama list falla con:

Error: could not connect to ollama server, run 'ollama serve' to start it

Cómo configurarlo por plataforma (en el servicio)

Estos pasos vienen de la FAQ oficial. Solo ejecutamos ollama serve directamente en Linux; los de macOS, Windows, systemd y Docker no se ejecutaron en esos sistemas y siguen la documentación.

macOS (app de Ollama)

launchctl setenv OLLAMA_HOST "0.0.0.0:11434"

Después cierra y vuelve a abrir la app de Ollama.

Linux (servicio systemd)

sudo systemctl edit ollama.service

En el editor añade:

[Service]
Environment="OLLAMA_HOST=0.0.0.0:11434"

Guarda y ejecuta:

sudo systemctl daemon-reload
sudo systemctl restart ollama

Windows

Cierra Ollama desde la bandeja, abre «Editar las variables de entorno de tu cuenta», crea o edita la variable de usuario OLLAMA_HOST con el valor 0.0.0.0:11434, acepta y vuelve a iniciar Ollama desde el menú Inicio.

Docker

El Dockerfile de la imagen oficial ya incluye ENV OLLAMA_HOST=0.0.0.0:11434 (leímos el Dockerfile en GitHub; no ejecutamos el contenedor), así que dentro del contenedor ya escucha en todas las interfaces. Lo que controlas es el mapeo de puertos: -p 11434:11434 publica en todas las interfaces del host; usa -p 127.0.0.1:11434:11434 para dejarlo local. Para que otro contenedor llegue a Ollama en el host, Docker Desktop ofrece host.docker.internal; en Linux normalmente hay que añadir --add-host=host.docker.internal:host-gateway. La sintaxis del mapeo y estos dos puntos son práctica general de Docker, no documentación de Ollama, y no los probamos.

Cómo comprobar que funciona

1. En el servidor, mira el puerto: en Linux ss -ltn | grep 11434. *:11434 o 0.0.0.0:11434 significa escucha externa; 127.0.0.1:11434 significa solo local.

2. Desde otra máquina:

curl http://IP_DEL_SERVIDOR:11434/api/version

Una respuesta JSON como {"version":"0.40.15"} indica que funciona; ese fue el formato que obtuvimos.

3. Si falla, comprueba que el cortafuegos permite el 11434 (los de macOS, Windows y Linux pueden bloquearlo; no lo probamos) y que el cliente no apunta aún a la dirección por defecto.

Páginas y extensiones del navegador: OLLAMA_ORIGINS

OLLAMA_HOST decide quién se conecta; las páginas y extensiones del navegador además pasan una comprobación de origen cruzado, que controla OLLAMA_ORIGINS. La FAQ dice que por defecto se permiten peticiones desde 127.0.0.1 y 0.0.0.0 y que el resto hay que añadirlo con OLLAMA_ORIGINS. Lo probamos con una petición previa CORS (OPTIONS) en v0.40.15:

AjusteOrigenResultado
OLLAMA_ORIGINS sin definirhttp://localhost:3000204 con cabeceras Access-Control-Allow-*
OLLAMA_ORIGINS sin definirhttp://evil.example403 Forbidden
OLLAMA_ORIGINS=http://app.example.comhttp://app.example.com204
OLLAMA_ORIGINS=http://app.example.comhttp://other.example.com403

Así que si una web recibe un error CORS de Ollama, cambia OLLAMA_ORIGINS, no OLLAMA_HOST. Para extensiones la FAQ muestra chrome-extension://*,moz-extension://*,safari-web-extension://*; permitir solo la que usas es más seguro.

Seguridad: 0.0.0.0 es abrirlo a toda la red

  • En nuestra prueba las llamadas funcionaron sin credenciales, así que nunca publiques el puerto 11434 en internet (el reenvío de puertos del router o un grupo de seguridad en la nube totalmente abierto cuentan).
  • Úsalo solo en una LAN de confianza. Cafeterías, residencias y redes compartidas de oficina no lo son.
  • Si necesitas acceso remoto, la FAQ propone un proxy inverso delante (el ejemplo es Nginx; también muestra Cloudflare Tunnel), que haga el control de acceso mientras Ollama sigue escuchando en local.
  • Si solo necesitas que otros programas locales (por ejemplo una app en un contenedor Docker) lleguen a Ollama, prefiere escuchar en 127.0.0.1 o limitar el origen con el mapeo de puertos anterior.

FAQ

Definí OLLAMA_HOST y el 127.0.0.1 local sigue fallando

El cliente también lee la variable. Poner el servidor en 0.0.0.0:11434 está bien, pero si tu terminal tiene OLLAMA_HOST con otro valor, ollama list y ollama run se conectan a esa dirección. Ejecuta echo $OLLAMA_HOST para ver qué tiene la terminal.

El ajuste no surte efecto

Casi siempre la variable no llegó al proceso del servidor: en macOS usa launchctl setenv y reinicia la app, en Linux ponla en Environment= de systemd y ejecuta daemon-reload y restart, en Windows cierra la app de la bandeja y vuelve a abrirla. Lo mismo vale para las variables de proxy; mira la solución de max retries exceeded con proxy.

Relacionado

Errores de Ollama y llama.cpp · Longitud de contexto en Ollama · Mejores LLM locales

Deja una idea

Tu dirección de correo no se publicará.