I'm using a C program to send OSPF packets over to a router in GNS3. I'm using a socket raw to communicate with the router. The problme I'm having is, even though I can receive the packets generated by the router, the packets my program sends, do not seem to reach the router. I've tried using a tap interface, which made it possible to ping the router but my packets still didn't seem to be received by the router.
I then proceeded to try to create two routers, and compare their packets to mine, and verify whether the one I was generating had something wrong, but I couldn't have two routers using the same tap interface. So I had one connected to the tap interface, and the other to my eth0 interface, and only the packet in the eth0 interface received the packets, the other one did not.
I'm using Ubuntu 14.04, and GNS3 to simulate the routers, which are directly connected to a cloud, on which I configured the tap and eth0 interfaces.
Can someone please help me understand how to set up this ?