Komma åt lokal IP

.NET

2 svar · 360 visningar · startad av haagel

Medlem sedan feb. 2006134 inlägg
Trådstart#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];
250 ms totalt · 4 externa anrop · v20260731065814-full.d34c6d5a
117 ms — deklarationer (db)
0 ms — hämta statistik (cache)
128 ms — hämta tråd, inlägg och bilagor (db)
118 ms — ändringar (db)