[C#] Get My Public IP
2016. 9. 6. 11:14ㆍCoders
내 Public IP 를 얻는 코딩.(.NET 4.0 이상)
try { System.Threading.Tasks.Task<string>[] tasks = new[] { System.Threading.Tasks.Task<string>.Factory.StartNew( () => new System.Net.WebClient().DownloadString(@"http://api.ipify.org/").Trim() ), System.Threading.Tasks.Task<string>.Factory.StartNew( () => new System.Net.WebClient().DownloadString(@"http://icanhazip.com/").Trim() ), System.Threading.Tasks.Task<string>.Factory.StartNew( () => new System.Net.WebClient().DownloadString(@"http://ipv4bot.whatismyipaddress.com/").Trim() ), System.Threading.Tasks.Task<string>.Factory.StartNew( () => new System.Net.WebClient().DownloadString(@"http://www.trackip.net/ip").Trim() ), System.Threading.Tasks.Task<string>.Factory.StartNew( () => new System.Net.WebClient().DownloadString(@"http://v4.ident.me/").Trim() ), System.Threading.Tasks.Task<string>.Factory.StartNew( () => new System.Net.WebClient().DownloadString(@"https://public-ip.info/ip.txt").Trim() ), System.Threading.Tasks.Task<string>.Factory.StartNew( () => new System.Net.WebClient().DownloadString(@"https://wtfismyip.com/text").Trim() ) }; int index = System.Threading.Tasks.Task.WaitAny(tasks); return tasks[index].Result; } catch { }
코드 상에 나타나는 URL은 모두 Plain Text 로 IPv4 를 리턴 합니다.
해당 서버들이 각각 먹통이 될 수도 있기 때문에 여러 서버에 걸쳐서 가져 옵니다.
'Coders' 카테고리의 다른 글
Postgresql on Windows Server 2008 R2 (0) | 2016.11.08 |
---|---|
[MSSQL] CREATE OR REPLACE PROCEDURE (0) | 2016.08.17 |
[C#] Get Project Resource by Name (0) | 2016.06.24 |