1. IPHostEntry
IPHostEntry ipEntry = Dns.Resolve(_strHostName);
위의 문장은
Resolve() 메서드를 이용하여 도메인 이름으로 부터 IP주소를 얻어오는 방법이다.
예를 들어 위의 변수
static string _strHostName = "www.naver.com"; 로 선언한다면 네이버의 IP 주소를 얻어와서 저장하는 것이다.
위의 Dns의 메서드인 ReSolve()은 IPHostEntry값으로 리턴해주는 가장 많이 사용되어지는 메서드이다. MSDN에서 꼭한번 읽어보자.
IPHostEntry클래스에서 가장 중요한 메소드는 AddressList이다
AddressList은 호스트와 연결된 IP 주소 목록을 가져오거나 설정합니다.(배열로 저장)
2. IPEndPoint
네트워크 프로그램에서 IP와 연결할 포트를 합쳐서 종점(End Point)라 부른다.
바로 이놈을 소켓에 알려주고 지정된 IP의 호스트를 찾아 포트를 연결하여 통신이 되도록 하는 것이다.
이런 종점을 프로그래밍적으로 표현한 클래스가 바로 IPEndPoint이다.
IPEndPoint ipEndPoint = new IPEndPoint(ipEntry.AddressList[0], 80);
위의 문장은 IPEndPoint객체를 생성하는 있는 예제인데 생성자의 멤버변수로 위에서 만든 IPHostEntry객체의 IP주소와 포트넘버를 전해주고 있는 상황이다.