인터넷 주소정보를 초기화하는 코드를 먼저 알아보자.
struct sockaddr_in addr; char *serv_ip="211.217.168.13"; //IP주소 문자열 선언 char *serv_port ="9190"; //Port번호 문자열 선언 memset(&addr, 0, sizeof(addr)); //구조체 변수 addr의 모든 멤버 0으로 초기화 addr.sin_family=AF_INET; //주소체계 지정 addr.sin_addr.s_addr=inet_addr(serv_ip); //문자열 기반의 IP주소 초기화 addr.sin_port=htons(atoi(serv-port)); //문자열 기반의 Port번호 초기화 |
위 코드의 경우 IP주소를 입력하지만 IP를 입력하지 않고 초기화 시킬 수 있는 방법도 있다/.
struct sockaddr_in addr; char *serv_port ="9190"; //Port번호 문자열 선언 memset(&addr, 0, sizeof(addr)); //구조체 변수 addr의 모든 멤버 0으로 초기화 addr.sin_family=AF_INET; //주소체계 지정 addr.sin_addr.s_addr=htonl(INADDR_ANY); //문자열 기반의 IP주소 초기화 addr.sin_port=htons(atoi(serv-port)); //문자열 기반의 Port번호 초기화 |
위 코드의 경우 INADDR_ANY라는 이름의 상수를 통해서 서버의 IP주소를 할당하고 있다. 그래서 PORT번호만 일치하면 수신할 수 있게 된다.
'TCP & IP' 카테고리의 다른 글
5-1 TCP 소켓의 연결 (0) | 2021.10.06 |
---|---|
4-1 TCP기반 서버, 클라이언트 구현 (0) | 2021.10.06 |
3-3 문자열 정보를 정수로 변환하는 방법 (0) | 2021.10.06 |
3-2 바이트 순서와 네트워크 바이트 순서 (0) | 2021.10.06 |
3-1 인터넷 주소(IP)와 포트 번호 (0) | 2021.10.06 |