Yes, except each container has it's own isolated network and explicitly exposes a port that linked containers can listen to. In development I think a lot of people just use --net=host so that all the containers share the host networking stack (at least, I do).
Care to elaborate on this? Do you use the linking system described here? https://docs.docker.com/userguide/dockerlinks/
I mean, your various containers still communicate over IP, right? Just a private IP network within the host, rather than outside?
(Obviously I've never used Docker.)