我必须在给定的IP地址2001:1001:0ff0 :: / 48中制作256个子网,此外我需要找到第2,第48和第224个子网的IP地址。
我需要知道是否有一个公式来做到这一点。
答案 0 :(得分:1)
由于我们在关于软件编程的Q& A论坛上,这里的公式包含在一个简单的程序中(bash / zsh shell脚本):
for subnet in {0..255}
do
echo 2001:1001:0ff0:$(printf "%02x00" $subnet)::/$(echo 48 - $(echo 'l(256)/l(2)' | bc -l) / 1 | bc)
done
要获得第2,第48和第224个子网,请使用此程序和公式:
for subnet in 1 47 223
do
echo 2001:1001:0ff0:$(printf "%02x00" $subnet)::/$(echo 48 - $(echo 'l(256)/l(2)' | bc -l) / 1 | bc)
done
答案 1 :(得分:0)
请考虑IPv6 https://tools.ietf.org/html/rfc1883的文档。您可以在维基百科上找到公式和说明:https://en.wikipedia.org/wiki/IP_address