亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

jpcap抓包心得

系統 1817 0

jpcap沒有64位版的?這樣就不得不用32的系統了。
用jpcap抓包,前提是裝好了winpcap和jpcap。

過程很簡單:
1.JpcapCaptor.getDeviceList()獲取網卡列表,返回一個jpcap.NetworkInterface的數組
2.選擇網卡,調用JpcapCaptor.openDevice(),返回一個JpcapCaptor類的對象。
3.創建PacketReceiver類的對象用來接收抓到的包,要覆寫receivePacket()這個方法。
4.用JpcapCaptor的processPacket()方法執行抓包。

具體的參數見api

我就針對網絡層是ip協議的包的抓取寫了個程序,只是為了試驗下,所以沒有gui,在eclipse下跑跑還行,需要手動結束程序。
下面是抓到的東西:(源代碼在最后)

src: /192.168.1.100
dst: /192.168.1.1
head: 54E6FC35DDA8701A04B54D7308004500003D1F3A0000801197C0C0A80164C0A80101F8AB00350029F9A7
data: 9482010000010000000000000373646C073336307361666503636F6D0000010001

src: /192.168.1.100
dst: /192.168.1.1
head: 54E6FC35DDA8701A04B54D7308004500003E1F3B0000801197BEC0A80164C0A80101FE6A0035002A6A75
data: 22630100000100000000000002627004636F6E6601660333363002636E0000010001

src: /192.168.1.100
dst: /192.168.1.1
head: 54E6FC35DDA8701A04B54D730800450000471F3C0000801197B4C0A80164C0A80101DD0B003500334ACD
data: FED8010000010000000000000674657265646F0469707636096D6963726F736F667403636F6D0000010001

src: /192.168.1.100
dst: /192.168.1.1
head: 54E6FC35DDA8701A04B54D7308004500003F1F3D0000801197BBC0A80164C0A80101F65C0035002B67DE
data: 77880100000100000000000002627005636F6E663201660333363002636E0000010001

      
        /*
      
      
        
*
*/
package org.wen;
import jpcap.*;
import jpcap.packet.*;
import java.io.*;
import javax.xml.bind.annotation.adapters.HexBinaryAdapter;
public class Capture {
// 將抓包信息存入文件中。
File file= null ;
String str= null ;
static FileOutputStream fos= null ;
// 設備、捕獲器和包
jpcap.NetworkInterface[] devices= null ;
JpcapCaptor captor= null ;
Packet packet= null ;
PacketReceiver receiver= null ;
// 字節到16進制的轉換器,將包以16進制形式展現
HexBinaryAdapter hba= null ;
// MAC類型
byte [] pro= null ;
// 抓包函數
public void startCapture(){
while (captor!= null ){
captor.processPacket(1, receiver);
}
}
public Capture() throws IOException{
pro= new byte [2];
hba= new HexBinaryAdapter();
file= new File("./ipdata.txt");
if (!file.exists()){
file.createNewFile();
}
fos= new FileOutputStream(file);
devices=JpcapCaptor.getDeviceList();
// 注意,我的電腦第一個是有線網卡,第二個是無線的,這里devices[1]是有線的以太網卡
captor=JpcapCaptor.openDevice(devices[1], 1514, true , 50);
// 接收抓到的包,覆寫下面這個方法來實現將抓到的包寫入文件中
receiver = new PacketReceiver() {
@Override
public void receivePacket(Packet packet) {
// TODO Auto-generated method stub
try {
str="";
// 獲得網絡協議類型
pro[0]=packet.header[12];
pro[1]=packet.header[13];
// 這里暫且只抓ip包了
if (hba.marshal(pro).toString().equals("0800")){
str+="src: ";
str+=((IPPacket)packet).src_ip.toString();
str+="\n";
str+="dst: ";
str+=((IPPacket)packet).dst_ip.toString();
str+="\n";
str+="head: ";
str+=hba.marshal(packet.header);
str+="\n";
str+="data: ";
str+=hba.marshal(packet.data);
str+="\n\n";
} else {
str+="a non-ip packet\n\n";
}
} catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
}
// 將str寫到文件中
try {
Capture.fos.write(str.getBytes());
Capture.fos.flush();
} catch (IOException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
}
}; // receiver初始化結束
// 開始抓包
startCapture();
}
public static void main(String[] args) throws IOException {
new Capture();
}
}




jpcap抓包心得


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 日韩中文在线 | 欧美高清视频www夜色资源网 | 久久99精品一久久久久久 | 99热这里只有精品99 | 99热久久国产精品这里有99 | 亚洲精品国产精品乱码不97 | 欧美日韩在线视频播放 | 成年人免费在线视频 | 国产成人18黄禁网站免费观看 | 久久91av| 四虎永久在线日韩精品观看 | 国产日韩欧美成人 | 伊人久久一本大道 | 国产特级毛片aaaaaa高清 | 久久婷婷人人澡人人爱91 | 在线观看视频99 | 亚洲综合网址 | 天天舔天天插 | 婷婷综合另类小说色区 | 99精品国产综合久久久久 | 成人午夜爱爱爱爱爱 | 国产精品久久久久久一区二区三区 | 国产精品久草 | 一级午夜a毛片免费视频 | 四虎网站1515hh四虎免费 | 欧美老妇69交 | 久热爱免费精品视频在线播放 | 在哪里可以看毛片 | 奇米色7777| 在线免费观看a视频 | 成人精品视频在线 | 五月婷婷之综合激情 | 国产精品 第二页 | 免费播放一区二区三区 | xxxxxx日本人免费 | 精品日韩| 色婷婷影视 | 99热这 | 一区二区三区在线观看免费 | 爱爱视频在线观看 | 国产成人啪午夜精品网站 |