2015-01-15 5 views
-1

isis2를 사용하여 복제 응용 프로그램을 개발합니다. 그것은 라우터를 통해 응용 프로그램을 실행하는 두 호스트를 연결하여 작동합니다. 이 두 호스트를 이더넷 케이블로 연결하려고 시도했지만 실패했습니다. 다음은 오류 예외입니다.isis2 응용 프로그램에 연결하지 못했습니다.

MCMD SockSetup failed: error <System.Net.Sockets.SocketException: Network subsystem is down 
at System.Net.Sockets.Socket.SetSocketOption (SocketOptionLevel optionLevel, SocketOptionName optionName, System.Object optionValue) [0x00000] in <filename unknown>:0 
at Isis.MCMDSocket.MCMDSockSetup (System.Net.IPAddress theIPAddr) [0x00000] in <filename unknown>:0 > MCMD Mapping: 
Group [ORACLE]: rate = 0 VirtIPAddr=224.0.19.136, mapped to 224.0.19.136 

작동이 가능합니까? 이 연결이 IP 멀티 캐스트와 호환되지 않습니까?

+0

시스템 구성 방법이나 실행중인 운영 체제에 관해서는 많이 알려주지 않았습니다. 일반적으로, 도움을 요청하면 알면 좋을 것입니다 : Linux 또는 Windows 또는 무엇? 네트워크 인터페이스 구성 매개 변수 란 무엇입니까? Etc. .... isis2.codeplex.com에서이 문제를 어떻게 다루는 지에 대한 광범위한 Isis2 문서가 있으며 사용자는이를 인식하지 못하는 것입니다 - isis2 사용자 설명서의 해당 부분을 읽었습니까? ? –

답변

0

구성한대로 시스템은 이더넷 포트가 IP 멀티 캐스트를 지원할 수 없다고 생각합니다. 두 가지 옵션이 있습니다. 하나는 구성을 수정하는 것입니다 (iptables가 패킷을 통과하거나 비활성화 할 수 있도록 구성해야합니다). 또 다른 옵션은 UDP만으로 실행하거나 UDP 통신을 허용하지 않는 플랫폼에있는 경우에만 TCP를 통해 실행하기 위해 Isis2 옵션을 사용하는 것입니다.

+0

고마워요. 내가 말한대로 IP 멀티 캐스트 그룹 주소 (224.0.0.0/4)를 인터페이스에 추가했습니다. 그것은 작동합니다. 이더넷 인터페이스는 IP 멀티 캐스트를 가능하게해야한다고 생각합니다. 그렇지 않으면 데이터가 멀티 캐스트를 보낼 위치를 알 수 없습니다. – John

+0

예,하지만 Isis2는 그렇게 할 수 없습니다. 그것은 단지 소프트웨어 라이브러리이며 필요한 권한이 없습니다. 당신은 방금 그렇게했던 것처럼 손으로해야했습니다. 일부 관리 작업은 Linux 구성 명령을 통해서만 수행 할 수 있으며 최종 사용자 코드에 링크되고 임의 사용자의 UID로 실행되는 소프트웨어 라이브러리에서는 합리적으로 수행 할 수 없습니다. –