如何总结IP地址

how to sum ip addresses

我正在创建一个 *.deb 包,将您的无线网卡转换为热点。 我被困在配置上: 我必须编写一个 postinst 文件,我在其中询问用户他喜欢他的热点的 ip 地址,然后用它来生成 isc-dhcp-server 的范围和子网地址。

类似的东西:

10.10.0.01 + 0.0.0.9 = 10.10.0.10

我知道如何将字符串和数字分配给变量以及如何询问用户他选择的IP,但是如何修改变量并将结果分配给另一个变量? expr 认为它是一个浮点数,不会起作用。

希望一切都足够清楚, 等待帮助,

提前致谢

避免前导零。

IFS="." read -a a <<< 10.10.0.1
IFS="." read -a b <<< 0.0.0.9
s="$[a[0]+b[0]].$[a[1]+b[1]].$[a[2]+b[2]].$[a[3]+b[3]]"
echo $s

输出:

10.10.0.10

好的,我找到了解决方法:

当我向用户询问其选择的 ip 时,我使用这些:

IFS="." read -r a b c d
choosenip="$a.$b.$c.$d"
subnetip="$a.$b.$c.0" 
rangeipmin="$a.$b.$c.20"
rangeipmax="$a.$b.$c.30"

IFS 将默认 "space" 或 "tab" 更改为您想要的任何值。

因此,当我必须将这些放在 dhcpd.conf 和 "echo" 中时,我只需要调用变量即可。

如果您有更优雅的方法来做到这一点,不客气。

谢谢