I had a very exciting chat with some beta users today where, for the first time, we talked about a feature I am very excited about that we are calling Internet Computer Names. Basically, it is making use of a service we built in Vista that will publish a name for the machine any time the machine is running. Coupled with the way PNRP is integrated into GetAddrInfo, this makes for some awesome experiences like being able to Remote Desktop to your machine from anywhere using a PeerName.
The only negative about the feature is that it is not exposed via a GUI in Vista RTM. Instead, you have to use netsh. However, I am hoping that someone will pull together a GUI for folks to use (hint, hint).
Below are the instructions we gave in the chat on how to enable the service and some ways of trying it out. Let me know what you guys think!
Internet Computer Naming
Have you ever wanted to be able to find and connect to your computer across the Internet, but did not want the complexity and cost of buying a domain name and using Dynamic DNS? With Windows Vista, you can using Internet Computer Naming. This section will show you how to enable the technology, and how to take advantage of it.
Enabling the Service
This service can be used with two types of names, secured or unsecured. The difference is that unsecured names are simple to type, such as JohnDoe.pnrp.net, but can be spoofed, such that the machine you connect to using this name is not guaranteed to really be your machine (i.e., you might not be the only JohnDoe who used that name). Secured names are more complex, like johndoe-p.p4562b4628ac54782dda52789038476237e7c7263.pnrp.net, but will always be your machine. The instructions below will use unsecured names, but you can substitute a secured name by using ‘name=”” ‘ in step 5 below.
Choose a name you would like to use. For simplicity, it should be only lowercase characters, with no special symbols. We recommend your email address without the @ or ‘.’. For example, johndoe@microsoft.com would become ‘johndoemicrosoftcom’. This name will be represented in the instructions below as <name>.
Go to the Start, All Programs, Accessories, and right-click on Command Prompt, selecting Run as Administrator from the menu This will cause a UAC prompt which you should accept, and then you will be presented with a cmd window. In this application, type the following commands.
Using the Service
Internet Computer Names can be used virtually anywhere in Windows. We will start off with a simple use, and then show a more interesting use.
Ping:
Open a command prompt (Start menu, then type “cmd” enter into the run/search dialog) on either the machine with the name published or another machine. In the window, run the command “ping <internetname>. This ping should succeed, the same way it would if you used an IP address or a DNS name.
Remote Desktop:
Remote Desktop can work with Internet Names as well. Enable Remote Desktop via the following (skip if Remote Desktop is already enabled):
Now you can use Remote Desktop to connect from another machine.
Note that the above will now work from any Vista computer on the Internet that has IPv6 connectivity (this generally means any machine not in a corporate network).
Other Applications:
Again, this name will work with virtually any part of Windows. If you run IIS on your home machine, you can use an Internet Name to access a web site on your home machine, or an FTP site. You can setup an RSS subscription to a feed from your home machine. If you have a multiplayer game where you normally type in IP addresses or DNS names, try an Internet Name.