Ağ Arayüzlerini Listeleme¶
Yapacağımız ilk örnek, JnetPcap ile bilgisayarımızda bulunan ağ arayüzlerini listelemek olacak. Bunun için, org.jnetpcap.Pcap sınıfının static bir metodu olan findAllDevs metodunu kullanacağız. Bu metot iki parametre alıyor. Birinci parametre ağ cihazlarının ekleneceği List tipinde bir nesne, ikinci parametre ise varsa hata mesajlarının yazılacağı StringBuilder tipinde bir nesne. Listeye eklenecek arayüzler bir PcapIf nesnesi olarak eklenecektir. Bu nesneleri kullanarak ağ arayüzleri hakkında bilgi edinebiliriz. Şimdi bu işlem için yazmamız gereken kodları görelim
package findif;
import java.util.ArrayList;
import java.util.List;
import org.jnetpcap.Pcap;
import org.jnetpcap.PcapIf;
public class FindIf {
public static void main(String[] args) {
List<PcapIf> liste = new ArrayList<>();
StringBuilder errbuf = new StringBuilder();
Pcap.findAllDevs(liste, errbuf);
for(PcapIf iface:liste){
System.out.println("Name: "+iface.getName());
System.out.println("Description: "+iface.getDescription());
}
}
}
Arayüzler ile ilgili elde edebileceğimiz bilgiler şunlardır:
getName(): Cihazın adı
getDescription(): Cihazın açıklaması
getAddress(): Arayüzdeki Ip4 ve Ip6 adresimizin bir listesi. Adresler PcapAddr tipindedir.
getFlags(): Ağ arayüzünün durumu(UP,DOWN vs)
getHardwareAdress(): MAC adresi