C++Builder Programming Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
C++빌더 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
컴포넌트/라이브러리
메신저 프로젝트
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
볼랜드포럼 광고 모집

C++빌더 Q&A
C++Builder Programming Q&A
[51435] [질문]인디 UDP 사용법에 관해서
초보맨 [] 2291 읽음    2007-12-03 09:23
안녕하세요?
상당히 초보적인 질문인데 부끄럽네요. UDP는 처음이라서

실제아이피를 쓰는 서버가있고, 가상아이피를 쓰는 클라이언트가 있다고 가정했을때입니다.
인디에 TIdUDPServer, TIdUDPClient 컴포넌트를 이용했습니다.

UDPClient ----> UDPServer 로 데이터는 잘 갑니다.
그런데 서버에서 클라이언트로 응답을 해주는 메시지가 도착하지 않습니다.

서버는 UDPRead이벤트에서 코딩하고
클라이언트는 UDPClient->ReceiveBuffer 를 해주는 쓰레드를 만들었습니다.
로그를 남겨보니 서버에선 잘 읽고 데이터도 제대로 들어왔더군요.
서버에서 클라이언트로 보내는데서 문제가 있습니다.

UDP의 경우 NAT 문제로 데이터가 전달되지 않을수 있다는건 알고있습니다.
그래서 홀펀칭을 이용하려고 합니다.
근데 홀펀칭이 100% 되는게 아니기 때문에 그때 서버를 통해 데이터를 중계해주려고 합니다.
지금하는게 중계서버 부분인데 여기서도 버벅거리는군요.

길게적었는데..
제 질문을 요약하겠습니다.
UDP 채팅프로그램을 만든다고 가정했을때, 1명이 대화한 내용을 다른 한명에게도 전해줘야 하는데
유저는 NAT아래에 있습니다.
TIdUDPServer, TIdUDPClient 컴포넌트를 이용할때 어떻게 구현이 가능한지요?
홀펀칭을 쓰지 않고 불가능합니까?

+ -

관련 글 리스트
51435 [질문]인디 UDP 사용법에 관해서 초보맨 2291 2007/12/03
51441     Re: 답이 될지 모르겠습니다만... ^^ 푸른노래 3067 2007/12/04
51439     Re:[질문]인디 UDP 사용법에 관해서 kylix 2127 2007/12/03
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.