2014-11-25 73 views
0

我想過濾數據包並放棄,如果表達式匹配的情況。我的意思是說,如果數據包來自192.168.1.100,它不應該傳遞到目的地(這是192.168.1.119)。jNetPcap數據包丟棄,如果來自特定IP地址

<pre>PcapBpfProgram program = new PcapBpfProgram(); 
String expression = "host 192.168.1.100"; 
int optimize = 0;   
int netmask = 0xFFFFFF00; 

if (pcap.compile(program, expression, optimize, netmask) != Pcap.OK 
{             
    System.err.println(pcap.getErr()); 
    return; 
}        
if (pcap.setFilter(program) != Pcap.OK) 
{           
System.err.println(pcap.getErr()); 
return;   
}</pre> 

在我的情況下,主機爲192.168.1.100所以Pcap.OK被返回true。但數據包仍然傳輸到目的地。我怎樣才能阻止傳輸數據包?

TIA

回答