curl: (6) Couldn’t resolve host ‘www.’

网友投稿 962 2023-02-14

本站部分文章、图片属于网络上可搜索到的公开信息,均用于学习和交流用途,不能代表睿象云的观点、立场或意见。我们接受网民的监督,如发现任何违法内容或侵犯了您的权益,请第一时间联系小编邮箱jiasou666@gmail.com 处理。

curl: (6) Couldn’t resolve host ‘www.’

上周, 部分站点出现Couldn't resolve host.....问题,  导致公司所有走api的程序都无法正常使用(系统redhat 6.3的都出现问题, redhat 5一切OK). 最后解决方法找到了,但是具体原因目前还未知.

从这个报错,可以很明显的发现是域名解析不了。于是做如下排查。

1. 故障排除

1. 1 测试域名是否能解析到

简单的使用ping来测试,发现DNS解析是OK。

1.2 测试curl是否有故障

竟然真的不行,这种奇葩问题首次遇到.

2. 解决问题

尝试解决方法:

修改dns

1
2
3
4
5
6
# cat /etc/resolv.conf | grep names
nameserver218.85.157.99
nameserver218.85.152.99
改为
nameserver114.114.114.114
nameserver8.8.8.8

重新测试curl,问题得到解决。

3. 群友提供解决方法

于此同时,群里的一个福建群友在也反应这个问题,看来应该是电信DNS有调整的缘故,但是具体的原因还是不得而知。告知其修改dns,问题也得到解决。

今天群里的"福州 - 要上天"(藏得很深很低调的大牛)询问此问题是否解决,并提供另外的解决方法。

3.1 执行curl指定ipv4

3.2 关闭ipv6

如果是php程序,那么请在使用curl的时候指定ipv4的参数:CURL_IPRESOLVE_V4

感谢群友提供的解决方案. 如果你也遇到如上问题,不烦尝试下上面的解决方案.

4. curl无法解析原因

上一篇:增量备份、差异备份和完全备份的区别
下一篇:关于java系统性能测试文档的信息
相关文章

 发表评论

暂时没有评论,来抢沙发吧~