2014-01-06 2 views
1

내 문제에 대해 도움을 주실 수 있으면 제발. 한쪽에는 라우터 172.27.13.1의 WAN 인터페이스에 연결된 IP 172.27.13.2가있는 서버가 있습니다. 그런 다음 라우터 192.168.1.1의 무선 LAN에서 몇 대의 클라이언트를 연결했습니다. 이제 C에서 클라이언트가 서버의 UDP 스트림을 요청한 다음 서버 브로드 캐스트 스트림을 클라이언트에 요청하는 코드를 작성하고 일부 패킷이 손실되면 클라이언트에 NACK을 보내야합니다. 내 질문 : 서버와 클라이언트가 다른 서브넷에 있기 때문에 서버에서 어떻게 방송 할 수 있습니까? 그리고 클라이언트가 서로 다른 서브넷에 있기 때문에 요청 및 NACK을 서버에 보내는 방법은 무엇입니까? 이러한 문제는 라우터 구성 또는 C 코드로 해결할 수 있습니까? 다른 서브넷에서 브로드 캐스트

답변

1

당신은 다른 서브넷 브로드 캐스트 할 수없는 도움을 주셔서 감사합니다. 라우터는 올바르게 구성 할 수있는 매우 특별한 라우터 (예 : Cisco ...)가 없으면 일반적으로 브로드 캐스트 패킷을 다른 서브넷으로 전달하지 않습니다. 그러나 이러한 작업을 위해 멀티 캐스트를 사용할 수는 있습니다. 여기 a C example

는 또한이 검사의 : UDP broadcast packets across subnets

주 : 일부는 C의 예에서 누락이 포함되어 있지만 & 사용자가 앞으로이 donot 다른 서브넷이 .as 라우터에 모두 서버로

+0

그러나 클라이언트 측에서 하나의 LAN 서브넷 192.168 .1.1/24 그래서 왜 192.168.1.255에 서버에서 브로드 캐스트 패킷을 보낼 수 없습니다 .... 문제는 클라이언트가 172.27.13.2에 서버에 응답 할 수있는 방법입니까? 이 응답은 유니 캐스트입니다. 아니면 개념을 잘 이해하지 못합니다. 감사합니다 – user3119422

+0

@ user3119422 방송은 하나의 서브넷 전용이므로 192.168.1.0/24에서 브로드 캐스트를 전송할 수 없으며 172.27.13.2에 브로드 캐스트 할 수 없습니다 (반대 방향으로도 수행 할 수 없음). 유니 캐스트는 문제가되지 않지만, 라우터를 올바르게 설정하면됩니다. – nos

+2

보안상의 이유로 다른 인터페이스 브로드 캐스트 주소를 사용한 브로드 캐스팅은 거의 어디에서나 사용할 수 없습니다. 이것이 허용됨을 상상해보십시오. 결과는 세부 정보를 모른 채 원격 구조에 대해 효율적인 DoS입니다. 일반적으로 일부 에이전트는 패킷을 로컬 서브넷으로 재전송해야합니다. 기업 수준에서 필요하다면 멀티 캐스팅 및 멀티 캐스트 라우팅을 연구하십시오. – Netch

1

을 쉽게 찾을 수 있습니다 우리는 라우터 구성을 수정하여 솔루션을 제공합니다. 시스코 라우터 & 사용자가 시스코 스위치에 연결되어있는 경우 VLAN의 스위치에서 ip helper address 명령을 사용할 수 있습니다. 라우터 ACL에서 udp 패킷을 허용 할 수 있습니다.

+0

안녕하세요, 저는 시스코 라우터가 없기 때문에 그들이 이것을 할 수 있다고 읽었습니다 ... 그래서 C에서 멀티 캐스트 소켓을 사용하기로 결정했습니다. 고마워 – user3119422