공유기 - 워프 stun 연결 실패에요
노트를 잘 하여야 하지 않겠나요.
asus, iptime 이런 흔한 공유기이고 stun 연결에 실패해요.
webrtc ice 테스트 실패
커스텀 stun 테스트 실패
공유기(라우터)는 tcp나 udp 포트 고갈 문제를 가지고 있는데 만일 A 가상 회선에서 1~65535 포트넘버를 모두 사용해버리면 B 가상회선은 인터넷을 못쓰게 되어요. 이럼 이거를 해결하는 것이 핵심 기술이지 않겠나요.
tcp와 udp 헤더에 port 필드를 살펴보면 16비트로 0~0xFF(65535)까지 넣을 수 있어서 이래요.
라우터에서 새롭게 나가는 연결을 확인하고 엔드포인트(ip:port)를 키로 사용하고 가상 회선에 포워드 해주면되고, 이럼 같은 포트 넘버를 사용한다 하더라도 A 회선거인지 B회선거인지 구분이 가능하여서 이케 되어요.
물론 .. 앵간하게 대충 만든 공유기도 분명히 존재할 거이고 이럼 위에 stun은 반드시 성공해요. 엔드포인트가 아니고 port만 키로 사용하고 가상 회선에 포워딩 해버린 상태가 대표적인 예시가 되겠쩌.
위에 과정이 방화벽이랑 유사하게 되는데 이럼에도 불구하고 연결을 하고 이러면 목적지 주소에 포트번호 1 부터 65535 모두 1패킷 씩 보내면 되어요. 이럼 공유기에 내장된 메모리에 심각한 낭비를 발생하여서 인터넷 연결이 끊어져버릴 수도 있쩌. 공유기가 다운되었거나 ..
이거는 nat - symantic nat에 특징으로 인하여 생기는 문제여요.
symatnic nat은 특이하게 목적지 마다 다른 포트 번호를 부여하여서 stun 서버에 10101 포트를 사용했다 확인을 하여도 목적지가 바뀌면 10102를 사용하여서 앵간하게 되어요. 10101과 10102는 예시이고 실제로는 15242 16842 이케 무작위로 차이가 발생하여서 확률적으로 연결을 기대하기 어려워요. 물론 .. 기도 메타 방식으로 연결을 계속 시도하면 언젠가는 연결이 되겠쩌.
측정을 안 해보았지만 nat - nat은 연결은 일반적으로 잘 될 거여요.
가장 중요한 점은 테크는 미뤄두고 앱을 먼저 완성을 하여야 하겠쩌.
