BitSharp.Network.Messaging.GetExternalIPAddress C# (CSharp) Method

GetExternalIPAddress() public static method

public static GetExternalIPAddress ( ) : IPAddress
return System.Net.IPAddress
        public static IPAddress GetExternalIPAddress()
        {
            if (externalIPAddress == null || (DateTimeOffset.Now - externalIPAddressTime).TotalHours >= 1)
            {
                using (var webClient = new WebClient())
                {
                    var ipString = webClient.DownloadString(externalIPServiceUri).Replace("\n", "");

                    if (IPAddress.TryParse(ipString, out externalIPAddress))
                    {
                        externalIPAddressTime = DateTimeOffset.Now;
                    }
                }
            }

            return externalIPAddress;
        }