linux - 在 Linux 上实现 DHCP 的最快方法

标签 linux networking network-protocols dhcp

<分区>

动机:我在没有网络管理工具的情况下运行 wpa_supplicant,因为我不想在旧的 DHCP 租约工作时强制使用新的 DHCP 租约。这样,如果 DHCP 租约尚未到期,我可以非常快速地进入旧网络(只要 wpa_supplicant 建立较低的网络层)。

问题:但是当 DHCP 租约到期时,或者如果我的 IP 地址来自另一个网络,我确实需要调用 DHCP。我目前使用 dhclient,但 dhcpcd 是这里的另一种选择。问题是,即使这些 DHCP 客户端在后台运行,它们也不会自动意识到我需要一个新的 IP 地址,因为我有一个旧的、无效的 IP 地址。

问题:有没有一种方法可以快速确定我是否需要 DHCP?例如。作为对 wpa_supplicant 的 react 或作为对联系标准网关并意识到连接不可用的 react 。我可以轻松运行 sudo dhclient wlan0,它会在一秒钟内为我提供地址。但是,在必要时,我可以做些什么来自动执行此过程?

发出不必要的 DHCP 请求不是不可能的,但淹没 DHCP 服务器是不可能的。

详细问题:对于那些直接使用 wpa_supplicant 的人,你们如何 DHCP?

最佳答案

每当您连接到新网络时再次运行 dhcpcd。如果您有现有租约,应该尽快确认。

如果您反对每次都输入“dhclient”或“dhcpcd”,您可以使用 shell 脚本自动执行。它可能看起来像

#!/bin/sh
dhcpcd wlan0 &
wpa_supplicant -d -c/etc/wpa_supplicant.conf -iwlan0

dhcpcd 会说它正在“等待运营商”,直到 wpa_supplicant 启动无线链接。

关于linux - 在 Linux 上实现 DHCP 的最快方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18904804/

相关文章:

linux - Linux 中无法解释的 +28Gb 内存过度使用

c - 在linux环境下模拟不同IP地址的不同PC

javascript - 树莓派 PHP GPIO 读取

iphone - 使用 iPhone 发送 HTML 到远程客户端

security - 如何唯一标识一个网络?

linux - 301重定向DNS问题

c - 如何解析 MDNS 响应?

Python TCP 栈实现

linux - 在 IE 11 上运行 Protractor 测试

CANopen/CAN总线,我需要什么,包括协议(protocol)(OD?),在PC终端和CAN设备模块之间进行通信