0
我想計算2個給定IP地址的IP地址數量。有沒有簡單的方法來計算來自2個給定IP地址的IP數量?
例如:127.0.1.10和127.0.0.200是67個的IP地址..
什麼是這樣做的簡單的方法?
我見過其他的例子,但我正在尋找一個Python例子。謝謝。
我想計算2個給定IP地址的IP地址數量。有沒有簡單的方法來計算來自2個給定IP地址的IP數量?
例如:127.0.1.10和127.0.0.200是67個的IP地址..
什麼是這樣做的簡單的方法?
我見過其他的例子,但我正在尋找一個Python例子。謝謝。
>>> import socket
>>> def iptoint(ip):
... return int(socket.inet_aton(ip).encode('hex'), 16)
...
>>> iptoint('127.0.0.200')
2130706632
>>> iptoint('127.0.1.10') - iptoint('127.0.0.200')
66
>>> def ipdistance(ip1, ip2):
... return abs(iptoint(ip1) - iptoint(ip2)) + 1
...
>>> ipdistance('127.0.1.10', '127.0.0.200')
67
添加1使其包含兩個端點。 – Barmar
所以你基本上要求如何做基地256減法?你試過什麼了? – dg99
將IP轉換爲數字,然後減去。 – Barmar
用於更一般的IP計算,例如在'/ 24'網絡中列出IP,請參閱https://docs.python.org/3/howto/ipaddress.html – johntellsall