http://www.ttlsa.com/linux/curl-6-couldnt-resolve-host/
2. 解决问题
尝试解决方法:
修改dns
# cat /etc/resolv.conf | grep names |
nameserver 218.85.157.99 |
nameserver 218.85.152.99 |
改为 |
nameserver 114.114.114.114 |
nameserver 8.8.8.8 |
重新测试curl,问题得到解决。
3. ttlsa群友提供解决方法
于此同时,群里的一个福建群友在也反应这个问题,看来应该是电信DNS有调整的缘故,但是具体的原因还是不得而知。告知其修改dns,问题也得到解决。
今天ttlsa群里的”福州 – 要上天“(藏得很深很低调的大牛)询问此问题是否解决,并提供另外的解决方法。
3.1 执行curl指定ipv4
curl -4 www.baidu.com |
3.2 关闭ipv6
请参考CentOS6 / RHCE6 禁用IPv6协议模块:http://www.ttlsa.com/html/3640.html
如果是php程序,那么请在使用curl的时候指定ipv4的参数:CURL_IPRESOLVE_V4
感谢群友提供的解决方案. 如果你也遇到如上问题,不烦尝试下上面的解决方案.
4. curl无法解析原因
本文发出之后, 咱们ttlsa群主”north-boy”也找到原因所在,并且在“CentOS6 / RHCE6 禁用IPv6协议模块”提到,请看网址:http://www.ttlsa.com/html/3640.html
站点:运维生存时间 网址:http://www.ttlsa.com/html/3631.html