IPアドレスを追跡したいのですが、135の宛先ポートがあり、同じIPアドレスを持つ次のパケットには4445の宛先ポートがあります。以下のコードを試してみましたが、実行できません。それを解決する方法は?
packet = jpcap.getPacket();
if(packet instanceof IPPacket){
IPPacket ipp = (IPPacket)packet;
InetAddress destAdd = ipp.dst_ip;
InetAddress srcAdd = ipp.src_ip;
if(ipp instanceof TCPPacket){
TCPPacket tcp = (TCPPacket)ipp;
int destPort = tcp.dst_port;
int srcPort = tcp.src_port;
if(destPort == 135)
{
System.out.println(srcAdd + " " + destAdd + " " +srcPort + " " + destPort);
Packet packet2 = jpcap.getPacket();
if(packet2 instanceof IPPacket){
IPPacket ipp2 = (IPPacket)packet2;
InetAddress destAdd2 =ipp2.dst_ip;
InetAddress srcAdd2 = ipp.src_ip;
if(destAdd2 == destAdd && srcAdd2 == srcAdd ){
if(ipp2 instanceof TCPPacket){
TCPPacket tcp2 =(TCPPacket)ipp2;
int destPort2 = tcp2.dst_port;
int srcPort2 = tcp2.src_port;
if(destPort2 == 4444){
System.out.println(srcAdd2 + " " + destAdd2 + " " +srcPort2 + " " + destPort2);
}
}
}
}
}
}