gpt4 book ai didi

如果脚本启动后连接电缆,Python 无法获取 IP

转载 作者:行者123 更新时间:2023-11-30 23:39:23 25 4
gpt4 key购买 nike

我希望这不会跨越 super 用户的领域。

所以我有一个嵌入式linux,系统进程自然就被剥离了。我不太确定哪个系统进程监视物理层并在插入网线时启动 dhcp 客户端,但我自己制作了一个。¡问题是,如果我有一个使用 http 连接的 python 脚本,在我有 IP 地址之前运行,它永远不会获得连接。即使我有一个有效的IP,python仍然有

“名称解析中出现临时错误”

那么如何让 python 实现新连接可用,而不需要重新启动脚本呢?

或者,我是否缺少一些正常程序,Linux 在网线连接时正常运行。

我使用的dhcp客户端是udhcpc,python版本是2.6。使用 httplib 进行连接。

最佳答案

听起来像httplib缓存/etc/resolv.conf,它在您的DHCP客户端获取IP后更新。

您可能会考虑编写一个包装器脚本,等待获取 IP 地址,然后调用您的 python 脚本。

或者,您可以尝试在 Python 脚本中打开任何套接字连接,直到获得 IP 地址并更新 /etc/resolv.conf 为止。

编辑

httplib 使用 socket.create_connection() 经过一番搜索后, I found does cache /etc/resolv.conf。 (嗯,看来嵌入式版本的 libc 实际上是在做缓存)。

你可以尝试SugarLabs' solution ,虽然我不能说它的有效性。

关于如果脚本启动后连接电缆,Python 无法获取 IP,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13606584/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com