mysql 判斷ip是否在某個ip網段

情景1:
查詢ip是否在同一個C段(192.168.10.2-192.168.10.100)
SELECT FROM ip_cz where ip BETWEEN '192.168.10.2' AND '192.168.10.100';
情景2:
查詢ip是否在多個C段(192.168.10.0-192.168.66.0)
SELECT
FROM ip_cz where ip BETWEEN INET_ATON(192.168.10.0) AND INET_ATON(192.168.66.0);

ip:想要查找的ip對應的十進制數

start:網段開始地址

end:網段結束地址

INET_ATON:mysql中將ip轉化爲十進制數的函數

python 將ip轉化爲十進制數:

def ip_change(ip):

items = [int(x)for xin ip.split(".")]

return sum([items[i] << [24, 16, 8, 0][i]for iin range(4)])

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章