Örnek

Java'da Bir IP'nin Belirtilen IP Aralığı İçinde Olup Olmadığını Bulan Örnek

Aşağıdaki sınıf içindeki isInRange methodu verilen ip'nin kurucuda verilen başlangıç ve bitiş ip'si aralığında olup olmadığını döndürmektedir. Örnek kod aşağıdaki gibidir :
public class IPRange {
	private String start;
	private String end;
	
	public IPRange(String start,String end) {
		
		setStart(start);
		setEnd(end);
		
	}
	
	public String getStart() {
		return start;
	}
	
	private int getStartASInt() {
		return ipToInt(getStart());
	}
	
	public void setStart(String start) {
		this.start = start;
	}
	public String getEnd() {
		return end;
	}
	
	private int getEndASInt() {
		return ipToInt(getEnd());
	}
	
	public void setEnd(String end) {
		this.end = end;
	}
	
	public boolean isInRange(String aIP){
		
		int aIpInt=ipToInt(aIP);
		
		if(getStartASInt()<=aIpInt && aIpInt<=getEndASInt() ){
			
			return true;
			
		}
		
		return false;		
		
	}
	
	public int ipToInt(String ip){
		 int[] ip_parts  = new int[4]; 
		 int index = 0;
		 for(String s : ip.split("\\.")){
		    ip_parts[index++] = Integer.parseInt(s);
		 }
		 int final_ip = ip_parts[0] << 24 | ip_parts[1] << 16 | ip_parts[2] << 8 | ip_parts[3];
		 return final_ip;
	 }
	
	public static void main(String[] args) {
		
		IPRange range=new IPRange("141.196.0.1","141.196.255.254");
		System.out.println(range.isInRange("141.196.2.100"));
		System.out.println(range.isInRange("141.197.1.100"));
		System.out.println(range.isInRange("141.196.255.255"));
		System.out.println(range.isInRange("141.196.255.1"));
		
		
	}
	
}


Karşılaştırmadan önce ipToInt fonksiyonu IP'den sayı oluşturmaktadır. Sayıya çevirdikten sonra aralık içinde olup olmadığı kontrol edilmektedir. main içinde örnek kullanımı bulunmaktadır.
zafer.teker , 25.05.2018

Bu Sayfayı Paylaş:

Fibiler Üyelerinin Yorumları


Tüm üyeler içeriklere yorum ekleyerek katkıda bulunabilir : Yorum Gir



Bu Sayfayı Paylaş:

İletişim Bilgileri

Takip Et

Her Hakkı Saklıdır. Bu sitede yayınlanan tüm bilgi ve fikirlerin kullanımından fibiler.com sorumlu değildir. Bu sitede üretilmiş , derlenmiş içerikleri, fibiler.com'u kaynak göstermek koşuluyla kendi sitenizde kullanılabilirsiniz. Ancak telif hakkı olan içeriklerin hakları sahiplerine aittir