摘要:判斷IP是否屬於同一網段
記錄一下遇到的問題
要判斷來源IP是否屬於特定網段
參考了一些資料
http://powerfuleric.pixnet.net/blog/post/41100062-%E5%9F%BA%E6%9C%ACip%E6%A6%82%E5%BF%B5
所以就先把來源IP與特定網段的IP、子網路遮罩
進行AND運算
相關程式碼如下
private bool checkIP(string ipAddress,string submask,string clientIP) { String[] ip = ipAddress.Split(new char[] { '.' }); String[] ip2 = clientIP.Split(new char[] { '.' }); String[] arysubmask = submask.Split(new char[] { '.' }); if ((int.Parse(ip[0]) & int.Parse(arysubmask[0])) == ((int.Parse(ip2[0]) & int.Parse(arysubmask[0]))) && (int.Parse(ip[1]) & int.Parse(arysubmask[1])) == ((int.Parse(ip2[1]) & int.Parse(arysubmask[1]))) && (int.Parse(ip[2]) & int.Parse(arysubmask[2])) == ((int.Parse(ip2[2]) & int.Parse(arysubmask[2]))) && (int.Parse(ip[3]) & int.Parse(arysubmask[3])) == ((int.Parse(ip2[3]) & int.Parse(arysubmask[3])))) { return true; } return false; }
先記錄起來
明天再來看看有沒有更好的寫法