Earlier today, we tried deploying an application to our clustered test environment. The application had gone through a fairly rigorous amount of testing and had passed with flying colors.
The strangest thing happened though, once we rolled to our clustered test environment... Funny how that works, isnt it?
Turns out that this was an issue documented at Microsoft. A little bit of googling turned up the fix.
Basically, what was happening was that both machines had their
<machineKey> elements set to AutoGenerate. This was causing the cryptographic hash that was being used for the querystring to be invalid when the request came in to the other server.
There is also an article available on MSDN that has a little console application that you can use to generate the machineKey elements.
Pretty simple fix, for a problem that took up a lot of our day today. I'm posting this to hopefully help someone else struggling with the same issue.