IPv6被认为是IPv4的替代产品,它用来解决现有IPv4地址空间即将耗尽的问题。
但目前,开启IPv6可能会导致一些问题。因此有时我们需要关闭IPv6。
下面是IPv6的关闭方法应该适用于所有主流的Linux发行版包括Ubuntu、Debian、CentOS。

IPv6在CentOS6.5系统中默认是启用状态,通过以下方式可以确认IPv6的状态

1.1.查看系统IPv6的启用状态

以下命令返回值为0表示IPv6启用,1表示禁用

cat /proc/sys/net/ipv6/conf/all/disable_ipv6
cat /proc/sys/net/ipv6/conf/default/disable_ipv6
ifconfig
ip address list
netstat -anptl

1.2.查看内核模块调用

# 有返回结果,说明IPv6模块已启用,可以看出那些程序进行了调用,反之没有启用

lsmod | grep ipv6

2.禁用IPv6

2.1.临时禁用IPv6

# 命令行调整内核参数,临时禁用IPv6

echo  >/proc/sys/net/ipv6/conf/all/disable_ipv6
echo >/proc/sys/net/ipv6/conf/default/disable_ipv6
# 或着
sysctl -w net.ipv6.conf.all.disable_ipv6=
sysctl -w net.ipv6.conf.default.disable_ipv6=

2.2.永久禁用IPv6

echo " ">>/etc/sysctl.conf
echo "# made for disabled IPv6 in $(date +%F)">>/etc/sysctl.conf
echo 'net.ipv6.conf.all.disable_ipv6 = 1'>>/etc/sysctl.conf
echo 'net.ipv6.conf.default.disable_ipv6 = 1'>>/etc/sysctl.conf
echo 'net.ipv6.conf.lo.disable_ipv6 = 1'>>/etc/sysctl.conf
tail - /etc/sysctl.conf
sysctl -p
netstat -anptl

也可以直接编辑系统内核配置文件

vim /etc/sysctl.conf
------------------------------------------------------
# Made for disabled IPv6 .
net.ipv6.conf.all.disable_ipv6 =
net.ipv6.conf.default.disable_ipv6 =
net.ipv6.conf.lo.disable_ipv6 =
-------------------------------------------------------

# 如果想要为特定的网卡禁止IPv6,比如eth1,改为添加下面的行。

net.ipv6.conf.eth1.disable_ipv6 = 

# 注意检查修改network配置文件中的IPv6配置

vim /etc/sysconfig/network
--------------------------------------
NETWORKING_IPV6=no
--------------------------------------

# 注意修改ifcfg-eth0

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

2.3.拓展:禁用IPV6后,可能会导致某些服务无法启动

1)修改ssh配置,只监听IPv4地址

vim /etc/ssh/sshd_config
----------------------------------------
# 在第15行的前面去掉注释(#):
ListenAddress 0.0.0.0
AddressFamily inet
----------------------------------------
service sshd restart
netstat -anptl

# 注意:inet为仅IPv4,inet6为仅IPv6,any为都支持

2)mysql配置问题

mysql安装后默认会监听IPv6地址,关闭IPv6后,需要编辑,在[mysqld]中添加

vim /etc/my.cnf
----------------------------------------
bind-address=0.0.0.0
----------------------------------------

修改完重启mysql即可

3)配置redis,监听IPv4地址

vim  /usr/local/redis/conf/redis.conf
----------------------------------------
bind 127.0.0.1
----------------------------------------

4)配置memcached,监听IPv4地址

# 配置memcached,监听地址需要使用IP,使用localhost无法启动memcached

# memcached
/usr/local/memcached/bin/memcached -u root -p -l 127.0.0.1 -d -P /tmp/memcached1.pid

5)配置VSFTP

vim /etc/vsftpd/vsftpd.conf
----------------------------------------
listen=YES
listen_ipv6=NO
----------------------------------------

6)配置postfix监听IPv4地址

vim /etc/postfix/main.cf
----------------------------------------
inet_interfaces = 127.0.0.1
----------------------------------------

7)配置dovecot监听IPv4地址

vim /etc/dovecot/dovecot.conf
----------------
listen *
----------------

8)配置xinetd

# xinetd.conf第32行修改为:
vim /etc/xinetd.conf
------------------------
bind = 0.0.0.0
------------------------
# 重新载入配置文件
service xinetd reload

以上是禁用IPv6之后可能会受到影响的程序,可以根据自己的实际情况进行配置

3.配置启用IPv6

3.1.查看linux系统的IPv6状态

cat /proc/sys/net/ipv6/conf/all/disable_ipv6
cat /proc/sys/net/ipv6/conf/default/disable_ipv6

3.2.调整内核参数立即启用IPv6

echo  >/proc/sys/net/ipv6/conf/all/disable_ipv6
echo >/proc/sys/net/ipv6/conf/default/disable_ipv6
# 或着
sysctl -w net.ipv6.conf.all.disable_ipv6=
sysctl -w net.ipv6.conf.default.disable_ipv6=

修改完是临时的,重启失效

3.3. 修改内核参数,启用IPv6配置

vim /etc/sysctl.conf
----------------------------------------------
net.ipv6.conf.all.disable_ipv6 =
net.ipv6.conf.default.disable_ipv6 =
net.ipv6.conf.lo.disable_ipv6 =
----------------------------------------------
sysctl -p

3.4.手动调用系统ipv6内核

modprobe ipv6

3.5.报错处理

[root@zstest ~]# modprobe ipv6
FATAL: Module off not found.

失败原因:未启用IPv6模块

解决方法:
需要编辑配置文件,启用IPv6内核模块,在禁用状态下无法调用ipv6模块
该处理需要重启系统,启动后ipv6模块自动调用

vim /etc/modprobe.d/disable_ipv6.conf
--------------------------------
#alias net-pf- off
#alias ipv6 off
options ipv6 disable=
---------------------------------
[root@zstest ~]# lsmod |grep ipv6
ipv6

完毕,呵呵呵呵

linux配置禁用启用IPv6的更多相关文章

  1. 配置teredo,启用ipv6,xx-net

    最近使用XX-NET科学上网 ,提示要配置使用IPv6.根据github的上win10配置ipv6方式(https://github.com/XX-net/XX-Net/wiki/IPv6-Win10 ...

  2. 在Linux下禁用IPv6的方法小结

    在Linux下禁用IPv6的方法小结--http://www.jb51.net/LINUXjishu/335724.html 这篇文章主要介绍了在Linux下禁用IPv6的方法小结,禁用IPv6的操作 ...

  3. ifconfig命令--查看、配置、启用或禁用网络接口的工具

    ifconfig 是一个用来查看.配置.启用或禁用网络接口的工具,这个工具极为常用的.可以用这个工具来临时性的配置网卡的IP地址.掩码.广播地址.网关等.也可以把它写入一个文件中(比如/etc/rc. ...

  4. 如何在Linux下禁用IPv6

    如何在Linux下禁用IPv6 echo 1 > /proc/sys/net/ipv6/conf/all/disable_ipv6                            禁用IP ...

  5. 阿里云启用IPV6

    ping过别人的IPv6网址之后,可以确定,局域网是不支持IPv6的.所以要使用隧道技术建立两台机器之间的IPv6连接 1.发现测试用服务器上没有IPv6地址.所以测试服务器的内核应该是没有IPv6模 ...

  6. linux配置网卡IP地址命令详细介绍及一些常用网络配置命令

    linux配置网卡IP地址命令详细介绍及一些常用网络配置命令2010-- 个评论 收藏 我要投稿 Linux命令行下配置IP地址不像图形界面下那么方 便,完全需要我们手动配置,下面就给大家介绍几种配置 ...

  7. linux配置网关

    linux配置网关 输入账号root 再输入安装过程中设置的密码,登录到系统 vi /etc/sysconfig/network-scripts/ifcfg-eth0 #编辑配置文件,添加修改以下内容 ...

  8. (转)linux配置网卡的命令

    linux配置网卡的命令 原文:http://blog.51cto.com/lanxianting/1754923 1.配置命令 如果一台服务器需要通外网,能被远程连接,就得给这个台服务器配置ip,子 ...

  9. Ubuntu启用IPv6上google的方法

    Pv6就是我们通常所说的互联网协议,是TCP/IP的核心协议,那么在Linux下如何开启IPv6呢?下面以Ubuntu为例,给大家介绍下Ubuntu启用IPv6的方法. 方法: $sudo apt-g ...

随机推荐

  1. Log4J日志配置详解[转]

    一.Log4j简介 Log4j有三个主要的组件:Loggers(记录器),Appenders (输出源)和Layouts(布局).这里可简单理解为日志类别,日志要输出的地方和日志以何种形式输出.综合使 ...

  2. Spring Boot入门——文件上传与下载

    1.在pom.xml文件中添加依赖 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="ht ...

  3. Kafka特性

    ———————————————————————————————————————————————— [关键原理] 1.消息文件存储(消息堆积能力) 2.消息topic分区 3.消息顺序的保证 4.拉模型 ...

  4. Style样式的四种使用(包括用C#代码动态加载资源文件并设置样式)

    Posted on 2012-03-23 11:21 祥叔 阅读(2886) 评论(6) 编辑 收藏 在Web开发中,我们通过CSS来控制页面元素的样式,一般常用三种方式: 1.       内联样式 ...

  5. Linux : 密码正确不能正常登陆,日志提示Could not get shadow information for user

    今天,再玩Centos7的时候,尝试修改了下ssh的端口.因为默认开启了SELinux,如果没有修改这个文件配置就修改端口sshd服务就不能正常启动了. 但是,当我修改会22端口的时候还是不能正常登陆 ...

  6. 第五章 [BX]和loop指令

    5.1 [bx] [bx]是什么 和 [0] 有些类似,[0] 表示内存单元,它的偏移地址是 0. 例如: mov ax, [0] 内存以字节为单位:ax以字(16bit = 2Byte)为单位:al ...

  7. mongoDB——自动分片(转)

    原文地址:http://www.lanceyan.com/tech/arch/mongodb_shard1.html 在系统早期,数据量还小的时候不会引起太大的问题,但是随着数据量持续增多,后续迟早会 ...

  8. python-day41--约束条件

    一 .介绍 约束条件与数据类型的宽度一样,都是可选参数 作用:用于保证数据的完整性和一致性主要分为: PRIMARY KEY (PK) 标识该字段为该表的主键,可以唯一的标识记录 FOREIGN KE ...

  9. windows下线程间的通信方式

    1.事件: (在信息交换函数中将控件的值与控件id进行绑定,这样我们就可以更新或者获取控件的值) void CMy0722ThreadTalkingDlg::DoDataExchange(CDataE ...

  10. 二叉树—-1(No.9HN省赛小题)

    题目: 1013: Prototypes analyze 时间限制: 1 Sec  内存限制: 128 MB提交: 6  解决: 4[提交][状态][讨论版] 题目描述 ALpha Ceiling M ...