Howto: Disable IPv6 on openSUSE 11.2 (Obselete)

Current versions of openSUSE (11.2, namely 64bit default- and desktop-kernel, 32bit desktop-kernel) will not let you disable IPv6 using YaST.

The reason:

zgrep CONFIG_IPV6= /proc/config.gz
CONFIG_IPV6=**y**

IPv6 has been compiled directly into the kernel, but since YaST tries to disable it using the module option

install ipv6 /bin/true

in /etc/modprobe.d/50-ipv6.conf, this has no effect (for this, CONFIG_IPV6=m would have to be set).

Workaround:

As root open the file /boot/grub/menu.lst with an editor and add the boot parameter

ipv6.disable=1

at the end of the respective line of the kernel-entries.

Example:

kernel /boot/vmlinuz-2.6.31.12-0.1-desktop root=/dev/disk/by-id/ata-WDC_WD3200JD-00KLB0_WD-WCAMR1269224-part1 resume=/dev/disk/by-id/ata-WDC_WD3200JD-00KLB0_WD-WCAMR1269224-part3 splash=verbose quiet showopts **ipv6.disable=1**

A bug report covering this issue can be found → here.

The boot parameter will only take effect when IPv6 has actually been compiled into the kernel, so deactivating it using a module option obviously implies IPv6 being build into the kernel - before using this workaround, one should test the system by using the above ‘zgrep’-command.

This article is based on a → contribution by Rain_Maker.

Thank you for the tip.

Thank you for this gropiuskalle. Though I am surprised it is still a problem for us x86_64 users since the bug goes back to before 11.2 went golden. Should have been a fix rolled out as an update by now.

An alternate possibility is to edit /etc/sysctl.conf and add this line:

net.ipv6.conf.all.disable_ipv6 = 1

Sometimes it’s better not to mess around with /boot/grub/menu.lst

Sometimes it’s better not to mess around with /boot/grub/menu.lst

Um… and in this case? Where’s the problem?

Yet another option is to edit the respective line in /etc/sysconfig/bootloader, in most cases that will be DEFAULT_APPEND and FAILSAFE_APPEND (in some cases also XEN_KERNEL_APPEND if you use that kernel-flavour). Edit it so

ipv6.disable=1

will appear at the end of the line (between the " " !) - the advantage of this method is that it’ll make this option persistent, while with the first way shown here /boot/grub/menu.lst has to be edited again after each kernel-update.

This can also be done via YaSTs editor for /etc/sysconfig.

Workaround:

As root open the file /boot/grub/menu.lst with an editor and add the boot parameter

ipv6.disable=1

Hi, does somebody has a quick info how to do that in grub2 ?

Thx, P_M.

Open YaST->System->Boot Loader, select “Boot Loader Options” and add that to the “Optional Kernel Command Line Parameter” line.

But disabling it in /etc/sysctl.conf should be enough as well I guess, by adding that line:

net.ipv6.conf.all.disable_ipv6 = 1

Sorry, I used the wrong subject. It’s for openSuSE 11.3_64 - but same mistake. Can’t update because of zypper and yast try to use IPv6. :frowning:

Thx.

BootLoaderOptions fixed it. Thanks.
No, sysctl.conf didn’t helped.

P.M.

If you edit the sysctl.conf, you may or may not know that changes aren’t applied immediately without further action.
You either need to reboot or execute one of the two following commands immediately (to apply without rebooting)

The non-systemd way (typically for 12.2 and earlier)

sysctl -p

The systemd way (12.3 and later although the above should still work indefinitely)

systemctl restart systemd-sysctl.service

If you still don’t observe changes, then you could be affected by a variation of what I posted in
https://forums.opensuse.org/english/get-technical-help-here/how-faq-forums/unreviewed-how-faq/486935-etc-sysctl-conf-not-read-boot-no-longer-usable.html

Although in the above thread sysctl on my machine started working after posting, it definitely had not been working for a long time beforehand. It’s unknown why it started working, it could have been an update pushed in the meantime or something “jiggled loose” and started working but I am pretty sure sysctl is not working in some undetermined number of machines.

If you feel ambitious, towards the end of my referenced thread, I posted a script that adds new IPv4 TCP/IP values which includes enlarging buffers and changing the Congestion Control Algorithm. If you run the script adding them to your sysctl, restart sysctl as I’ve described and still don’t see changes, then you should know that any other entries in your sysctl.conf likely aren’t being applied, also. Any modifications to sysctl.conf can be removed simply by deleting the new lines in the file.

TSU

This Howto is marked as Obselete because:

  1. openSUSE 11.2 is out of support;
  2. many ISPs support IPv6 nowadays.

Thus disabling IPv6 isn’t much of an issue nowadays.

On 2013-06-18 13:46, hcvv wrote:

> - many ISPs support IPv6 nowadays.

None here to my knowledge.


Cheers / Saludos,

Carlos E. R.
(from 12.3 x86_64 “Dartmouth” at Telcontar)

Sorry that you did not understand the main reason or this action. It is not about the exact number of ISPs that support a part or the whole of IPv6. It is about the need to switch IPv6 off in openSUSE.

Or, to go to your personal situation: do you have any need to switch off IPv6 in any of the supported openSUSE versions you use? And when yes, is this 11.2 Howto of any use to such an action to be undertaken by you?

On 2013-06-18 14:46, hcvv wrote:

> Sorry that you did not understand the main reason or this action. It is
> not about the exact number of ISPs that support a part or the whole of
> IPv6. It is about the need to switch IPv6 off in openSUSE.
>
> Or, to go to your personal situation: do you have any need to switch
> off IPv6 in any of the supported openSUSE versions you use?

Maybe, maybe not :slight_smile:

On occasion, I have problems updating because I get IPv6 addresses from
the openSUSE redirector which I can not use.

> And when
> yes, is this 11.2 Howto of any use to such an action to be undertaken by
> you?

That I do not know yet :slight_smile:

I just wanted to point out that it is not true, to my knowledge, that
«many ISPs support IPv6 nowadays». Not in my country, at least, I know
none using it for clients. In other countries the contrary may be true,
though.

That’s all. Not that the howto is valid or not.


Cheers / Saludos,

Carlos E. R.
(from 12.3 x86_64 “Dartmouth” at Telcontar)