如何在CentOS 7中禁止IPv6
最近，我的一位朋友问我该如何禁止IPv6。在搜索了一番之后，我找到了下面的方案。下面就是在我的CentOS 7 迷你服务器禁止IPv6的方法。  你可以用两个方法做到这个。 方法 1 编辑文件/etc/sysctl.conf， vi /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  方法 2 要在运行的系统中禁止IPv6，依次输
IPv6
222.134.70.138
@我的印象笔记
微博评论
2015-02-25T09:03:01.000
123.125.71.117
正需要这个呢！！！！
微博评论
2015-02-25T09:33:01.000
123.125.71.117
@我的印象笔记
微博评论
2015-02-25T09:33:01.000
171.214.226.104
正需要这个呢！！！！
mailbill
2015-02-25T10:12:48.000
60.247.119.214
ipv6.disable=1
kashu
2015-02-25T20:44:36.000
218.30.103.250
跟CentOS6这麽大差别
微博评论
2015-02-25T21:33:02.000
103.250.225.178
禁用IPV6的原因是什么呢？ 即使它是启用的，我们不用它不就可以了？还需要禁用吗？
贵在坚持
2015-03-18T10:56:07.000
106.120.101.58
我也不知道为啥。。。
linux
2015-03-18T15:11:51.000
122.191.33.39
为什么重新开机之后，又有了
来自 - 湖北恩施 的 Chrome/Windows 用户
2015-07-02T16:44:50.000
113.14.106.19
奈斯
来自广西北海的 Chrome 89.0|Windows 10 用户
2021-04-08T11:31:26.000
最近，我的一位朋友问我该如何禁止IPv6。在搜索了一番之后，我找到了下面的方案。下面就是在我的CentOS 7 迷你服务器禁止IPv6的方法。  你可以用两个方法做到这个。 方法 1 编辑文件/etc/sysctl.conf， vi /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  方法 2 要在运行的系统中禁止IPv6，依次输
最近，我的一位朋友问我该如何禁止IPv6。在搜索了一番之后，我找到了下面的方案。下面就是在我的CentOS 7 迷你服务器禁止IPv6的方法。


![](/data/attachment/album/201502/24/224745fkdfeg972z7rwett.jpg)


你可以用两个方法做到这个。


### 方法 1


编辑文件**/etc/sysctl.conf**，



```
vi /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

```

### 方法 2


要在运行的系统中禁止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

```

就是这样。现在IPv6已经禁止了。


### 我在禁止IPv6后遇到问题怎么办


你可能在禁止IPv6后遇到一些问题


#### 问题1：


如果你在禁止IPv6后SSH遇到问题，按照下面的做。


编辑 **/etc/ssh/sshd\_config** 文件


vi /etc/ssh/sshd\_config


找到下面的行：



```
#AddressFamily any

```

把它改成：



```
AddressFamily inet

```

或者，在这行的前面去掉注释**(#)**：



```
#ListenAddress 0.0.0.0

```

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



```
systemctl restart sshd

```

#### 问题2：


如果你在禁止Ipv6后启动postfix遇到问题，编辑**/etc/postfix/main.cf**：



```
vi /etc/postfix/main.cf

```

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



```
#inet_interfaces = localhost
inet_interfaces = 127.0.0.1

```

就是这样，干杯！




---


via: <http://www.unixmen.com/disable-ipv6-centos-7/>


作者：[SK](http://www.unixmen.com/author/sk/) 译者：[geekpi](https://github.com/geekpi) 校对：[wxy](https://github.com/wxy)


本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译，[Linux中国](http://linux.cn/) 荣誉推出

