If you have OCS deployed and are federated with someone, you understand the benefits of federation. If you work with a lot of other companies (as a customer or supplier), you may want to set up federation with more of your business partners.
But how do you determine if they are running OCS and are set up for federation? You could ask them, but wouldn’t it be great if you could at least do a first pass and determine if they are likely ready to federate with you. They would already have this infrastructure if they have deployed PIC (Public Internet Connectivity) for connecting to Live Messenger, AOL Messenger, or Yahoo! Messenger users, or if they have federated with someone else. They would even have this infrastructure deployed if they have users from outside their corporate network using their OCS system.
While there are other requirements, the first is that they have deployed a DNS SRV record named _sipfederationtls._tcp.domain. This should point to a valid DNS A record to an Access Edge server formatted access_edge_servername.domain and point to port 5061.
If you have a DNS server that will resolve Internet address (maybe from a home broadband provider), you can use the following command to see this entry for microsoft.com. Just open a command prompt and type/past this in.
nslookup -q=srv _sipfederationtls._tcp.microsoft.com
If you need to check a few names, paste this into a batch file, such as checkfed.bat.
nslookup -q=srv _sipfederationtls._tcp.%1
Then you can run checkfed microsoft.com and get the same results. If the result is a pointer to an A record that exists in the domain and port 5061, then it is likely that the company is set up for federation, or at least has some of the infrastructure ready. Then you can go ask them, confirm certificate information, and then configure federation on both sides.
NOTE: This will possibly fail if you are within a corporate network, because internal DNS servers do not forward these requests outside of the environment. If you can access a public DNS server, but it is not your default, you can add a space and the IP address to the end of the command line.