I had/have a weird issue yesterday. The scenario is I have a development workstation (windows 7) with 2008R2 and 2012 installed. The main instance being on the 2012 version. I was attempting to give access to colleagues via ODBC/access, so I did the following 1. Allowed port 1433 through the firewall 2. setup ODBC link using the the generic SQLSERVER driver (colleagues have Office 2010) Following this I was unable to access the 2012 instance via SSMS at all. More curiously With both servers running I was apparently able to login to 2012 instance (called \SQLSERVER2012). However this actually logged into the 2008R2 instance. If I tried turning off the 2008R2 instance in configuration manager, then I was unable to login at all, with a final message saying that server had specifically refused connection. I have "resolved" the issue by installing a fresh instance of 2012 and copying databases across, however It would be useful to know what has happened thanks for any hints on this
If you are running named instances you would also need to have the SQL Browser service started, and allow port 1434. 1433 is the *default* port for the *default* instance - seems like something somewhere is getting confused. So despite you thinking you are connecting to a particular SQL server, you are in fact talking to an IP address on port 1433 - depending on what exactly is set up to listen to that port (which in your case seems to be the 2008R2 instance), then that is what you actually connect to.