在 bash 脚本中,我有一个类似 140.179.220.200 的 IP 地址和一个类似 255.255.224.0 的网络掩码。我现在要计算网络地址(140.179.192.000)、第一个可用主机 IP(140.179.192.1)、最后一个可用主机 IP(140.179.220.254)和广播地址(140.179.223.255)。我能够找到一种干净的方法来处理下面的网络地址。我可以手动进行子网计算,但主要是难以将其转换为 bash 脚本。提前致谢
$ IFS=. read -r i1 i2 i3 i4 <<< "192.168.1.15"
$ IFS=. read -r m1 m2 m3 m4 <<< "255.255.0.0"
$ printf "%d.%d.%d.%d\n" "$((i1 & m1))" "$((i2 & m2))" "$((i3 & m3))" "$((i4 & m4))"
192.168.0.0