Centos7 disable ipv6

原创 2015年11月19日 20:20:03

今天发现执行curl ipinfo.io 或者curl www.baidu.com会报错,而且yum makecache或者yum update的时候都会出现无法解析的情况,但是dns设置是正确(ping www.baidu.com是OK的),据说应该禁用ipv6,因为这样可以节约资源,经试验,当禁用所有ipv6模块后,curl正常,但如果仅仅是禁用ipv6而不禁用所有ipv6模块的话,curl仍然有问题,有可能是网络的问题,因为今天的网络很不稳定,但是yum的问题依旧,oh no,本来以为dns设置了两个,才发现只设置了一个8.8.8.8,现在再添加一个114.114.114.114正常。总体来说很大可能是网络问题,但不管了,这篇主要讲解如何关闭ipv6。

一:启用ipv6的情况下

1.运行ifconfig


2.执行lsmod | grep ipv6


二:下面给出禁用ipv6的方法

2.1.直接启动的时候即禁用ipv6模块

1.vim /etc/default/grub

2.GRUB_CMDLINE_LINUX=””在这一行的双引号中添加一个字段ipv6.disable=1,注意和后面的字段之间留一个空格。

3.grub2-mkconfig -o /boot/grub2/grub.cfg

4.reboot

2.2.静态重启ipv6,永久生效

编辑文件/etc/sysctl.conf添加下面的行:

net.ipv6.conf.all.disable_ipv6 =1

net.ipv6.conf.default.disable_ipv6 =1

如果你想要为特定的网卡禁止IPv6,比如,对于enp0s3,添加下面的行,

net.ipv6.conf.enp0s3.disable_ipv6 =1

保存并退出文件。

执行下面的命令来使设置生效。

sysctl -p

执行成功后,ifconfig不再显示ipv6信息,lsmod | grep ipv6相应模块也还在。重启后仍然有效。

2.3.运行的系统中禁止IPv6,即时生效

依次输入下面的命令:

echo 1>/proc/sys/net/ipv6/conf/all/disable_ipv6

echo 1>/proc/sys/net/ipv6/conf/default/disable_ipv6

或者,

sysctl -w net.ipv6.conf.all.disable_ipv6=1

sysctl -w net.ipv6.conf.default.disable_ipv6=1

执行成功后可以发现ifconfig不再显示ipv6,但lsmod | grep ipv6相应模块还在,本方法重启后无效。

2.4.其他方法(未经验证)

vim /etc/sysctl.conf : net.ipv6.conf.all.disable_ipv6=1

vim /etc/sysconfig/network: NETWORKING_IPV6=no

vim /etc/sysconfig/network-scripts/ifcfg-eth0:IPV6INIT=no

disable the ip6tables service : chkconfig ip6tables off

reload the sysctl configuration:
# sysctl -p
or
# reboot

三:验证

1.执行lsmod | grep ipv6已经没有之前的显示了,成功。

2.执行cat /proc/sys/net/ipv6/conf/all/disable_ipv6,输出1表明禁用,0没有禁用(如果启动的时候就已经禁用了ipv6模块,则/proc/sys/net目录下面没有ipv6子目录)。

3.执行ifconfig查看上图所示信息。

四.问题

1.SSH遇到问题,按照下面的做。

编辑 /etc/ssh/sshd_config 文件

vi /etc/ssh/sshd_config

找到下面的行:

#AddressFamily any

把它改成:

AddressFamily inet

或者,在这行的前面去掉注释(#):

#ListenAddress 0.0.0.0

接着重启ssh来使改变生效。

systemctl restart sshd

2.启动postfix遇到问题

编辑/etc/postfix/main.cf:

vi /etc/postfix/main.cf

注释掉配置中的localhost部分,并且使用ipv4回环。

#inet_interfaces = localhost

inet_interfaces =127.0.0.1

3.某些服务无法启动

比如VSFTP,对于VSFTP,需要修改/etc/vsftpd/vsftpd.conf文件中的listen和listen_ipv6两个选项:

listen=YES

listen_ipv6=NO



相关文章推荐

CentOS7彻底关闭IPV6

CentOS7彻底关闭IPV6
  • rznice
  • rznice
  • 2017年01月04日 10:38
  • 4005

如何禁用centos7中的ipv6

为了避免SELinux和其它组件出问题,尽量不要禁用ipv6模块,将下面的配置加入到/etc/sysctl.conf文件中: net.ipv6.conf.all.disable_ipv6 ...
  • cnxxrj
  • cnxxrj
  • 2016年04月01日 19:41
  • 537

阿里云centos7创建ipv6隧道

阿里云ECS的操作系统对于IPV6的支持并未做特别的限制,如果你需要系统能支持ipv6协议,你按照对应的系统的配置方法来配置即可,但目前ECS主机的网络尚不支持IPV6。 下面我介绍一下怎么创建...

如何在CentOS 7中禁止IPv6

https://linux.cn/article-4935-1.html 最近,我的一位朋友问我该如何禁止IPv6。在搜索了一番之后,我找到了下面的方案。下面就是在我的CentOS 7 迷你...

RHEL 7 & CentOS 7禁用IPV6

RHEL 7 & CentOS 7下禁用IPV6的方法和之前的版本不太一样了,本文整理了一下处理方法:验证IPV6是否关闭首先,过去通过查看内核加载模块的方式看上去不是很有效了,在一个禁用了ipv6的...

阿里云通过He.net添加IPV6支持(本文对应的服务器操作系统为CentOS)

1、阿里云限制了ipv6的功能,需要修改开启,编辑/etc/sysctl.conf,修改关于ipv6的设置 net.ipv6.conf.all.disable_ipv6 = 0 net.ipv6....

使用Linux搭建IPV6路由器(CentOS版)

Building a IPV6 Router with Linux(CentOS) Version 1.0.0 Date 2010-11-20 Author ipcpu Website htt...
  • kezhen
  • kezhen
  • 2013年08月08日 17:08
  • 1575

腾讯云Centos开启IPV6

先看下开启后的效果吧。 [root@VM_centos ~]# ifconfig eth0      Link encap:Ethernet  HWaddr 52:54:00:341:52   ...

CentOS 5下安装perl module以支持IPV6

在我们的产品中用到了LWP::UserAgent,用于在perl代码中进行http请求,测试发现在纯V6环境下会返回下面的错误: Can't connect to [2001:db8:0:1:10:...

CentOS下的IPV6地址配置

linux要和主机进行通信就要必须有IP地址。对于我们这些初学者来说,新装的LINUX怎么配置IP呢?   我们这里通过命令的方法设定IP(注意配置IP必须在root用户下进行) 1...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Centos7 disable ipv6
举报原因:
原因补充:

(最多只允许输入30个字)