NAT 홀펀칭

2007.10.25 19:07

단장 조회 수:1294 추천:49

홀펀칭 질문입니다.  올려짐: 2007-10-15 18:51
  

--------------------------------------------------------------------------------

구글님과 gpg검색으로 홀펀칭을 만들어봤는데 제대로 되지 않아 질문드립니다.

1. 클라이언트들은 우선 서버에게 UDP로 핑메세지를 날립니다.(내부아이피를 전송)
2. 우선 서버는 공인IP로 각각 클라이언트의 내부/외부 아이피를 얻어옵니다.
3. 서버도 클라이언트들에게 퐁 메세지를 날립니다.
4. 주기적으로 핑퐁 메세지를 날려 NAT맵핑을 유지합니다.
5. 홀펀칭을 시도할때 각각 클라이언트들에게 상대방 내부/외부 아이피을 알려줍니다.
6. 각 클라이언트들의 상대방의 내부/외부 아이피로 핑 메세지를 날립니다.(0.2초 간격으로 10회)
7. 각 클라이언트들에게 퐁메세지가 오면 메세지 온 클라이언트를 홀펀칭 선공이라고 판단하고 list에 저장합니다.

이 상황에서 공인 IP에 있는 클라이언트와 NAT 클라이언트는 홀펀칭은 가능합니다.
지금 테스트는 같은 NAT안에 있는 두 클라이언트가 핑 메세지를 받지 못합니다.
NAT타입은 Port Restricted타입입니다.

예를 들어 A클라이언트는 내부아이피 192.168.0.10(포트: 1779) 외부아이피 121.141.76.130(포트 : 11550)
B클라이언트는 내부아이피 192.168.0.61(포트: 1764) 외부아이피 121.141.76.130(포트 : 1848)

이렇게 체크되고 있습니다.

현재 같은 NAT는 6번까지만 진행되고 퐁메세지를 오질 않습니다. 지금 제가 잘못이해하고 있는지 질문드립니다.

모두 즐프 되세요~

위로      


나디아



가입: 2004년 8월 7일
올린 글: 58

같은 네트워크....  올려짐: 2007-10-16 09:15
  

--------------------------------------------------------------------------------

두개의 클라이언트가 같은 비공인 네트워크 내부이고, 비공인쪽으로 서로 핑을 보냈는데
(비공인 바인드 아이피:비공인 바인드 포트)
정보를 받지 못한다면, 파이어월과 같은 문제가 아닐까요?
파이어월과 같은 외부 인자가 없다면 이론상으로 전혀 문제가 없어야 정상입니다.

그럼 꼭 성공하세요..
_________________
^___^

위로      


비회원
손님





같은 nat 내에서...  올려짐: 2007-10-16 15:13
  

--------------------------------------------------------------------------------

같은 Nat 에서 공인 ip/port 로 통신할때는 안되는 nat 가 있습니다.(예를 들면 iptime 시리즈)
이때는 Nat 내의 내부 ip 로 서로 핑을 날려 주면 됩니다.
예를 들어 A클라이언트는 내부아이피 192.168.0.10(포트: 1779) 외부아이피 121.141.76.130(포트 : 11550)
B클라이언트는 내부아이피 192.168.0.61(포트: 1764) 외부아이피 121.141.76.130(포트 : 1848)
일떄는 19.168.0.10(포트:1779) 와 192.168.0.61(포트: 1764) 를 가지고 서로 통신하면 됩니다.

위로    


SSys



가입: 2006년 2월 24일
올린 글: 6

   올려짐: 2007-10-19 16:06
  

--------------------------------------------------------------------------------

나디아님 비회원님 감사합니다. 로직문제가 아니라 소켓이 여러개인데 엄한 포트에다 보내고 있었습니다.(코딩은 맨정신이 최고~) 또 마침 공유기가 iptime꺼라서 좋은것도 알게되었습니다. 하나 물어볼께 있는데요. 보통 클라이언트에서 UDP 포트 사용할때 바인드 하셔서 포트 지정하시고 사용하시나요? 아니면 바인드 안하시고 자동으로 할당되는 포트를 사용하시는지 궁금합니다. 모두 즐프되세요~

위로      


아노아



가입: 2002년 2월 8일
올린 글: 214
소속: 모 회사 청소과.
   올려짐: 2007-10-24 23:16
  

--------------------------------------------------------------------------------

일단 바인드해보고 바인드안되면 그냥 할당되는 포트사용합니다. :$ 아무래도 바인드를 해야 공유기 등을 통해서 특정 포트만 멥핑해주는 작업등이 되니까요

댓글 0

파일 첨부

여기에 파일을 끌어 놓거나 파일 첨부 버튼을 클릭하세요.

파일 크기 제한 : 0MB (허용 확장자 : *.*)

0개 첨부 됨 ( / )
 
목록
번호 제목 글쓴이 날짜 조회 수
44 [C++] extern C에 대해 단장 2007.05.01 1256
43 형법총론 핵심정리 단장 2006.04.19 1246
42 네크로노미콘 단장 2006.10.27 1234
41 [공지] 게시판 용도 김도완 2005.06.16 1178
40 맥 탄생비화 (1) 단장 2005.07.04 1177
39 니콜라 테슬라 단장 2005.11.26 1168
38 윈도우에서 사용하는 포트들 단장 2007.09.06 1157
37 일본어 날짜 단장 2008.02.19 1150
36 평 <-> 평방미터 도량형 환산. 단장 2007.08.24 1146
35 초간단 VTune 세팅법 [3] 김도완 2005.06.16 1137
34 개인적으로 만들어 본 리눅스 게임 서버 FAQ 단장 2007.11.27 1125
33 원진살 단장 2007.04.14 1092
32 CPU 평균온도 단장 2005.07.13 1087
31 요요회사간의 베어링 규격 단장 2005.12.05 1084
30 원핸드 스트링 기본. 마운트. [1] 단장 2005.12.05 1075
29 음식 칼로리표 -_-;;; [3] 단장 2005.07.14 1040
28 Mercedes-Benz, BMW, Audi 단장 2007.01.20 1030
27 비싼 카메라 이야기 단장 2005.11.21 1000
26 순수 탄소 - 퓔러렌 단장 2005.07.19 989
25 Direct3D API들의 실행 사이클 단장 2005.07.15 988