2014-12-18 2 views
0

이것은 내가 갖고있는 고차원 문제이며, 내 머리를 감싸하려고합니다. 나는 방송 이더넷 패킷을 보내는 프로그램을 가지고있다 (이것은 Pcap.Net dll을 사용하여 제거된다). 장치가 브로드 캐스트를 수신하면 다른 이더넷 패킷으로 응답합니다.브로드 캐스트 이더넷 패킷을 다른 서브넷으로 보내는 방법은 무엇입니까?

내 설정 :

내 PC의 IP는 다음과 같습니다 10.10.3.109 (DHCP)

내 게이트웨이 : 나는 255.255에이 시점에서 이더넷 패킷을 방송하는 경우 10.10.1.254

. 255.0 나는 10.10.0.x의 응답이 10.10.1.x 얻을

내 목표 :

내 브로드 캐스트 패킷을 보낼 수 있도록 내 환경을 설정하여 내 사무실의 10.10.5.x 및 10.10.4.5.x 네트워크에 10.10.5.254 게이트웨이를 다른 네트워크의 내 컴퓨터에서 연결할 수 있습니다 (I didn 네트워크에 번호를 매기 지 않습니다. 혼란 스럽다면 사과드립니다. .4/.5 같은 네트워크입니다)

그래서 내 질문은, 내가이 패킷을 보낼 때 두 네트워크가 들리도록 내 VB에서, 또는 내 환경에서해야합니까?

내가 시도하는 것 : 분명히

, 이더넷은 그 자체로 다른 서브넷으로 이야기 할 것 없습니다. 내가 읽은 것은 라우터와 같은 명령을 사용하여 라우트를 생성 할 수 있다는 것입니다. 예 :

route ADD 10.10.4.254 MASK 255.255.255.0 10.10.3.109 

성공적으로 실행되었지만 프로그램을 실행할 때 다른 네트워크에서 응답을받지 못했습니다. 이 작업을 수행하기 위해 설정에서 누락 된 부분은 무엇입니까?

내 VB 코드 : funsies를 들어

(pcapdotnet 예를의 기준) :

 ' Open the output device 
     Dim Communicator As PacketCommunicator = selectedOutputDevice.Open(65536, PacketDeviceOpenAttributes.None, 500) 

     Dim filter As BerkeleyPacketFilter = Communicator.CreateFilter("len >= 415 and len <= 417") 
     Communicator.SetFilter(filter) 

     ' send broadcast packet 
     Communicator.SendPacket(BuildEthernetPacket(ReqInfoPkt, "ff:ff:ff:ff:ff:ff")) 

답변

2

이 어떻게 다른 서브넷에 내 방송 이더넷 패킷을 보내려면?

수 없습니다.

이더넷은 IP를 비롯한 상위 레벨의 프로토콜을 모르고 있거나 신경 쓰지 않습니다. IP가 항상 이더넷을 통해 실행되는 것은 아닙니다. 그것들은 별개의 것입니다.

+0

버머. 나는 그때 그 주위를 돌아 다닐 길이 없다고 생각한다. – Kat

+0

@ sparkysword 인터넷을 통한 터널을 사용하여 두 개의 네트워크를 연결할 수 있습니다. 이를 수행 할 수있는 값싼 하드웨어 VPN 장치가 있습니다. 그러나 아니요, 이것은 응용 프로그램 계층에서 성취 할 수있는 것이 아닙니다. 이 활동을 위해 네트워크를 설정해야합니다. 또한, 귀하의 질문에 이더넷 프레임과 관련이있는 것은 아무것도 없습니다. 나는 너가하고있는 것을 완전히 이해하지 못한다. IP 브로드 캐스트 주소로 데이터를 보내면 어떨까요? 해당 트래픽을 통과하도록 라우터를 구성 할 수 있습니다. – Brad

+0

이더넷 프레임이 중요한 유일한 방법은이 유형의 프레임이 장치가 응답하는 것 뿐이라는 것입니다. 나는 다른 생각을하는 것을 좋아하지만, 그것을 사용하려고 할 수도 있습니다. – Kat

관련 문제