是的,Python的ipaddress模塊可以進行子網劃分。您可以使用該模塊中的IPv4Network
和IPv6Network
類來創建子網對象,并使用其方法來執行子網劃分操作。
例如,以下代碼將創建一個IPv4子網對象,并將其劃分為四個子網:
import ipaddress
subnet = ipaddress.IPv4Network('192.168.1.0/24')
subnets = list(subnet.subnets(new_prefix=26))
for subnet in subnets:
print(subnet)
輸出:
192.168.1.0/26
192.168.1.64/26
192.168.1.128/26
192.168.1.192/26
在這個例子中,我們首先創建了一個IPv4Network
對象,表示一個包含32個IP地址的子網(CIDR表示法中的/24)。然后,我們使用subnets()
方法將其劃分為四個子網,每個子網包含64個IP地址(CIDR表示法中的/26)。最后,我們遍歷并打印這四個子網對象。