0

I am working on a solution in which I need to resend all original frames received from one ethernet interface to a different ethernet interface. I am able to sniff all received frames in the first ethernet interface (enp0s8) (using socket RAW in C), as Wireshark works, and I am able to resend this frame to the other ethernet interface, enp0s9, and I can see it with Wireshark, internally. However, this frame is not sent out to the internal network which enp0s9 belongs to.

The test scenario consists on three VM (VBox):

  • the first one, VM1, from where I send frames. One network adapter, internal network (intnet1), IP: 192.168.1.1.
  • the second one, VM2, where my code is running, with two eth.interfaces (enp0s8 and enp0s9). both network adapters as internal network. enp0s8: IP: 192.168.1.254, intnet1. enpos9: IP: 192.168.2.254, intnet2.
  • the third one, VM3, where I am waiting for frames resent by my app running in VM2.One network adapter, internal network (intnet2), IP: 192.168.2.1.
  • Ping VM1 <-> VM2 Works. Ping VM2 <-> VM3 works.

I would like to resend any frame (with any Ethernet Header and any IP header) to enp0s9 and the internal network intnet2.

Thanks in advance ;)

Nat_TG
  • 46
  • 4
  • How do you know they are not sent? – user253751 Feb 05 '21 at 13:00
  • I am listening to enp0s8, ethernet interface of VM3, with Wireshark. This interface is in the same Network as enp0s9, which belongs to VM2, and It is where i am resending frames. – Nat_TG Feb 06 '21 at 16:16
  • Is it possible that the destination address of the frames is not VM3's address, so Virtualbox doesn't deliver them to VM3? – user253751 Feb 06 '21 at 23:42
  • Yes, I think so. But I would like to inject any frame, independently of its destination IP or MAC... and I do not know it is possible... – Nat_TG Feb 08 '21 at 08:03

0 Answers0