Easy Packet Blast

Easy Packet Blast is a fast and free application to send one or many (UDP) packets to a single destination address. You can select the port and destination, as well as give a custom payload for the packet. This is useful for network testing, load testing, hardware testing, etc.

You can download it from the Android Market here.

Update 4/2012 This is now open source and hosted on GitHub. Check it out at my GitHub page.

9 thoughts on “Easy Packet Blast

  1. Pingback: Easy Packet Blast - Android Apps - Best Android Apps, News and Reviews | Android-Apps.com

  2. Hi Mr. Davis, do you mind sharing the source code for this app?

    I just got started in Android app development trying to develop an app that will use TCP / UDP as communication method, would like to look at your code for quick start/reference if you don’t mind.
    Millions thanks.

    • Hey CK,

      I think the snippet you are interested in is:

      
        public void SendPackets(Context context) {
          EditText addressText = (EditText) findViewById(R.id.destination);
          String destination = addressText.getText().toString();
      
          EditText portText = (EditText) findViewById(R.id.port);
          int port = Integer.valueOf(portText.getText().toString());
      
          EditText payloadText = (EditText) findViewById(R.id.payloadcustomtext);
          String payloadTextValue = payloadText.getText().toString();
      
          if (destination.length() < 1) {
            Toast.makeText(context, "Invalid IP", Toast.LENGTH_SHORT).show();
            return;
          }
          InetAddress address;
      
          try {
            address = InetAddress.getByName(destination);
          } catch (UnknownHostException e) {
            Toast.makeText(context, "Unknown Host", Toast.LENGTH_SHORT).show();
            return;
          }
      
          int loopNumber = getNumberFromSpinner();
          for (int i = 0; i < loopNumber; i++) {
            sendPacket(context, destination, port, payloadTextValue);
          }
          Toast.makeText(context, "Packet(s) Successfully Broadcast",
              Toast.LENGTH_LONG).show();
          return;
        }
      
        public void sendPacket(Context context, String ipString, int port,
            String customPayload) {
      
          try {
            int cpl = customPayload.length();
            byte[] bytes = null;
            if (cpl > 0) {
              bytes = customPayload.getBytes("ASCII");
            } else {
              bytes = new byte[6 + 16 * 16 * 16];
              for (int i = 0; i < bytes.length; i++) {
                bytes[i] = 1;
              }
            }
      
            InetAddress address;
            try {
              address = InetAddress.getByName(ipString);
            } catch (Exception e) {
              Toast.makeText(context, "Unknown Host", Toast.LENGTH_SHORT)
                  .show();
              return;
      
            }
            // why is port 7???
            DatagramPacket packet = new DatagramPacket(bytes, bytes.length,
                address, port);
            DatagramSocket socket = new DatagramSocket();
            socket.send(packet);
            socket.close();
      
          } catch (Exception e) {
            return;
          }
      
        }
      

  3. Hey I was wondering if you could post the .apk for this app with source… I just got started with creating java apps, and this is something I’ve been wanting to do for a long time.

    • Not currently, but it would be an easy enough change to add to the source code (which is on GitHub). Best of luck!
      /H

  4. hi mr. davis

    Im beginner in this android apps… and i would like to ask if you have the pcremote apps with source code, because that is the system that i want to make in our thesis this year.

    your response is 100% appreciated. thanks

Leave a Reply

Your email address will not be published. Required fields are marked *