Recently, a friend of mine asked me how to disable IPv6. After searching for a few, I found the following scenario. Here's how to turn off IPv6 on my CentOS 7 mini-server.
You can do this in two ways.
Method 1
Edit File /etc/sysctl.conf,
- VI /etc/sysctl. conf
Add the following line:
- NET. IPv6. Conf. All. Disable_ipv6 =1
- NET. IPv6. Conf. Default. Disable_ipv6 =1
If you want to disable IPV6 for a particular NIC, for example, for ENP0S3, add the following line.
- NET. IPv6. Conf. Enp0s3. Disable_ipv6 =1
Save and exit the file.
Execute the following command to make the setting effective.
- Sysctl -p
Method 2
To disable IPV6 in a running system, enter the following command:
- echo 1>/proc/sys/net/ipv6/conf/all/Disable_ IPv6
- echo 1>/proc/sys/net/ipv6/conf/default/ Disable_ipv6
Or
- Sysctl -w net. IPv6. Conf. All. Disable_ipv6=1
- Sysctl -w net. IPv6. Conf. Default. Disable_ipv6=1
That's it. Now the IPV6 has been banned.
What do I do if I have problems after banning IPv6?
You may have some problems after banning IPv6.
Question 1:
If you are having problems with SSH after you disable IPV6, follow the instructions below.
Edit /etc/ssh/sshd_config file
Vi/etc/ssh/sshd_config
Locate the following line:
- #AddressFamily any
Change it to:
- AddressFamily inet
Or, remove the comment (#)in front of the line:
- #ListenAddress 0.0.0.0
Then restart SSH for the change to take effect.
- Systemctl Restart sshd
Question 2:
If you are having trouble starting postfix after you disable Ipv6, edit /etc/postfix/main.cf:
- VI /etc/postfix/main. CF
Comment out the localhost part of the configuration and use the IPv4 loopback.
- #inet_interfaces = localhost
- Inet_interfaces =127.0. 0.1
How to disable IPv6 in CentOS 7