为什么命令 udhcpc 无法在 Linux 上设置超时?

为什么命令 udhcpc 无法在 Linux 上设置超时?

现在我想通过以下命令在5秒内获取一个ip:

udhcpc  -i eth2 -R -A 5

我希望如果5秒后,上述命令仍无法获取到IP,这个命令可以自动存在,但是我发现“-A 5”选项没用。为什么?

答案1

你确定你正在运行 Ubuntu 吗?无论如何,你的命令中可能存在一些冲突的标志。

该标志控制在发送另一个请求之前应等待 IP 租约-A多长时间。这意味着它将每 5 秒发送一个请求,直到收到一个请求。udhcpc-A 5

一旦退出,该-R标志将释放一个 IP udhcpc,这可能会或可能不会使您尝试执行的操作无效-A

如果您的目标是获得新的 IP 租约,eth2并在 5 秒后放弃命令,那么这也许可以实现您想要的效果:

udhcpc -i eth2 -t 1 -n

-t将发送N发现数据包。在本例中,它只是1

-n如果未获得租约,则会退出。

相关内容