使用经典的nsswitch.conf配置:
hosts: files dns
如果DNS未应答(或配置错误),尝试使用 gethostbyname (或 getaddrinfo )解析名称可能需要一段时间。
有没有办法在nsswitch.conf中配置超时或使用管理超时的备用api?
答案 0 :(得分:6)
有getaddrinfo_a,但它是特定于Linux的 GNU glibc特有的。或者,您可以生成一个线程并在其中调用getaddrinfo。不要在线程中使用gethostbyname,因为它不是thread-safe。