|
상황이 어떤 상황인지 더 자세히 알면 더 확실한 대답을 해드릴 수 있을것 같습니다.
1. 서버에 연결을 할 때 사용하는 프로토콜
(TCP 인지 UDP 인지 아니면 소켓 통신이 아닌 CGI 채팅 기능과 비슷한 HTTP등의 호출 방식인지)
2. 메신져 같은 P2P 연결인지 아니면 서버를 통해서 계속 채팅 데이터가 오고가는 시스템인지
우선, 간단하게 말씀드리자면 리얼IP에서 완전한 가상IP로 접속을 시도하는 방법은 없습니다.
다만 가상 IP쪽에서 하나의 Real IP를 통해서 포트 맵핑을 하는 경우가 있는데, 이 경우
포트 번호를 알아내서 그 쪽으로 접속을 하면 되지만, 이정도의 맵핑을 해 놓은 네트웍이면
순수하게 잘 정렬되어있을리는 만무합니다.
그래서 보통 서버측에서 접속된 IP로 시도를 해보고, 그렇지 않을경우 Echo를 시켜주는
방식을 사용합니다
P2P 방식의 경우에는 반드시 Real IP를 거쳐서 이동해야 하며, 그렇지 않은 서버 전송 방식의
경우에는 소켓이 연결되어 있는경우 연결된 소켓으로 데이터를 이동시키거나 비연결방식인
UDP인 경우 Response 를 때려주는 식으로 처리할 수 있습니다.
cuperido
차베스 님이 쓰신 글 :
: 안녕하세요~~^^ 항상 질문만 올리는 호접한 프로그램개발자입니다.
: 간단한 채팅프로그램 하나 못만들어서 징징거리는 사람입니다.
: 고정IP로 한개 IP를 할당받아서 공유기로 컴터 3개에 물려 돌아가는 시스템이 있슴다.
: 아~ 물론 그중에컴터 한개는 가상서버 설정을 해서 서버로 잡아놓긴 했습니다.
: 제가 쓰는컴터는 서버가 아닌 다른 컴터에서 공유기가 할당해주는 IP를 받아서
: 사용합니다.
: 근데.... 다른 메신저프로그램들을 보면.... 그 상황에서도 참 잘 돌아가던데...
: 제가 만든 채팅프로그램은 안돌아가는게 의문입니다.
: 채팅프로그램 서버는 우리고정아피받은 서버이고,
: 외부에서 제가만든 프로그램 가동시... 접속 잘됩니다...
: 문제는 거기서 제가 제 컴터에서 현재 접속한 사람과 채팅하려 하는데....
: 거참..... 안되네요....
: 그쪽에서는 단순히 고정IP번호만 알고....
: 공유기를 거처서 제 컴터까지 오게끔 하는 방법이 있으니까
: 다른 메신저들이 잘 돌아가는거같은데....
: 애공..... 고 방법은 책에도 안나와 있네요.....
: 제가 상황 설명을 잘 했는지는 모르겠습니다만...
: 필이 팍~~ 꽂히시는 분은 바리 답변 해주시면 대단히 감사하겠슴다~~
: 애고~ 참고로... 이사이트 없었으면 나 어떻게 프로그램 짰을까 ㅋㅋㅋ
:
|