📜  使用 ipaddress 模块确定给定 IPv4 地址是否保留的Python程序

📅  最后修改于: 2022-05-13 01:55:13.825000             🧑  作者: Mango

使用 ipaddress 模块确定给定 IPv4 地址是否保留的Python程序


给定一个 IPv4 地址,任务是确定它是否被保留(即属于 E 类)。

什么是E级?

属于 E 类的 IP 地址保留用于实验和研究目的。 E 类 IP 地址范围为 240.0.0.0 – 255.255.255.254。这个类没有任何子网掩码。 E 类的第一个八位字节的高位总是设置为 1111。

例子:

Input : 10.0.0.1
Output : Not Reserved

Input : 241.0.0.133
Output : Reserved

为了实现它,我们将使用 Python3.3 的ipaddress模块的is_reserved方法。

# importing ip_address
# from ipaddress module
from ipaddress import ip_address
  
def reservedIPAddress(IP: str) -> str:
    return "Reserved" if (ip_address(IP).is_reserved) else "Not Reserved"
      
if __name__ == '__main__' : 
  
    # Not Reserved
    print(reservedIPAddress('10.0.0.1')) 
      
    # Reserved
    print(reservedIPAddress('241.0.0.133')) 

输出 :

Not Reserved
Reserved