In /etc/sysctl.conf I have setting net.ipv6.conf.eth0.disable_ipv6=1. I can see after during init.d calling sysctl the value is set. Confirmed by reading sysctl net.ipv6.conf.eth0.disable_ipv6 to a file and see the value is 1.

But after bootup when I do sysctl net.ipv6.conf.eth0.disable_ipv6 I see the value is changed to 0.

Any pointers on how to find out who modified this value during bootup.

Also, I see netifd has option ipv6 0 for this interface.

  • What's your distro and its version? Are you using NetworkManager? Nov 25, 2020 at 8:32

1 Answer 1


Much easier and cleaner is to just disable IPV6 altogether at kernel boot time. Then you won't have to worry about any other settings, as the kernel will not even know about IPV6. Edit your bootloader's script -- grub or syslinux or any other -- and just add this parameter to the kernel command line: ipv6.disable=1. Done. Reboot, and forget about IPV6 forever.

  • That does not really answer the question though. Nov 25, 2020 at 5:38
  • 1
    Not necessarily. If the actual problem was how to disable ipv6, then the OP wouldn't need to chase down questions about who and what is changing those setting. Furthermore, the OP gave no info as to what distro they are using, so it can be any one of numerous boot scripts that is doing the mischief.
    – Pourko
    Nov 25, 2020 at 6:40

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.