使用 ipaddress 模块确定给定 IP 地址是公共还是私有的Python程序
给定一个有类 IP 地址,任务是找出它是公共的还是私有的。
系统的私有 IP 地址是用于在同一网络内进行通信的 IP 地址。使用私有 IP 数据或信息可以在同一网络内发送或接收。
系统的公共 IP 地址是用于与网络外部通信的 IP 地址。公共 IP 地址基本上由 ISP(互联网服务提供商)分配。
例子:
Input : 17.5.7.8
Output : Public
Input : 172.16.0.10
Output : Private
为了实现它,我们将使用Python 3.3 的 ipaddress 模块的 is_private 方法。
# importing ip_address from
# ip address module
from ipaddress import ip_address
def IPAddress(IP: str) -> str:
return "Private" if (ip_address(IP).is_private) else "Public"
if __name__ == '__main__' :
# Public IP
print(IPAddress('17.5.7.8'))
# Private IP
print(IPAddress('172.16.0.10'))
输出 :
Public
Private