⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 d0b475791386001c14dfe27e4216b9af

📁 网络抓包程序用java实现
💻
字号:

import jpcap.*;
import jpcap.packet.*;
public class Catchpic implements PacketReceiver
{
	 
	    static int count1=0,count2=0;
	     static long t1=System.currentTimeMillis();
	     static long t2=0;
	     static int  perpack_i=0;
	     static int  perpack[]={0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0};
	     
		 public void receivePacket(Packet packet)
		 {  if(packet instanceof IPPacket)   //判断是不是IP数据包
		    {   IPPacket ip;
			    ip=(IPPacket)packet;
			    count1++;
			    System.out.print(ip.src_ip.getHostAddress()+"\t"
			    		         +ip.dst_ip.getHostAddress()+"\t"+ip.protocol+"\t"
			    		         +ip.length+"\t"+ip.version+"\t"+ip.ident+"\t"
			    		         +ip.rsv_frag+"\t"+ip.offset+"\t"+ip.hop_limit
			    		         +"\t"+ip.rsv_tos+"\r\n");
			    t2=System.currentTimeMillis();
			    if(t2>(t1+4000))
		        {   t1=t2;
		            perpack_i++;
		            perpack[perpack_i]=(count1-count2)*5;     //直观图缩小10倍
		        	count2=count1;
		        }
			}
		 }
		     
		 public static void main(String[] args) throws Exception 
		 {    
			  NetworkInterface[] devices = JpcapCaptor.getDeviceList();    //获得网卡设备的信息
		      System.out.println("★捕获的网络数据包★: \n");
		      JpcapCaptor jpcap = JpcapCaptor.openDevice(devices[1],65535,true, 20);   //选择有用的网卡,从而来捕获数据包    
		      jpcap.loopPacket(1000, new Catchpic());    
		      System.out.println("\n★运行结束★::捕获的数据包有: "+count1+"个");
		     Drawpicture p=new Drawpicture();
		 }
}



⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -