linux配置禁用启用IPv6

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 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

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 -5 /etc/sysctl.conf
sysctl -p
netstat -anptl

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

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

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

net.ipv6.conf.eth1.disable_ipv6 = 1

# 注意检查修改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 12001 -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 0 >/proc/sys/net/ipv6/conf/all/disable_ipv6
echo 0 >/proc/sys/net/ipv6/conf/default/disable_ipv6
# 或着
sysctl -w net.ipv6.conf.all.disable_ipv6=0
sysctl -w net.ipv6.conf.default.disable_ipv6=0

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

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

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

3.4.手动调用系统ipv6内核

modprobe ipv6

3.5.报错处理

[[email protected] ~]# modprobe ipv6
FATAL: Module off not found.

失败原因:未启用IPv6模块

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

vim /etc/modprobe.d/disable_ipv6.conf
--------------------------------
#alias net-pf-10 off
#alias ipv6 off
options ipv6 disable=0
---------------------------------
[[email protected] ~]# lsmod |grep ipv6
ipv6                  335781  14 

完毕,呵呵呵呵

原文地址:https://www.cnblogs.com/tssc/p/9210990.html

时间: 2024-08-05 08:04:37

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

在Linux下禁用IPv6的方法小结

在Linux下禁用IPv6的方法小结--http://www.jb51.net/LINUXjishu/335724.html 这篇文章主要介绍了在Linux下禁用IPv6的方法小结,禁用IPv6的操作还是考虑到目前和IPv4的兼容性问题,需要的朋友可以参考下 Pv6被认为是IPv4——互联网上的传统32位地址空间——的替代产品,它用来解决现有IPv4地址空间即将耗尽的问题.然而,由于已经有大量主机.设备用IPv4连接到了互联网上,所以想在一夜之间将它们全部切换到IPv6几乎是不可能的.许多IPv

Linux 中如何启用和禁用网卡(不是很全面但是很好用)

启用禁用网卡可以使用以下方法来完成: ifconfig 命令:用于配置网卡,可以提供网卡的很多信息. ifconfig 的常用语法: # ifconfig [NIC_NAME] Down/Up 执行以下命令禁用 enp0s3 网卡. # ifconfig enp0s3 down 执行以下命令启用 enp0s3 网卡. # ifconfig enp0s3 up ifdown/up 命令:ifdown 命令用于禁用网卡,ifup 命令用于启用网卡. ifdown/ifup 的常用语法: # ifdo

如何在Linux下禁用IPv6

如何在Linux下禁用IPv6 echo 1 > /proc/sys/net/ipv6/conf/all/disable_ipv6                            禁用IPv6(包括回环接口) echo 1 > /proc/sys/net/ipv6/conf/default/disable_ipv6                     禁用IPv6(默认) vim /etc/sysctl.conf                                    

centos6.5 (linux) 禁用模块 IPV6模块的方法

装完centos后,默认开启了一些模块,但是有些模块并不是我们必须的.比如目前尚未在中国普及的IPV6 如何关闭IPV6呢 下面介绍的方法,也可以在关闭其他模块的时候使用 第一步: 查找模块名称 使用命令:lsmod 查看系统启动的模块,找出我们需要的 IPV6相关的2个模块分别是net-pf-10 ipv6 第二步: 编辑/etc/modprobe.d/dist.conf 在最后加入 #edit by dwj   备注一下编辑信息 alias net-pf-10 off alias ipv6

Linux配置IP地址的方法

ifconfig命令临时配置IP地址 ifconfig命令:查看与配置网络状态的命令 // 查看当前网络状态 #ifconfig // 配置网卡的临时生效的IP地址 #ifconfig eth0 192.168.0.200 netmask 255.255.255. 0 // 配置网关 route add default gw 192.168.0.1 setup工具永久配置IP地址 RedHat专有图形化工具setup进行永久配置IP地址. // 使用setup工具配置,启用DHCP时选择*,不启

linux(centos) 服务器搭配IPV6

为服务器开通 IPV6 总共分为4步 centos默认ipv6是关闭的,开启IPV6 去 https://www.tunnelbroker.net 为服务器对应的ipv4地址申请对应的ipv6地址 为域名添加ipv6添加 AAAA (ipv6)解析 配置apache 对应 ipv6 一 开启ipv6 centos 6.5 版本 1.编辑文件,/etc/sysconfig/network,将其中的 NETWORKING_IPV6=no 改为 NETWORKING_IPV6=yes, 复制代码 vi

Linux 配置IP

Oracle Linux R5 配置:IP.子网掩码 vi  /etc/sysconfig/network-scripts/ifcfg-eth0 DEVICE=eth0                                   //网卡接口名称 BOOTPROTO=none                         //(none | static(手动指定地址) | dhcp(动态获取) | bootp) ONBOOT=yes                          

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

linux配置网卡IP地址命令详细介绍及一些常用网络配置命令2010-12-17 0 个评论 收藏 我要投稿 Linux命令行下配置IP地址不像图形界面下那么方 便,完全需要我们手动配置,下面就给大家介绍几种配置的方法: 即时生效(重启后失效): ifconfig eth0 192.168.1.102 netmask 255.255.255.0 //添加IP地址 route add default gw 192.168.1.1 //添加网关 启动生效: vim /etc/sysconfig/ne

Ubuntu系统启用IPv6的两种方法

IPv6就是我们通常所说的互联网协议,是TCP/IP的核心协议,那么在Linux下如何开启IPv6呢?下面以Ubuntu为例,给大家介绍下Ubuntu启用IPv6的方法. 方法: $sudo apt-get install miredo $ifconfig 在结果中应该能看见一个叫 teredo 的虚拟网卡. $ ping6 ipv6.google.com PING ipv6.google.com(2404:6800:8003::93) 56 data bytes 64 bytes from 2