📄 connserver.java
字号:
import java.sql.*;
import java.io.*;
import jpcap.*;
import jpcap.packet.*;
class JpcapTip implements PacketReceiver
{
String JDriver = "sun.jdbc.odbc.JdbcOdbcDriver"; //声明JDBC驱动程序对象
String conURL = "jdbc:ODBC:TestDB"; //定义JDBC的URL对象
static int p=0;
static int[] arry = new int [220];
IPPacket ip;
public void receivePacket(Packet packet) //接受数据包
{
if(packet instanceof IPPacket)
{
ip=(IPPacket)packet;
try
{
RandomAccessFile rf = new RandomAccessFile("packet.txt", "rw");
rf.seek(rf.length());
rf.writeBytes(ip.src_ip+"\t"+ip.dst_ip+"\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");
rf.close();
System.out.println(ip.src_ip+"\t"+ip.dst_ip+"\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");
String src_ip = ip.src_ip.toString();
String dst_ip = ip.dst_ip.toString();
try
{
Class.forName(JDriver);// //获取驱动程序并加载
}
catch(java.lang.ClassNotFoundException e)
{
System.out.println("ForName:" + e.getMessage());
}
Connection conn = DriverManager.getConnection(conURL);
Statement stmt = conn.createStatement();
stmt.executeUpdate("INSERT INTO IP values('"+src_ip+"','"+dst_ip+"')");
stmt.close();
conn.close(); //关闭与数据库的连接
}
catch (Exception e)
{
e.printStackTrace();
}
}
}
}
public class ConnServer
{
public static void main(String arg[])throws java.io.IOException
{
NetworkInterface[] devices = JpcapCaptor.getDeviceList();//获取设备列表名
NetworkInterface deviceName = devices[1];
JpcapCaptor jpcap1 = JpcapCaptor.openDevice(deviceName, 1028, true, 100);
// 打开网卡设备
jpcap1.loopPacket(100000, new JpcapTip());
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -