如何使用 dhcpcd 获取新 IP

如何使用 dhcpcd 获取新 IP

我正在使用 64 位 ArchLinux 并且DHCPCD。如何使用 检索新IP dhcpcd?我尝试重新启动守护进程,我得到的 IP 地址仍然相同

$ ifconfig
enp3s0: flags ...
   inet xxx ...
$ sudo dhcpcd@enp3s0
$ ifconfig 
enp3s0: flags ...
   inet xxx ... ==> not changed

我试过了,sudo dhclient -v -r但是IP还是一样。

我找到了一种方法,但仍然需要单击系统托盘(断开连接,重新连接):

$ sudo rm /var/lib/dhcpcd/dhcpcd-enp3s0.lease
$ sudo systemctl restart dhcpcd@enp3s0
# right click on the network icon on system tray, disconnect, reconnect

答案1

您已运行ifconfig查看接口名称,这是一个好的开始。之后,检查以太网电缆是否已插入并正常工作:

[root@splunge ~]# mii-tool enp3s8
enp3s8: negotiated 100baseTx-FD flow-control, link ok

这是来自一个正在运行的 Arch 服务器。您可以使用mii-toolethtool检查连接和电缆。

确定电缆已插入并正常工作后,清除任何dhcpcd仍在运行或挂起的东西:

dhcpcd -k enp3s0

然后,dhcpcd在打开调试消息的情况下运行:

dhcpcd -d enp3s0

来自该调用的消息可能会帮助您决定下一步要做什么。

请注意,我假设您将以su -root 身份登录,但我发现sudo一直使用很麻烦。如果需要sudo,请适当修改上面的命令。

编辑:

我可能误解了你的问题。如果dhcpcd有效,那么它将始终尝试获取上次获得租约时的相同 IP 地址。

您可以通过删除,然后停止并启动该进程来强制dhcpcd获取完全不同的 IP 地址。/var/lib/dhcpcd/dhcpcd-enp3s0.leasedhcpcd

相关内容