2017-04-15 45 views
0

我嘗試使用dotnet核心查找客戶端IP地址。需要爲當前用戶找到freegeoip.net的地理位置。當我打開這個頁面時,我收到了這樣的內容:89.190.94.34。但我的核心應用程序返回錯誤的IP。例如:172.19.0.5。我的應用程序腳本,用於獲取客戶端地址:dotnet核心錯誤客戶端IP地址

簡單:在本地主機上this.Request.HttpContext.Connection.RemoteIpAddress.ToString()

它是正確::1

是這個腳本錯誤?什麼是IP 172 ...以及我如何獲得正確的IP地址?

謝謝

回答

0

您應該知道IP地址有兩種類型,pubblic和private。公共地址是ISP提供的一個地址,可以被世界上任何有互聯網連接的人看到(如果他們有另一個ISP),私人地址是隻在你的局域網中有效的地址,所以很多人都有相同的私人地址在不同的局域網中。 現在澄清一下,你寫的第一個地址(89.190.94.34)是你的公開地址,第二個地址(172.19.0.5)是你的私人地址。 我真的不知道你在做什麼,但我希望這會有所幫助。我建議您在線瞭解有關範圍和其他IP地址的更多信息。

+0

謝謝你的回答。只需獲取正在使用應用程序的用戶的公共地址即可。但已經提到的命令,我得到了私人(你說)。是否有可能獲得公共IP地址? :-) –

+1

沒問題,你可以試試這個:string myIp = new WebClient()。DownloadString(@「http://icanhazip.com」).Trim(); – Juan

+0

完美。這正是我需要的。謝謝。 –