Алтернативно, претходни задатак можемо решити читајући DNS информације о хосту. Овај метод искаче у гугл претрази и преписан је на гомили сајтова као подразумевани метод за приказ IP адреса хоста, а заправо је бескористан ако не ради DNS. За израду ове апликације користићемо класe IPHostEntry
, IPAddress
и Dns
из именског простора System.Net
, као и енумерације из именског простора System.Net.Sockets
. Код апликације је прилично једноставан и интуитиван. Читају се све DNS информације о хосту, па се из њих креира листа IP адреса. Из креиране листе исписују се само IPv4 адресе.
using System;
using System.Net;
using System.Net.Sockets;
namespace IPadrese
{
internal class Program
{
static void Main(string[] args)
{
IPHostEntry dnsInformacije = Dns.GetHostEntry(Dns.GetHostName());
IPAddress[] ipAdrese = dnsInformacije.AddressList;
for (int i = 0; i < ipAdrese.Length; i++)
if (ipAdrese[i].AddressFamily == AddressFamily.InterNetwork)
Console.WriteLine("IPv4 adresa: {0} ", ipAdrese[i].ToString());
}
}
}
Тест пример:
IPv4 adresa: 192.168.0.11
Документација
System.Net Namespace: https://learn.microsoft.com/en-us/dotnet/api/system.net
System.Net.Sockets Namespace: https://learn.microsoft.com/en-us/dotnet/api/system.net.sockets