C#
2013.02.01 15:31

자신의 IP주소 확인하기

조회 수 23052 댓글 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
번호 분류 제목 날짜 조회 수 추천 수
341 LINUX UNIX COMMAND (5) : grep, sed, awk 등 2006.02.06 21319 66
340 Android Wifi을 이용한 adb 연결 2012.02.28 20977 0
339 C# Textbox에 숫자만 입력가능하게 설정하기 2013.04.22 20954 0
338 LINUX 우분투(Ubuntu) 설치된 패키지 목록 확인하기 2020.02.11 20777 0
337 일반 나사 규격 2016.10.19 20740 0
336 Android repo 명령어 (command) 설명 init sync diff prune forall upload download start status 2013.05.30 20623 0
335 LINUX [util] tar 사용법 2006.05.01 20582 7
334 Android Android Packet Dump (tcpdump로 실시간 packet 잡기) 2015.05.06 20375 0
333 Pi [Arduino] 아두이노 나노 Arduino Nano Spec 1 file 2016.09.07 20314 0
332 Android ADB 에서 cpu 사용률 보기 2013.04.29 20280 0
331 일반 자주 사용하는 아주 유용한 파워포인트 단축키 [Useful Short-cut for PowerPoint] 2013.04.01 20141 0
330 C# 공유데이터 잠금. Critical Section 사용, lock() 함수 2012.06.11 20089 0
329 C# Web URL로부터 파일 다운로드 하기 2015.08.20 19848 0
328 Android Kernel 로그 레벨 설명 2012.12.11 19722 0
327 일반 배치파일(bat)에서 명령 실행결과를 변수에 저장하는 방법 2017.07.05 19154 0
목록
Board Pagination ‹ Prev 1 ... 7 8 9 10 11 12 13 14 15 16 ... 34 Next ›
/ 34

나눔글꼴 설치 안내


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

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

설치 취소

Designed by sketchbooks.co.kr / sketchbook5 board skin

Sketchbook5, 스케치북5

Sketchbook5, 스케치북5

Sketchbook5, 스케치북5

Sketchbook5, 스케치북5