I recently needed to let my guest VMs talk to each other, which I did by assigning them static IPs as described below. Most of this is documented in Virtual Networking page of the libvirt wiki.
192.168.122.2 guest1.virtdomain guest1
[root@localhost ~]# virsh domiflist guest1(You can find this info via the virt-manager GUI instead if you prefer.)
Interface Type Source Model MAC
- network default virtio 52:54:00:ab:cd:ef
<range start='192.168.122.2' end='192.168.122.254'/>
<host mac='52:54:00:ab:cd:ef' name='guest1.virtdomain' ip='192.168.122.2'/>
Exporting an NFSv3 mount to guest VMs in Fedora 20
With my virtual network configured how I wanted it, I could use NFS to share the host's filesystem with the guests. Most of the documentation I found on exporting an FS said to use the 9p protocol, but although that's supported in the Fedora kernel, it isn't supported by my RHEL6 and BSD guests, so I went for NFS. Figuring out the NFS config was harder than the network setup as all the documentation I found was outdated and/or didn't work on Fedora 20.
* On the host:
(In my case I'm using ro so I'll only export a read-only filesystem.)
systemctl restart nfs-server.service
* On each guest:
(If you set up DNS as described above you should be able to use host or host.virtdomain instead of the IP address.)
mount -t nfs -o nfsvers=3 192.168.122.1:/foo/bar /mnt/host
By default the clients seemed to want to use NFSv4, so trying to mount failed with an "access denied" error.
On RHEL6 I needed nfsvers=3 in the options, on BSD I needed nfsv3.
If that works correctly you can add it to etc/fstab to make it permanent.