IPv6
개념
IPv6 로의 전환은 필수적입니다.
애플도 IPv6의 앱과 업데이트만을 허용한다고 2016년 6월 1일에 결정 했습니다.
(상세 내용은 이 기사)를 읽어 보시는 것을 권장 합니다.
결과적으로 일부 개발자들은 걱정이 될 수 도 있습니다.
걱정하지 마세요. Photon 이 알아서 다 해줍니다.
완전하게 IPv6 로 전환하는 것은 매우 시간이 걸린다는 것을 알고 있습니다.
지원하는 SDK
현재, 다음의 Photon SDK 가 IPv6 를 지원합니다:
- Photon .NET (C#) Client SDK:
4.1.x.x버전 부터 - Photon Native (C++/Objective-C) Client SDKs:
4.1.x.x버전 부터 - PUN: 버전
1.68부터.
유니티는 버전 5.3.4p4, 4.7.2, 5.1.5 와 5.2.5 부터 IPv6를 지원 합니다.
유니티 블로그 포스트에서 더 많은 정보를 찾아 보세요.
Photon 서버 환경 설정
Hostnames
PublicHostName 을 Photon 어플리케이션의 환경설정 파일(컴파일 전에는 "app.config" , 컴파일 후에는 "{DLL_name}.config")에 다음과 같이 서버의 도메인명으로 설정하세요.
XML
<setting name="PublicHostName" serializeAs="String">
<value>YOURhost.YOURdomain.com</value>
</setting>
예제:
Photon LoadBalancing 어플리케이션에 대해서 "GameServer\bin\Photon.LoadBalancing.dll.config" 파일내 게임서버에 대해서 수행되어야 합니다.
IPv6-ready
- IPv6 의 "::" 는 IPv4 의 "0.0.0.0" 와 동등 합니다.
- IPv6 의 "::1"는 IPv4 의 "127.0.0.1" (루프백 주소)와 동등 합니다.
XML
<TCPListener
IPAddress="0.0.0.0"
IPAddressIPv6="::"
Port="4531"
DisableNagle="true"
InactivityTimeout="5000"
OverrideApplication="Game">
</TCPListener>
Photon 어플리케이션의 ".config" 파일(컴파일 전에는 "app.config" , 컴파일 후에는 "{DLL_name}.config")에서 다음 처럼 PublicIPAddressIPv6 를 "::1" 로 설정 하세요:
XML
<setting name="PublicIPAddressIPv6" serializeAs="String">
<value>::1</value>
</setting>
문제 해결
IPv6 DNS64/NAT64 시뮬레이션
우리는 Apple 이 제안하고 있는 방법을 이용하여 로컬 환경에서 테스트 하는 것을 권장 합니다.
Mac 을 여기에서 설명한 것 처럼 로컬 WiFi를 설정할 수 있습니다.
IP 주소의 도메인 명
도메인 명이 공개적으로 이용할 수 있는지 구글의 공개 DNS 에 nslookup 커맨드 라인 툴을 이용하여 다음과 같이 체크 하는 것을 권고 합니다:
nslookup <YOURhost.YOURdomain.com> 8.8.8.8
<YOURhost.YOURdomain.com> 는 내가 가지고 있는 도메인 명으로 변경 해야 합니다 .
결과가 IPv6 또는 IPv4 주소가 예상한 결과로 나오는지 확인 해주세요.
서버에 접속 할 수 있는지 체크
인터넷에서 내 서버가 사용 할 수 있는지를 여러 방식 중에서 선택하여 검증 할 수 있습니다:
ping <도메인명 또는 IP 주소>- OS 에 따라서
traceroute <도메인명 또는 IP 주소>또는tracert <도메인명 또는 IP 주소>를 사용. telnet <도메인명 또는 IP 주소> <port>