listen_addresses controla en qué IP responderá el servidor, no en qué IP el servidor permitirá que las conexiones se autentiquen. Es completamente razonable y normal usar listen_addresses '*'
por lo que el servidor aceptará conexiones entrantes en cualquier ip asignada a una interfaz en el host del servidor postgresql, mientras usa pg_hba.conf para controlar el acceso a un nivel más detallado para qué IP aceptará inicios de sesión para bases de datos y usuarios específicos.