2011-03-23 3 views
2

BrowserA (NAT 뒤에 있음)가 NAT 뒤에있는 BrowserB와 통신 할 수 있도록 브라우저 대 브라우저 응용 프로그램을 개발하고 싶기 때문에 TURN 및 STUN 서버에 대해 읽었습니다. 이 경우 나는 TURN 프로토콜을 사용해야한다고 생각한다.외부 서버가없는 NAT 통과

내 질문 : 외부 phisical 서버가 필요없는 다른 솔루션이 있습니까? 단순한 소프트웨어 솔루션은 단순히 완벽 할 것입니다.

고맙습니다

답변

4

대답은 없습니다.

설명 : NAT는 네트워크 주소 변환을 나타냅니다. LAN (근거리 통신망)에서만 유효한 '개인 IP'를 WAN에서 유효한 '공용'IP 주소로 변환하는 것을 의미합니다 (즉, 인터넷에있는 야생의 야생 부분). NAT의 다른 쪽).

문제는 번역 된 주소가 LAN 외부에서만 볼 수 있다는 것입니다. 따라서, 당신은 그것을 읽을 수있는 연결 가능한 장치가 필요하고 그것을 당신 (또는 다른 동료들)에게 다시 보냈습니다.

서로 다른 NAT 뒤에있는 두 피어간에 개인 IP 주소가있을 때 항상 연결을 설정하려면 서버/중앙 피어가 필요합니다.

1

감사합니다. BrowserA (통신을 시작한 사람)가 BrowserB의 공개 IP를 알고 있지만 그 반대의 경우는 없다고 상상해 봅시다. 이 질문에 대한 대답은 같은 것입니까? 중간이없는

+1

가 명심 도움이 될 수 있습니다에 Serverfault이 질문을 이동. 그것은 NAT의 번역 정책에 따라 다릅니다. 질문에 대한 하위 질문은 A가 B의 공개 IP를 어떻게 알 수 있습니까? 그것은 a) A와 B로 이루어진 연결 B를 통해 B의 공개 번역을 본 다른 C 피어로부터 왔습니까? 귀하의 새로운 질문에 대한 대답은 '대부분의 경우 예'입니다. 이 주제는 Scribd에서 온라인으로 읽을 수있는 Practical JXTA II 서적에서 논의됩니다. NAT traversal은 복잡한 주제입니다. – JVerstry

2

http://samy.pl/pwnat/ 작품뿐만 아니라 각 연결 B는 WAN의 장치로 만드는을 위해, 다른 공공 주소를 사용할 수 있다는 것을 :