我不确定这里是否是提问的合适地方,如果不是,请见谅。我已在我的网络上运行 ubuntu 服务器的计算机配置为具有两个本地静态 IP,如下所示:
network:
ethernets:
enp0s3:
addresses:
- 192.168.1.155/24
- 192.168.1.156/24
gateway4: 192.168.1.1
nameservers:
addresses:
- 1.1.1.1
- 1.0.0.1
version: 2
这样我就可以使用 192.168.1.155 和 192.168.1.156 来 ping 我的机器。
现在我是网络新手,但我知道 /24 掩码表示 192.168.1 范围内的所有地址,但在 netplan 的情况下,当我应该提供特定的 IP 地址时,它意味着什么?我是否意外分配了更多 IP?如果我将其更改为 /32 会发生什么?谢谢。
答案1
对于 netplan 的address
配置条目,/24
表示指定地址所属网络的网络掩码,以及可通过该接口直接访问的地址范围。
addresses:
- 192.168.1.155/24
意思是:“为接口分配 IPv4 地址 192.168.1.155 和网络掩码 /24。”因此,如果您稍后执行此操作,ping 192.168.1.234
操作系统将知道目标地址位于同一网络上,并尝试通过 ARP 找到它(在以太网的情况下)。
addresses:
- 192.168.1.155/24
- 192.168.1.156/24
将在同一个子网内分配两个地址,并将网络掩码设置为/24
两次,有点冗余。
如果将其更改为,/32
则接口的网络掩码将设置为/32
,这意味着除了接口本身的地址之外,没有其他地址可以通过它直接访问。因此ping 192.168.1.234
将在路由表中寻找合适的下一跳,可能命中默认网关。如果默认网关本身在网络中,192.168.1.0/24
那么它也无法访问,因此将发生路由错误。