FAQ:

 
  1. 1)Windows version is not really usable!

I partially agree. The fragment bit inside the IP header is always set (1) what makes the receiver side thinking that every packet it receives from packETH is fragmented. Actually this makes the whole application pretty much useless if you are doing any tests on IP layer and above. However, you can still use it as L2 generator. The problem is, that port to Windows OS was done by someone else and I was unable to get in contact with him again to ask him to correct this. Although this is bad for packETH reputation (and could make someone get very angry without knowing this) I still left the version under the download links. You can use it, but be aware of the problem. Everyone who asks me about this I encourage him to try the Linux version, which has many new features, many bugs resolved (and new added of course) and where I can also offer you support. I’m not familiar with Windows programming, so I’m not able to solve this. But If you are able to make the port of latest code to Windows, this would be a real hammer. Special thank on this page in color of your choice, big plus in your CV and many satisfied users will be the reward for it.


  1. 2)What about MAC OS?

Similar answer as for Windows. Also the patch for MAC OS was done by someone else. I support only Linux version. If you are familiar with other OS and are able to make port for packETH I will include the patch with great pleasure.


  1. 3)Is packETH stateless or statefull generator?

packETH is stateless. It means it just sends packets out and doesn’t care about responses. That means even if you send a TCP syn packet out and get TCP ack back, packETH doesn’t know that. It is just stupid L2 generator. And this is good sometimes!


  1. 4)Get MAC button doesn’t fill in the mac address?

You need to specify the interface and the destination address before. In this case also the IP address of the interface has to be set correctly. Without these information packETH can not make the arp request. Or at least the programmer didn’t know how to do it.


  1. 5)How burst modes and random mode in Gen-p work?

You can see how timings change for the bursts modes. For the random mode... it tries to be some sort of random generator. It best if you make a capture with Wireshark and take a look at the packet distribution.


  1. 6)What is the correct address file format?

There is the default address file included with the source (addresslist). But in general: 

<ipv4 address>,<ipv6 address>,<mac address>,name

Not all the fields are required, but no white spaces are allowed.


  1. 7)I don’t see any interfaces in the interface dialog?

You need to be superuser to see them. Open the terminal window, log in as superuser or root, and start packETH. You will be able to see the interfaces.


  1. 13)I can’t send Jumbo frames? What is max MTU size?

You have to set the right MTU on the interface itself: ifconfig <ethX> mtu <mtu size>

After that you are able to send Jumbo frames on the link. You can see i the status bar if everything went ok (you get the information about the bytes that were sent on the link) or not  (you get the -1 as the result of sending).


  1. 14)How to use the RTP dialog, how RTP stream can be generated?

First create the L2 and L3 parameters. Then open the Select payload window inside the UDP dialog. The window below will appear. Fill in the parameters you want. For the RTP payload you can specify some sinus frequency. The length depends on the VoIP packets you want to generate. For 10ms (it means VoIP packets cary 10ms of Voice information and have to be send on the link every 10ms) the correct length is 80 bytes (for g.711 of course!). For 20ms VoIP information the correct length is 160 bytes and for 30ms the correct length is 240bytes. Press apply into payload and the UDP payload will be created. Then open the Gen-b window, select the correct delay between packets depending on above length and also under Adjust parameters while sending select the right RTP adjustments. That’s all. If everything is done correctly, you can send the RTP stream now. You can also check the behavior with Wireshark, where you are able go extract (and listen) to the RTP stream. And no, no signalization is supported with packETH, it s stateless, remember!