Existe-t-il un moyen de découvrir l'alias réseau de la machine sur laquelle mon code s'exécute? Plus précisément, si mon groupe de travail voit ma machine en tant que // jekkedev01, comment puis-je récupérer ce nom par programmation?Recherche d'un alias réseau dans .net
Répondre
Étant donné que vous pouvez avoir plusieurs interfaces réseau, dont chacune peut avoir plusieurs adresses IP et qu'une seule adresse IP peut avoir plusieurs noms pouvant être résolus, il peut y en avoir plusieurs.
Si vous voulez connaître tous les noms par lesquels votre serveur DNS connaît votre machine, vous pouvez faire une boucle à travers eux tout comme ceci:
public ArrayList GetAllDnsNames() {
ArrayList names = new ArrayList();
IPHostEntry host;
//check each Network Interface
foreach (NetworkInterface nic in NetworkInterface.GetAllNetworkInterfaces()) {
//check each IP address claimed by this Network Interface
foreach (UnicastIPAddressInformation i in nic.GetIPProperties().UnicastAddresses) {
//get the DNS host entry for this IP address
host = System.Net.Dns.GetHostEntry(i.Address.ToString());
if (!names.Contains(host.HostName)) {
names.Add(host.HostName);
}
//check each alias, adding each to the list
foreach (string s in host.Aliases) {
if (!names.Contains(s)) {
names.Add(s);
}
}
}
}
//add "simple" host name - above loop returns fully qualified domain names (FQDNs)
//but this method returns just the machine name without domain information
names.Add(System.Net.Dns.GetHostName());
return names;
}
Utilisez la classe System.Environment. Il a une propriété pour récupérer le nom de l'ordinateur, qui est récupéré à partir de NetBIOS. À moins que je ne comprenne mal votre question.
ou My.Computer.Name
Si vous avez besoin de la description de l'ordinateur, il est stocké dans le registre:
- clé:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\lanmanserver\parameters
- Nom de valeur:
srvcomment
- type de données:
REG_SZ (string)
AFAIK il n'a rien à voir avec dom un serveur, ou avec le réseau auquel le PC est attaché.
Pour tout ce qui concerne le réseau, je me sers de ce qui suit:
- Nom NETBIOS:
System.Environment.MachineName
- nom d'hôte:
System.Net.Dns.GetHostName()
- nom DNS:
System.Net.Dns.GetHostEntry("LocalHost").HostName
Si le PC a plusieurs noms NETBIOS, je ne connais pas d'autre méthode que de grouper les noms en fonction de l'adresse IP qu'ils résolvent, et même cela n'est pas fiable le si le PC a plusieurs interfaces réseau.
Je ne suis pas un programmeur .NET, mais la méthode System.Net.DNS.GetHostEntry ressemble à ce dont vous avez besoin. Il renvoie une instance de la classe IPHostEntry qui contient la propriété Aliases.
- 1. configurer ip alias et route, traiter avec réseau indisponible
- 2. Comment définir le suffixe de recherche DNS pour une carte réseau dans .net?
- 3. paramètres Alias dans SSIS
- 4. Attribution d'un alias à un alias dans Rails
- 5. Recherche de fichier récursive dans .net
- 6. Exécution d'applications .net sur un réseau protégé
- 7. Lire l'adresse MAC de la carte réseau dans .NET
- 8. NET SEND aux utilisateurs sur réseau
- 9. .Net - Relever le débit interface réseau actuel
- 10. réseau .NET suivi uniquement pour debug
- 11. Utilisation de la carte réseau .NET SqlConnection
- 12. Recherche d'un composant NET 3.5
- 13. Lucene .Net Recherche avec TermVector
- 14. Alias Javascript
- 15. Animation iPhone: comment l'anti-alias?
- 16. SQL - table alias scope
- 17. Utilisation d'un alias dans une clause WHERE
- 18. Comment obtenir des alias fonctionnant dans .gitconfig?
- 19. alias de table dans linq edmx
- 20. interface Java « Alias »
- 21. Rejoindre une table deux fois dans une deuxième table avec chaque alias interne joint aux deux alias d'une troisième table
- 22. Récupération par programme des colonnes de MS SQL View, y compris Alias dans .net/C#?
- 23. faire TextWrap et dedent dans Windows Powershell (ou dotNet alias .net)
- 24. Alias de vue Seam
- 25. rechercher des alias DNS
- 26. Table alias et datatables
- 27. Groupe par alias (Oracle)
- 28. Recherche de perte de paquets et de trace dans .NET
- 29. package réseau dans GHC
- 30. Supprimer l'élément tableau par pointeur d'élément (alias)
C'est le nom de la machine locale. Ce dont j'ai besoin, c'est l'alias réseau que le serveur de domaine a attaché à la machine. –