1
A
回答
4
說,我們有......
def ip_to_int(a, b, c, d):
return (a << 24) + (b << 16) + (c << 8) + d
然後你就可以有代表性做了幾個XOR的。例如。
>>> bin(0xFFFFFFFF^ip_to_int(192, 168, 1, 1)^ip_to_int(192, 168, 1, 254))
'0b11111111111111111111111100000000'
所以:
def mask(ip1, ip2):
"ip1 and ip2 are lists of 4 integers 0-255 each"
m = 0xFFFFFFFF^ip_to_int(*ip1)^ip_to_int(*ip2)
return [(m & (0xFF << (8*n))) >> 8*n for n in (3, 2, 1, 0)]
>>> mask([192, 168, 1, 1], [192, 168, 1, 254])
[255L, 255L, 255L, 0L]
相關問題
- 1. 如何計算IP地址和網絡掩碼時的IP範圍?
- 2. 如何從IP地址計算子網掩碼?
- 3. 驗證IP地址/網絡掩碼
- 4. 從C中的IP地址和子網掩碼計算子網號碼
- 5. 計算兩個IP地址之間的網絡2非CIDR
- 6. 計算網絡的IP地址
- 7. 網絡計算機的IP地址
- 8. 從IP地址和子網掩碼獲取網絡ID
- 9. 如何計算在C中的IP地址和子網掩碼的AND操作?
- 10. 從IP範圍計算子網掩碼
- 11. 給定一個IP地址和子網掩碼,如何計算CIDR?
- 12. 使用Python檢索具有多個IP地址的接口的網絡掩碼?
- 13. 如何在網絡地址/網絡掩碼中寫入以下地址空間?
- 14. MAC-OS-X如何讓網絡細節,如IP地址,子網掩碼等
- 15. 在Python中的IP地址網絡3.3
- 16. 如何知道從子網掩碼搜索哪些IP地址?
- 17. 從網絡上的IP地址查找特定計算機
- 18. 導出網絡掩碼給定起始和結束IP地址
- 19. java掩碼ip地址
- 20. 如何在Java中爲IP地址生成子網掩碼?
- 21. 如何對IP地址列表進行排序併爲每個IP地址計算一個類和網絡掩碼?
- 22. 獲取openstack網絡中計算節點的ip地址
- 23. 將CIDR地址轉換成子網掩碼和網絡地址
- 24. 如何使用IP上的IP和CIDR來計算網絡和廣播地址
- 25. 如何從網絡上的IP地址獲取MAC地址?
- 26. 從IP地址獲得子網掩碼和網關
- 27. 來自IP地址/網絡掩碼使用VBScript的IP範圍電纜因子
- 28. 如何獲取遠程計算機的本地網絡IP地址
- 29. Python掃描網絡IP地址和mac
- 30. 計算來自2個給定IP地址的IP範圍數
謝謝,完美的作品;) – Gunnar 2012-01-15 21:22:27
那美麗的設計 – 2012-01-15 23:56:15