• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 455
  • Last Modified:

How to detect a virtual network name

I'm looking for a way to determine if a host name is actually a virtual name. For example if you have a two node cluster where the following network names and IP addresses are used:

Node1   192.168.10.5
Node2   192.168.10.6
and the cluster name and IP:
Cluster  192.168.10.10

'Cluster' is a virtual name that point to the node where the quorum is located at any given time.
If you browse the network you get back all three names. I'd like to know if there is a way to determine if the host name is a 'real' host name or a virtual name.
Of course you don't have to use clusters to have virtual names. You can have the same thing with exchange on a single node.
0
softbreeze
Asked:
softbreeze
  • 3
  • 3
  • 2
1 Solution
 
Geert GOracle dbaCommented:
what does this give ?
ping 192.168.10.5 /a
ping 192.168.10.6 /a
ping 192.168.10.10 /a

0
 
Geert GOracle dbaCommented:
shoud have been
ping -a 192.168.10.5
ping -a 192.168.10.6
ping -a 192.168.10.10
0
 
softbreezeAuthor Commented:
'ping -a' resolves address to host name. Since the virtual name is in DNS the ping -a will return the virtual name when it's IP is ping'd. Therefore 'ping -a' will not answer my question. It looks like the virtual ip is added to the network interface along with the hosts ip and the names are added to DNS. I don't believe that programmaticly you can identify virtual names. Currently I can figure this out on a cluster node by examining the registry. It would be easier if the cluster api was ported for Delphi.

Thanks for your suggestion though.
0
Free Tool: Subnet Calculator

The subnet calculator helps you design networks by taking an IP address and network mask and returning information such as network, broadcast address, and host range.

One of a set of tools we're offering as a way of saying thank you for being a part of the community.

 
Geert GOracle dbaCommented:
open the registry on that ip address ...
0
 
JohnjcesCommented:
Simply put, you can't.

Using the MS Clustering solution (poor) and also now using Marathon virtual clusters (good) and believing you have a good understanding of clustering, you should understand why.

In a cluster or virtual cluster,  there is of course added software to the OS and added stuff in lan manager which allows a virtual IP to be assigned to a virtual PC name. This name could be resolved through the lmhosts or dns or through NetBeui/NetBIOS and the TCP protocol via standard broadcasts and of course being handled by your master browser and/or WINS.

There is no added packet or signifying bit advising that this broadcast is virtual. It is all standards based. Google NetBIOS protocol as an example. The master browser does not know and the only "thing" that could know would be the human who set it up or administers the cluster.

Another example might be to run a virtualized XP OS on Vista. One can set up a different host name and IP, and both are visible to the LAN.

Simply, there is no difference in how a virtual server, cluster server etc, broadcasts its NetBIOS name.

John
0
 
softbreezeAuthor Commented:
I fully understand clusters and understand how it broadcasts it NETBIOS name. Virtual Names and IPs are not limited to clusters, as my initial question stated. Geert's comment got me thinking in a different direction, which is what I needed. I have a little over 100 servers that are all in Active Directory. I have a SQL stored procedure that queries the AD Database and returns all the computer accounts along with some of the properties. Since Cluster virtual name and Exchange virtual name can and do (based on version) show up as computer accounts, I needed a way to distiguish between them and the real computer accounts.

In the registry at
'HKLM\System\CurrentControlSet\Services\tcpip\Parameters\DNSRegisteredAdapters\{GUID}'.
The Key 'HostName' is the host name of the computer, not the virtual name. So you can match the host name from the Active Directory list and determine if the name is a virtual name or a 'real' host name.

If you match the {GUID} at
'HKLM\System\CurrentControlSet\Services\tcpip\Parameters\Interfaces\{GUID}' you can get the IPAddress of the registered adapter as well.

Maybe this is not the best solution but it works for me. Thanks Geert
0
 
softbreezeAuthor Commented:
I've worked on this for a long time and never thought to try this. Thanks again for getting my brain directed in a new direction.
Ken
0
 
JohnjcesCommented:
Outstanding! I thought you were after some form of remote "socketized" or IP method for determining such.

Good luck!

John
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

Featured Post

Free Tool: Subnet Calculator

The subnet calculator helps you design networks by taking an IP address and network mask and returning information such as network, broadcast address, and host range.

One of a set of tools we're offering as a way of saying thank you for being a part of the community.

  • 3
  • 3
  • 2
Tackle projects and never again get stuck behind a technical roadblock.
Join Now