여러 서브넷의 클라이언트는 동시에 서버에 연결할 수 없습니다.

여러 서브넷의 클라이언트는 동시에 서버에 연결할 수 없습니다.

나는 과거에 로컬 네트워크 외부의 플레이어나 로컬 네트워크 내의 플레이어 중 하나가 참가할 수 있지만 동시에 둘 다 참가할 수는 없는 여러 게임용 서버를 설정했습니다. 먼저 합류한 쪽이 다른 쪽을 차단할 것입니다. 로컬 및 "원격"(인터넷) 연결은 모두 서버 호스트의 동일한 네트워크 인터페이스에 대한 것입니다. 처음으로 참여한 플레이어와 동일한 "유형"(로컬 또는 인터넷)의 다른 플레이어는 연결할 수 있지만 다른 "유형"의 플레이어는 연결할 수 없습니다. 모든 플레이어의 연결이 끊어지면 이전에 연결할 수 없었던 다른 "유형"의 플레이어도 연결할 수 있습니다.

특정 게임에 대해서는 질문하는 것이 아니기 때문에 의도적으로 게임 이름을 생략하고 있습니다. 게임 소프트웨어가 원인인 것으로 밝혀지면 그렇게 하십시오. 이 질문은 원인이 될 수 있는 잠재적인 네트워킹 문제에 관한 것입니다.

  • 네트워크가 이런 식으로 동작하는 이유에 대한 설명이 있습니까?
  • 이것이 네트워킹 문제인 경우 수정 사항이나 해결 방법이 있습니까?
  • 소프트웨어/서버 문제인 경우 이러한 종류의 네트워크 동작이 어떻게 발생하는지에 대한 설명이 있습니까? 그리고 너무 침해적이지 않고 토폴로지 변경이 필요하지 않은 해결 방법이 있습니까? 아마도 서버를 "속이기" 위한 일종의 터널링/포워딩이 아닐까요?

세부

부인 성명: 저는 네트워크 전문가가 아닙니다.
두 개의 NAT 라우터가 "체인으로 연결되어 있습니다". 나는 그것들을 "내부"와 "외부"라고 생각합니다. 각각은 DHCP를 실행하여 두 개의 서브넷을 만듭니다. (192.168.1-2.x)현재의 네트워크에는 알려진 문제가 없습니다. 누구나 인터넷과 내가 기대하는 모든 주소/서비스에 접속할 수 있습니다.

회로망

서버는 일반적으로 내부 라우터 뒤에 있습니다. 로컬 사용자는 외부 라우터 뒤에 있으며 포트 전달을 통해 연결합니다(서버와 다른 서브넷에 있음). 원격/인터넷 사용자는 포트 전달을 통해 외부 라우터를 통과합니다. 각 시나리오는 독립적으로 작동합니다. 이는 원격 클라이언트와 "로컬" 클라이언트가 동시에 누군가가 차단되는 연결을 시도하는 경우입니다.

이것을 더욱 이상하게 만드는(그리고 아마도 범인으로 소프트웨어를 지적할 수도 있음) 로컬 및 원격 연결은 둘 다 다른 서브넷에서 전달되기 때문에 내가 실수하지 않으면 서버와 동일하게 나타나야 한다는 것입니다.

답변1

이중 NAT 연결이 문제입니다.

귀하의 구성~해야 한다작동하지만 문제가 있다는 것은 놀라운 일이 아닙니다. 실제 라우터는 설정에서 잘 작동하지만 NAT 게이트웨이 "라우터"를 서로 쌓아두면 원치 않는 다양한 동작이 발생할 수 있습니다.

이에 대한 설명을 원하는 것이 합리적이지만 구성이 "작동해야 하는" 경우 각 라우터가 NAT 및/또는 포트 전달을 구현하는 방식에서 설명을 찾을 수 있으며, 장치의 사용자 가이드에서도 충분하지 않습니다. 기술적인 세부 사항.

게임 서버를 단일 인터넷 연결 라우터/게이트웨이 뒤의 서브넷으로 이동하면 문제가 사라져야 합니다.

관련 정보