DirectPlay DirectPlay C++ 샘플 NatPeer   [목차열람] [주소복사] [슬롯비우기]
NatPeer
 
Microsoft DirectX 9.0

NatPeer


NATPeer 샘플을 사용하면 네트워크 어드레스 변환 (NAT) 장치를 경유한 사용자가,IDirectPlay8NATResolver 서버의 주소와 생략 가능한 패스워드를 지정할 수 있다. 이 정보는 Host,EnumHosts, 및 Connect 를 호출할 때의 주소 해결에 사용된다. NAT 의 더 자세한 정보는, 「네트워크 어드레스 변환, 파이어 월(fire wall), 프록시」를 참조할것.

패스

소스 파일 : (SDK 루트) \Samples\C++\DirectPlay\NatPeer

실행 가능 파일 :(SDK 루트) \Samples\C++\DirectPlay\Bin

사용자가이드

프로그램을 기동 하면, 다이알로그 박스가 표시되어 NAT 의 어드레스 변환을 유효하게 하는 옵션을 포함해 접속 정보를 지정할 수 있다. NAT 의 주소 해결을 유효하게 하면, Microsoft® DirectPlay® 는 [Server Address] 와 [Password] 를 사용해, 유니버설 플러그 앤 플레이 (UPnP)와 호환성이 없는 NAT 를 경유한 player의 외부 주소를 해결한다. 사용자가 세션 호스트를 선택하고 있지 않는 경우, 2 번째의 다이얼로그가 표시되어 거기서 사용자는 액티브한 세션을 검색해, 그 세션에 접속할 수 있다.

일단 세션에 들어가면 게임의 동작은 SimplePeer 와 유사하다.

  Internetwork Packet Exchange (IPX) 서비스 프로바이더를 선택했을 경우, DirectPlay 에 주소의 검색을 실행시키려면 ,[use DPNSVR] 체크 박스를 온으로 한다.

프로그래밍 정보

NAT 주소 해결 옵션을 온으로 하면 DPNA_KEY_NAT_RESOLVER 키와 DPNA_KEY_NAT_RESOLVER_USER_STRING 키아래에 로컬 장치 주소의 구성 요소로서 [Server Address] 필드와 [Password] 필드가 추가된다.

DPNA_KEY_NAT_RESOLVER 구성 요소에는, 복수의 칸마 단락 서버를 지정할 수 있다. 각 서버의 속도가 동시에 테스트되어 최초의 응답이 사용된다. 응답하는 서버가 없는 경우에서도,Host,Connect, 또는 EnumHosts 의 호출은 성공하지만, 로컬의 UPnP 접속 정보만 사용한다.

이러한 해결 서버를 호스트로 하려면 리소스가 필요하기 때문에, 임의의 player가 서버를 사용하지 않게 설정할 수 있다. 그 때문에(위해)는, DPNA_KEY_NAT_RESOLVER_USER_STRING 주소 구성 요소를 사용한다. 이 값은 검증을 위해서(때문에) 해결 서버에 직접 건네받는다. 서버는 필요에 따라서 응답할지 어떨지를 선택할 수 있다. 사용자 캐릭터 라인은 네트워크를 개입시켜 clear text로 건네받는다. 따라서, 텍스트에 중요 정보가 포함되어 있을 가능성이 있는 경우, 송신하기 전에 암호화하는 것.

IDirectPlay8NATResolver 서버의 처리 및 NAT 주소 해결의 더 자세한 정보는, 소프트웨어 개발 킷 (SDK)에 준비되어 있는 NATResolver 샘플을 참조할것.



© 2002 Microsoft Corporation. All rights reserved.
↑TOP