The way to do RDS farm has changed in Server 2012 R2 (: just r2? or Server 2012 also?)
In Server 2008, you'd use DNS round-robin, i.e. farm1.domain.com would resolve to rds1.domain.com and rds2.domain.com. Clients would connect to this DNS name of farm1.
It also includes discussion on setting the default Collection on a Connection Broker for incompatible clients (e.g. older thin clients)AH
Not sure if the information in this section is a Microsoft supported method. Haven't been able to find any concrete information one way or the other.
Point farm1.domain.com to the IP address of the Connection Broker, and nothing else. The connection broker should not be an RDS session host.
Deployment Name should match external FQDN. There is a way to change the deployment name, with a script -
Also set the Default TSV (see related section on this page).
The reason I warn that I'm not sure if this method is supported by Microsoft, is that I can't find any procedure recommending these steps, I just figured it out by reading between the lines of various forum posts. Also, if you have two collections, it does not seem to know by the DNS name which collection you want to connect to, it just uses the Default TSV. So this only really supports a single collection environment. But that may be all you need. Probably the custom RDP file option is better, though.
The reason I'm leaving this information here, and it may still be relevant, is that when you connect to the DNS name of the Connection Broker, you get an error message hinting to connect to the DNS name of the collection:
Remote Desktop Connection cannot connect to the remote computer.
The remite computer rdcb.mundy.local that you are trying to connect to is redirecting you to another remote computer named rds01.mundy.local. Remote Desktop Connection cannot verify that the computers belong to the same RD Session Host server farm. You must use the farm name, not the computer name, when you connect to an RD Session Host server farm.
You'll probably also have to make a registry change, as per this TechNet article
In Server 2012/2012 R2 you would normally have the users make their initial connection to the broker and then be redirected to one of the RDSH servers. For example, if you want end users to connect to rdsfarm.domain.com then you would have a DNS entry pointing to the ip address of the broker.
When connecting to the broker it is intended that the target collection be sent from the client to the broker so that the broker knows which collection to route the user to. If the user uses RD Web Access or RemoteApp and Desktop Connections or Remote Resources to connect and/or launch RemoteApps then this will happen automatically via the loadbalanceinfo setting in the .rdp file.
For cases where the user manually uses the Remote Desktop Client to connect to the broker you can specify the default collection in the broker's registry. There can only be one default collection.
If you are opening Remote Desktop Connection and manually connecting to the broker then it will not work properly because you have no way of specifying the target collection in the user interface. If manually using the RD Client to connect is a requirement what you can do is set the default collection in the RD Connection Broker server's registry.
To specify the default collection, please create the registry setting below in the broker's registry:HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server\ClusterSettings DefaultTsvUrl REG_SZ tsv://vmresource.1.<VDI pool ID>
To determine the correct value for DefaultTsvUrl please open RDWeb in a non-IE web browser and click on the icon for the collection you would like to be the default, then edit the downloaded rdp file with Notepad and copy the portion of the loadbalanceinfo setting that is similar to the above.
The RDP file you download will look something like this:
redirectclipboard:i:1 redirectprinters:i:1 redirectcomports:i:0 redirectsmartcards:i:1 devicestoredirect:s:* drivestoredirect:s:* redirectdrives:i:1 session bpp:i:32 prompt for credentials on client:i:1 server port:i:3389 allow font smoothing:i:1 promptcredentialonce:i:0 videoplaybackmode:i:1 audiocapturemode:i:1 gatewayusagemethod:i:0 gatewayprofileusagemethod:i:1 gatewaycredentialssource:i:0 full address:s:BVI-RDCB-01.BVI.LOCAL workspace id:s:BVI-RDCB-01.BVI.Local use redirection server name:i:1 loadbalanceinfo:s:tsv://MS Terminal Services Plugin.1.MUN-RDS-Collecti use multimon:i:1
So you would paste everything after (and including) tsv:
Note how it chops off everything after 16 characters. I would guess that if you have several collections, you'd want the first 16 characters to be unique. Renaming the collection does not seem to change the RDP file in RDWeb. The only way I found that worked, was to delete the collection and create it again.