即使将网络更改为动态 IP 后,静态 IP 仍然有效

即使将网络更改为动态 IP 后,静态 IP 仍然有效

我使用 wpa_supplicant 作为客户端连接到 AP。当我尝试将无线连接从 STATIC 更改为 DHCP 时(使用以下命令调用 dhclient,使用租约文件 [dhclient-wlan0.leases] 选项),

sudo /sbin/dhclient -V wlan0 -lf /var/lib/dh​​client-wlan0.leases。

  1. 在“ipconfig”命令和网络管理器的 UI 中显示静态 IP。但在内核消息中我可以看到已获取 DHCP IP。
  2. 还观察到,如果我们调用没有租约文件选项的 dhclient,则不会出现此问题。

从 /sbin/dhclient 脚本进行深度调试后,发现旧 IP 没有被释放

进一步解释一下,如果我将 192.168.3.102 设置为静态 IP,并且我想要一个动态 IP(例如:3.20.30.10),它不是静态 IP。但我的 ifconfig 显示“192.168.3.102”而不是动态 IP。

需要一些关于 dhclient 的上述行为的帮助,以及当我们使用 lease-file 选项调用 dhclient 时如何解决此问题。

答案1

您应该更改您的 /etc/network/interfaces 文件。

auto wlan0
iface wlan0 inet static
    address 192.168.3.102
    netmask 255.255.255.0
    gateway 192.168.0.1

到:

    auto wlan0
    iface wlan0 inet dhcp

然后您将需要关闭 wlan0 并重新启动。ifdown wlan0,ifup wlan0。

相关内容