C#
2013.02.01 15:31

자신의 IP주소 확인하기

조회 수 23017 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

+ - Up Down Comment Print
?

단축키

Prev이전 문서

Next다음 문서

+ - Up Down Comment Print

C#으로 자신의 IP를 확인 하는 방법입니다.

 

using System.Net;
using System.Net.Sockets;
//네임스페이스를 추가 해 줍시다..
 
public string Get_MyIP()
{
    IPHostEntry host = Dns.GetHostByName(Dns.GetHostName());
    string myip = host.AddressList[0].ToString();
    return myip;
}

 

return 값으로는 ip를 리턴 해주고 있습니다..근데 현재 이 소스는 닷넷 프레임워크 2.0 이상에서는 사용을 하지 않도록 권장(?) 하고 있습니다..아래 코드는 GetHostEntry를 이용하여 IP 주소를 받아 내고 있습니다.하지만 비스타 이상에서는 IPv6으로 IP주소를 출력하고 있습니다.if문을 통하여 IP주소 체계가 IPv4인 경우에만 출력하도록 해 주고 있습니다.

 

 

/// <summary>
/// 클라이언트 IP 주소 얻어오기...
/// </summary>
public static string Client_IP
{
    get
    {
        IPHostEntry host = Dns.GetHostEntry(Dns.GetHostName());
        string ClientIP = string.Empty;
        for (int i = 0; i < host.AddressList.Length; i++)
        {
            if (host.AddressList[i].AddressFamily == AddressFamily.InterNetwork)
            {
                ClientIP = host.AddressList[i].ToString();
            }
        }
        return ClientIP;
    }
}



위와 같이 작성시 현재 컴퓨터의 IP를 알아낼수 있지만, 공유기를 사용하고 있는 컴퓨터의 경우 내부 IP만 출력됩니다. 외부 IP를 알아내려고 하면, 외부 사이트를 이용하는 방법이 있습니다. 몇몇 사이트들이 접속한 컴퓨터의 IP를 보여주는 곳이 있는데, 이 페이지를 이용해서 자신의 IP를 긁어오는거죠.

 

 

public void GetMyIPWan()
{
    // 외부아이피 알려주는 사이트에서 문자열 가져오기 
    String WanIP = new WebClient().DownloadString("http://www.whatismyip.com/automation/n09230945.asp");
    Console.WriteLine("IP Address : {0} ", WanIP);
} 

 


Dreamy의 코드 스크랩

내가 모으고 내가 보는

List of Articles
번호 분류 제목 날짜 조회 수 추천 수
236 LINUX [Shell Script] Shell 스크립트에서 매개변수 치환 2014.09.23 29758 0
235 LINUX [Shell Script] 파일을 한줄씩 읽어오기 2014.10.03 56485 0
234 Android logcat, main+kernel로그 합치는 로그 2014.10.07 10391 0
233 일반 배치파일(bat)에서 날짜-시간을 파일 명으로 쓰기 2014.10.10 29336 0
232 Android 에러 넘버 ErrorNo in Linux 2014.10.14 9460 0
231 C# C# 배열 array 2014.10.22 12630 0
230 LINUX [Shell Script] 쉘 스크립트에서의 사칙연산과 문자열 자르기 2014.11.01 81872 0
229 LINUX [Shell Script] 쉘 스크립트에서 getopt 사용하는 법 2014.11.09 17021 0
228 LINUX 리눅스에서 특정작업 or 명령어 반복하기 Crontab 2014.11.10 10377 0
227 LINUX shell 에서 background로 명령어 수행하기 2014.11.11 37213 0
226 Android L버전 32/64bit tip 및 multi user 관련 adb 명령어 2014.11.18 8489 0
225 업무 Force To Crash Guide 강제로 Crash 내기 secret 2014.11.27 0 0
224 Android ion memory 사용량 확인하기 2014.12.03 8935 0
223 업무 SurfaceFlinger dump 하기 secret 2014.12.04 0 0
222 업무 ION memory allocator secret 2014.12.15 0 0
목록
Board Pagination ‹ Prev 1 ... 14 15 16 17 18 19 20 21 22 23 ... 34 Next ›
/ 34

나눔글꼴 설치 안내


이 PC에는 나눔글꼴이 설치되어 있지 않습니다.

이 사이트를 나눔글꼴로 보기 위해서는
나눔글꼴을 설치해야 합니다.

설치 취소

Designed by sketchbooks.co.kr / sketchbook5 board skin

Sketchbook5, 스케치북5

Sketchbook5, 스케치북5

Sketchbook5, 스케치북5

Sketchbook5, 스케치북5