![]() |
Neste artigo veremos como converter um endereço IP para seu hostname e vice-versa. |
O que você faz quando precisa saber o endereço IP de uma máquina na sua rede local ?
|
|
Abre um prompt de comandos e executa o comando ipconfig:

Podemos também usar a classe estática Dns do namespace System.Net para resolver um DNS.
| DNS ou Domain Name System, traduz os endereços IPs para nomes de domínios, assim para acessar uma página na web você digita a sua URL e o DNS traduz o nome de domínio para o endereço IP do servidor onde a página esta hospedada. |
Assim, o método GetHostEntry da classe Dns retorna um tipo IPHostEntry que pode ser usado para acessar o nome do host usando sua propriedade HostName.
Crie um projeto do tipo Console App (.NET Framework) no VS 2017 Community.
1- Resolvendo o Endereço IP para nome do host
Inclua o código abaixo na classe Program.cs :

Executando o projeto:

2- Resolvendo o nome do host para o endereço IP

Executando o projeto teremos:
Um
IPHostEntry pode associar vários endereços IP a um
único nome de host por meio da
propriedade AddressList que é um array de objetos
IPAddress, cada um dos quais
detém um único endereço IP.
Depois que o IPHostEntry é resolvido, a AddressList pode ser iterada usando um laço foreach para criar uma string que mostra todos os endereços IP para o nome de host. Se a entrada não puder ser resolvida, uma exceção SocketException será lançada.
Também existem os métodos GetHostByAddress e GetHostByName que podemos usar conforme mostra o exemplo a seguir, mas essas API estão obsoletas:
using System;
using System.Net;
using static System.Console;
namespace CshpWeb.HostByName
{
class Program
{
static void Main(string[] args)
{
while (true)
{
WriteLine("Informe o nome do HOST :");
string nomeHost = ReadLine();
try
{
IPHostEntry hostInfo = Dns.GetHostByName(nomeHost);
Console.WriteLine("Nome do Host : " + hostInfo.HostName);
Console.WriteLine("Lista de Endereços IPs : ");
for (int index = 0; index < hostInfo.AddressList.Length; index++)
{
Console.WriteLine(hostInfo.AddressList[index]);
}
}
catch (System.Exception ex)
{
WriteLine($"Não foi possível resolver o host : {nomeHost} - " + ex.Message);
}
}
}
}
}
|
Pegue o código completo
aqui:
CShp_Web.zip
(disse Jesus) - "E a vida
eterna é esta: que te conheçam, a ti só, por único Deus
verdadeiro, e a Jesus Cristo, a quem enviaste."
João 17:3
|
Veja os
Destaques e novidades do SUPER DVD Visual Basic
(sempre atualizado) : clique e confira !
Quer migrar para o VB .NET ?
Quer aprender C# ??
Quer aprender os conceitos da Programação Orientada a objetos ? Quer aprender o gerar relatórios com o ReportViewer no VS 2013 ? |
Gostou ?
Compartilhe no Facebook
Compartilhe no Twitter
Referências:
Super DVD Vídeo Aulas - Vídeo Aula sobre VB .NET, ASP .NET e C#
VB.NET - Obtendo o endereço IP e o nome do Host - Macoratti
C# - Obtendo o endereço MAC - Macoratti
VB .NET - Obtendo informações das interfaces de rede local - Macoratti
C# - Compartilhando arquivos - Cliente/Servicor (socket) - Macoratti
C # - Criando um Chat - Parte 2 - O Servidor - Macoratti