是否有命令可以让我更改分配给接口的 IP 的网络掩码?
例子 :
$ ip a show eth4
2: eth4: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
link/ether f4:8e:38:99:f7:81 brd ff:ff:ff:ff:ff:ff
inet 192.168.211.70/**24** brd 192.168.211.255 scope global eth4
valid_lft forever preferred_lft forever
inet6 fe80::f68e:38ff:fe99:f781/64 scope link
valid_lft forever preferred_lft forever
$ ip <some> <magic> <command> dev eth4
$ ip a show eth4
2: eth4: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
link/ether f4:8e:38:99:f7:81 brd ff:ff:ff:ff:ff:ff
inet 192.168.211.70/**16** brd 192.168.211.255 scope global eth4
valid_lft forever preferred_lft forever
inet6 fe80::f68e:38ff:fe99:f781/64 scope link
valid_lft forever preferred_lft forever
$
或者删除/重新分配 IP 是实现此目的的唯一方法吗?
答案1
ifconfig eth4 netmask 255.255.0.0
这会将设备 eth4 的网络掩码从 /24 更改为 /16。不过,更改只是暂时的,应该在您的网络设置中永久完成。
答案2
一张网卡可以有多个地址,因此只能在设置IP地址时设置网络掩码。等效命令ifconfig
之所以有效,是因为它假设 NIC 只有一个地址。无法使用该ip
工具仅更改网络掩码。