I have a strange, inconsistent problem. Two servers, both Server 2008 R2 SP1. First server is web-facing with the RDS Gateway, Web Access, and Session Broker roles installed along with Exchange 2010 and all associated roles. Second server is just RDS Session Host.
Internally, everything works fine. RD Web Access, remoting directly into both the web access server and the session host.
Externally, it works about 50% of the time. I can always login to the Web Access portal but when I launch an app, it constantly says that "the logon attempt failed" after entering my user/pass. I can't find any errors logged anywhere about this on either server. In the event that it doesn't work, I have to reboot RDS services and machines until it finally starts working but I have not found a surefire way of fixing it. I have tried changing the configuration in the Web Access portal from going directly to the session host to a farm to using the connection broker. Because it works internally, I think that it's an issue with the Gateway server, not my Session Host.
I should also add that I have a nearly-identical setup for another client that is working perfectly. The big difference is that my gateway server also has Exchange services running on it.