can't connect 메세지만~
telnet 210.200.152.21 13 이런식으로 하면
시간날짜가 나오는데여...
아래 예제를 실행시키면~
시간날짜는 안나오고~
can't connect 메시지만 뜨네요.
왜 안되는지 모르겠네여...^^a
#include
#include
#include
#include
#define BUF_LEN 128
int main( int argc, char *argv[] )
{
int s, n;
struct sockaddr_in server_addr;
char *haddr;
char buf[BUF_LEN+1];
if( argc != 2 )
{
printf( "usage %s IP_address\n", argv[0] );
return -1;
}
haddr = argv[1];
// 소켓 생성
if( (s = socket(PF_INET, SOCK_STREAM, 0)) < 0 )
{
printf( "can't create socket\n" );
return -1;
}
// 서버의 소켓 주소 구조체 server_addr을 '\0'으로 초기화..
bzero( (char *)&server_addr, sizeof(server_addr) );
// sever_addr의 지정
server_addr.sin_family = AF_INET;
server_addr.sin_addr.s_addr = inet_addr(haddr);
server_addr.sin_port = htonl(13);
// 연결 요청
if( connect(s, (struct sockaddr *)&server_addr, sizeof
(server_addr) ) < 0 )
{
printf( "can't connect.\n" );
return -1;
}
// 서버가 보내오는 daytime 메시지의 수신 및 화면 출력
while( (n = read(s, buf, BUF_LEN )) > 0 )
{
buf[n] = '\0';
printf( "%s", buf );
}
close(s);
}
Re: can't connect 메세지만~
네트웍 플밍 관련 책을 잘 살펴 보세요..
PF_INET => AF_INET, htonl() => htons()로 함 해보시길...
Re^2: can't connect 메세지만~
앗..결과값이 나오네요~
감사합니당^^
댓글 달기