Send.js

This example demonstrates how to send packets from JScript.
See also:
PacketX , Adapter , SendPacket
00001 
00002 // File:         Send.js
00003 //
00004 // Description:  This script demonstrates how to send packets
00005 //
00006 // Notes:        Run the script from command line using the cscript.exe program
00007 //
00008 // Created:      May 10, 2004
00009 //
00010 // Copyright (c) 2000-2004 BeeSync Technologies.
00012 
00013 // Create PackeX object
00014 var oPktX = WScript.CreateObject("PktX.PacketX")
00015 
00016 // Display network adapters
00017 for (i = 0; i < oPktX.Adapters.Count ; i++) {
00018   if (oPktX.Adapters(i+1).IsGood == true) {
00019     WScript.Echo("(" + (i+1) + ") " + oPktX.Adapters(i+1).Description);
00020   }
00021 }
00022 
00023 // Select network adapter
00024 oNullAdapter = WScript.CreateObject("PktX.Adapter");
00025 oPktX.Adapter = oNullAdapter;
00026 while(oPktX.Adapter == oNullAdapter) 
00027 {
00028   WScript.StdOut.Write("Choose adapter#");
00029   try { 
00030     oPktX.Adapter = oPktX.Adapters(WScript.StdIn.ReadLine());
00031   }
00032   catch(err){
00033     oPktX.Adapter = oNullAdapter;
00034   } 
00035 }
00036 
00037 // Get adapter hardware address and IP address
00038 var sHWAddr = oPktX.Adapter.HWAddress;
00039 var sIPAddr = oPktX.Adapter.NetIP;
00040 var sIPMask = oPktX.Adapter.NetMask;
00041 WScript.Echo("MAC Addr = " + sHWAddr);
00042 WScript.Echo("IP  Addr = " + sIPAddr);
00043   
00044 // Send ARP request for this IP address
00045 var sIPReso = "11.12.13.14";
00046 var aIPReso=String(sIPReso).split(".");
00047 var aIPAddr=String(sIPAddr).split(".");
00048 
00049 // Build ARP packet
00050 var oPacket = new Array(0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 
00051       Number("0x" + String(sHWAddr).substring(0,2)), 
00052       Number("0x" + String(sHWAddr).substring(2,2)), 
00053       Number("0x" + String(sHWAddr).substring(4,2)), 
00054       Number("0x" + String(sHWAddr).substring(6,2)), 
00055       Number("0x" + String(sHWAddr).substring(8,2)), 
00056       Number("0x" + String(sHWAddr).substring(10,2)),
00057       0x08, 0x06, 0x00, 0x01,
00058       0x08, 0x00, 0x06, 0x04, 0x00, 0x01,
00059       Number("0x" + String(sHWAddr).substring(0,2)),
00060       Number("0x" + String(sHWAddr).substring(2,2)),
00061       Number("0x" + String(sHWAddr).substring(4,2)),
00062       Number("0x" + String(sHWAddr).substring(6,2)),
00063       Number("0x" + String(sHWAddr).substring(8,2)),
00064       Number("0x" + String(sHWAddr).substring(10,2)),      
00065       Number(aIPAddr[0]),
00066       Number(aIPAddr[1]),
00067       Number(aIPAddr[2]),
00068       Number(aIPAddr[3]),
00069       0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
00070       Number(aIPReso[0]),
00071       Number(aIPReso[1]),
00072       Number(aIPReso[2]),
00073       Number(aIPReso[3]),
00074       0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
00075       0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
00076       0x00, 0x00, 0x00, 0x00, 0x00, 0x00);
00077       
00078 // Send 100 ARP requests      
00079 oPktX.Adapter.SendPacket(oPacket, 100);

Copyright © 2000-2007 beeSync. All rights reserved.