我一直在摆弄 IPv6 和地址生命周期。我发现valid_lft
如果使用正确,该属性将使 v6 地址自动消失。为了延长地址的生命周期我会
ip addr change 1:2:3:4::1/112 dev eth0 valid_lft 86000
ip addr change
我可以访问的任何手册页中都没有出现的使用(Debian、Ubuntu 和在线的)并且也不在官方文档。我在一个文章参考 2009 年发送到 ipv6-ops 邮件列表的一封电子邮件。
从我可以确定的情况来看,我想人们总是可以使用ip addr change
而不是ip addr add
,因为如果地址不存在,ip
就会添加一个,如果ip addr add
使用的话。
这是正确的吗,即,任何人都可以解释到底ip addr change
是什么以及它与 有何不同ip addr add
?
答案1
当您不确定某件事的作用并且文档没有说明时,您可以找到来源,即1588线:
if (matches(*argv, "change") == 0 ||
strcmp(*argv, "chg") == 0)
return ipaddr_modify(RTM_NEWADDR, NLM_F_REPLACE, argc-1, argv+1);
那么,它有什么作用呢?返回ipaddr_modify()
函数运行结果1379行定义与参数RTM_NEWADDR
和NLM_F_REPLACE
.
从我可以确定的情况来看,我想人们总是可以使用
ip addr change
而不是ip addr add
,因为如果地址不存在,ip
就会添加一个,如果ip addr add
使用的话。这是正确的吗,即,任何人都可以解释到底
ip addr change
是什么以及它与 有何不同ip addr add
?
否,add
将创建或执行给定的参数(如果给定的话),同时change
将查找参数并替换它。
顺便说一句,replace
似乎是add
和之间的妥协,change
因为它使用了混合的参数。