The CloudStack “Virtual Router” provides “Private DNS” services for guest instances. The hostnames can be set from the Add Instance creation wizard or directly via the deployVirtualMachine API call.
Instances that are created with the “Name” (Optional) parameter will have it’s forward and reverse DNS entry set to the user defined value. In the screenshot below, the newly launched instance has its “Name” set to “Tiny4”.