1. Communication between the VM's in the same subnet.
- No need of Floating IP
Every Project must have one private network. When you create a VM you must associate the VM to that private network. It will get an IP address from that network. A VM may get an IP address for ex: 192.168.16.35. You cannot reach this VM from your laptop (Not on the same network). This is useful when you want to isolate VMs for security or other reasons.
2. Communication between the VM's in the across subnet.
- Need Floating IP
When you want the VM to be reachable from outside (Not on the same network/Internet) you need to assign it a Floating IP. The Floating IP will be assigned from one of the 2 External Gateways. Check the Network Topology. The reason you are creating a router to connect your private network to the External gateway is mainly to allow your VMs to get this Floating IP.