Cuando incursionas en el mundo de las redes, invariablemente en algún momento te encontrarás con direcciones IP "especiales" o "privadas" que tienen un significado diferente dependiendo del contexto.
Una confusión muy común entre principiantes es asumir que la dirección 0.0.0.0 y 127.0.0.1 es lo mismo. No lo es. Y aquí te explico porque:
La dirección 127.0.0.1 se conoce como home, localhost o dirección de loopback. Otra confusión muy común es la de asumir que 127.0.0.1 se refiere a tu propia computadora, en realidad, 127.0.0.1 es una dirección designada para proveer una interfaz IP funcional y completa dentro de tu misma computadora, sin importar cual es la configuración de la red exterior. Todo el tráfico que se envía a 127.0.0.1 es inmediatamente recibido. Una manera de visualizar el concepto es imaginando un mini segmento de red que "vive" dentro de tu computadora y que permite que dispositivos, procesos y sockets se puedan conectar a tu máquina.
Por el otro lado, la dirección 0.0.0.0 no es una dirección IP válida para asignarla a una interfaz de red, de hecho, ninguna dirección IP en la subnet 0.0.0.0/8 es una dirección valida (es decir, cualquier dirección que empiece con 0.0.0.x)
La dirección 0.0.0.0 no puede ser utilizada como origen de ningún paquete IP, a menos de que la computadora no sepa su propia dirección IP e intente obtener una dirección propia (DHCP es un ejemplo de éste escenario)
Si 0.0.0.0 se utiliza en una tabla de rutas, ésta dirección identifica la puerta de enlace predeterminada. La ruta designada como 0.0.0.0 es la ruta que se utiliza cuando no existe ninguna otra ruta disponible para llegar a la dirección IP del destinatario.
Finalmente, cuando un servicio escucha por conexiones en la dirección 0.0.0.0 significa que el servicio escuchará conexiones en todas las direcciones IP disponibles en la computadora. Por ejemplo, si tu servidor tiene 2 direcciones IP (192.168.1.1 y 10.1.2.10) y permite que un servicio escuche por conexiones en la dirección 0.0.0.0; un cliente podrá conectarse a tu servidor utilizando cualquiera de las dos direcciones IP.