O método DNS é relativamente simples e prático para obter o endereço IP do servidor, como segue:
A seguir está uma citação:
private void ButtonIP_Click (objeto remetente, System.EventArgs e)
{ System.Net.IPAddress[] lista de endereços = Dns.GetHostByName(Dns.GetHostName()).AddressList;
if (listadeendereços.Length>1)
{TextLIP.Text = listadeendereços[0].ToString();
TextSIP.Text = addressList[1].ToString();
}
outro
{
TextLIP.Text = addressList[0].ToString();
TextSIP.Text = "Nenhuma conexão disponível";
}
}
Outra forma de obter o endereço IP e o endereço MAC do servidor é a seguinte:
A seguir está uma citação:
usando System.Management;
string stringMAC = "";
string stringIP = "";
ManagementClass MC = novo ManagementClass "Win32_NetworkAdapterConfiguration");
ManagementObjectCollection MOC= MC.GetInstances();
foreach (ManagementObject MO em MOC)
{
if ((bool)MO["IPEnabled"] == verdadeiro)
{
stringMAC += MO["Endereço MAC"].ToString();
TextMAC.Text = stringMAC.ToString();
string[] Endereço IP = (string[]) MO["Endereço IP"];
if(EndereçosIP.Comprimento > 0)
stringIP = EndereçoIP[0];
TextIP.Text = stringIP.ToString();
}
}
Obter o endereço IP da máquina local do cliente é bastante simples. O método é o seguinte:
A seguir está um fragmento citado:
usando System.Net;
TextIP.Text=Page.Request.UserHostAddress;
Se você deseja obter o endereço MAC da máquina local do cliente, é relativamente complicado. É necessário importar e chamar duas APIs e obtê-lo usando o protocolo ARP. Porém, isso só pode obter o endereço MAC da máquina na mesma. segmento de rede. Para segmentos de rede cruzada, você precisa usar a varredura IP ou usar o comando nbtstat no cmd para obter o endereço MAC. Também pode ser obtido lendo o valor do registro do sistema ou o banco de dados WMI. Se você tiver algum método simples e viável, deixe uma mensagem e me avise.