webForumDet fria alternativet

Komma åt lokal IP

.NET

2 svar · 346 visningar · startad av haagel

Medlem sedan feb. 2006134 inlägg
Frågan#1

Jag vill skapa ett IPAddress-objekt med den lokala datorns IP-adress. Jag har sökt runt på webben och hittat flera lösning liknande denna:

IPHostEntry ipHostInfo = Dns.Resolve("localhost");
IPAddress ipAddress = ipHostInfo.AddressList[0];

Problemet är att metoden Dns.Resolve() är "deprecated" så den känns inte bra att använda? Hur gör man samma sak men utan att använda denna metod?

Medlem sedan dec. 19996 721 inlägg
#2

Enligt dokumentationen så använder man GetHostByName, och svaret är alltid 127.0.0.1

Medlem sedan feb. 2006134 inlägg
#3

Fast GetHostByName är också "deprecated"... :(

Jag hittade en lösning dock:

IPAddress[] IPlista = Dns.GetHostAddresses(Dns.GetHostName());
IPAddress clientIP = IPlista[0];
267 ms totalt · 4 externa anrop · v20260731065814-full.86ec41c2
135 ms — deklarationer (db)
0 ms — hämta statistik (cache)
129 ms — hämta tråd, inlägg och bilagor (db)
123 ms — ändringar (db)