在 eth0 可用之后、DHCP 客户端之前执行命令

在 eth0 可用之后、DHCP 客户端之前执行命令

我在 ARM 板上运行 Debian Weezy。现在,我正在通过运行 ethtool 命令将以太网接口限制为 100 兆位来解决网络驱动程序的问题。但是,驱动程序的问题早在 DHCP 协商时就显现出来了,因此我需要在 dhclient 运行之前运行 ethtool。

我一直试图找到一个地方 ethtool (或 mii-tool,无论哪种方式)可以在 dhclient 之前运行。到目前为止,我尝试过的所有地方(/etc/network/if-pre-up.d/etc/dhcp/dhclient-enter-hooks.d)都无法工作,因为“eth0”还不存在。

Debian 网络或系统配置中是否有一个干净的钩子,我可以在 dhclient 运行之前更改以太网状态?或者我想在这里做一些不可能的事情?

答案1

应该可以将 eth 设置为“手动”,然后应用您想要运行的任意脚本,包括睡眠以减慢速度,然后在最后调用 dhclient。在 Ubuntu 上,它在 /etc/network/interfaces 中看起来像这样

auto eth0
iface eth0 inet manual
pre-up /etc/network/pre-up-scripts/eth0.sh  ( one way to do it)
pre-up some-script-or-command  (another way)
up dhclient  eth0

接口的手册页非常有帮助。

相关内容