今天机房几台服务器都无法访问公网接口,原因是——解析公网域名出错,具体情况如下
ping 公网ip或者域名 都没有问题
curl 公网域名 出错
curl -4 访问公网域名没有问题
综合分析 是ipv6的问题,把ipv6模块关掉
一、针对centos6 的方法
方法1:修改网络文件,把ipv6相关的全部注释
# vi /etc/sysconfig/network-scripts/ifcfg-eth1
重启network
# service network restart
其它方法
1、在/etc/modprobe.d/目录下增加一个新的配置文件ipv6.conf
内容如下
alias net-pf-10 off
options ipv6 disable=1
2、在 /etc/sysconfig/network新增一行内容
NETWORKING_IPV6=off
3、禁止服务ip6tables随系统启动
chkconfig ip6tables off
shutdown -h now
4、确认禁用ip是否禁用成功,运行如下命令,无内容输出即可
#ip -6 addr show
或者
# ifconfig -a
查看是否有IPv6 相关的输出
二、针对centos7 的方法
网上的方法试了一大堆,都没有效果,curl www.baidu.com 还是报解析错误。
有效方法:
编辑/etc/default/grub,在GRUB_CMDLINE_LINUX这一项加上的 ipv6.disable=1
修改前:
修改后:
修改完毕后保存,运行
# grub2-mkconfig -o /boot/grub2/grub.cfg
重新生成grub.cfg文件。
[root@localhost Desktop]# grub2-mkconfig -o /boot/grub2/grub.cfg Generating grub configuration file ... Found linux image: /boot/vmlinuz-3.10.0-514.2.2.el7.x86_64 Found initrd image: /boot/initramfs-3.10.0-514.2.2.el7.x86_64.img Found linux image: /boot/vmlinuz-3.10.0-327.36.3.el7.x86_64 Found initrd image: /boot/initramfs-3.10.0-327.36.3.el7.x86_64.img Found linux image: /boot/vmlinuz-3.10.0-327.el7.x86_64 Found initrd image: /boot/initramfs-3.10.0-327.el7.x86_64.img Found linux image: /boot/vmlinuz-0-rescue-d885883cdb4944609bc5e3493dd2b680 Found initrd image: /boot/initramfs-0-rescue-d885883cdb4944609bc5e3493dd2b680.img done
重启服务器……
三、最快捷方法
以上操作都要修改服务器变量,甚至重启机器 比较麻烦
简单方法 设置curl的别名 将 curl -4 这个命令 设置别名为curl ,这样命令行运行curl 实际运行的是 curl -4
# vi /etc/bashrc 在最后添加 alias curl='curl -4'
保存
运行生效
#. ~/.bashrc (第一个点后面是空格)
今天的文章curl可以访问但浏览器访问不了_dns怎么设置才能上网分享到此就结束了,感谢您的阅读,如果确实帮到您,您可以动动手指转发给其他人。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/49700.html