[opensuse] IPv6, 11.3, YaST & maybe routers
OK, so I've had a problem with my home machine that I think started with 11.2 and certainly is present after I upgraded to 11.3. The problem is a delay of a few seconds (5?) whenever I access a web site that I haven't just previously accessed. It's mainly noticeable as a delay in loading pages in Firefox but also occurs with other programs (e.g. wget). My working hypothesis has always been that this is some DNS issue probably causing a timeout, and my guess was that it's somehow related to IPv6. But I know nothing about IPv6 and not a lot about modern DNS and the delays weren't hugely annoying so I haven't investigated. But yesterday I had an epiphany. I clicked on a link to a forum how-to[1], that led me to another[2], that led me to a bugzilla[3] and an opensuse-kernel thread[4]. So last night I conducted an experiment and discovered how to make my problem go away. Hurray! The reason for this mail is that I now think there's a *bug in YaST* but I'm not confident that I really understand the issues properly. I know there are people here who understand these issues and won't bite my head off if I've got the wrong end of the stick. So I thought I'd try to clarify my understanding before deciding on the appropriate action. YaST is involved because I used it to check that IPv6 was *not* causing my problem. And it falsely told me that IPv6 was disabled. Specifically, YaST/Network Settings/Global Options/Enable IPV6 showed an empty checkbox. That is, it said IPv6 is disabled. But now I have learned an independent way to check: # cat /proc/sys/net/ipv6/conf/all/disable_ipv6 0 That is, IPv6 is NOT disabled in reality. Further checking indicated that it was not disabled in /etc/sysctl.conf either[5]. So I used the command-line to disable it and my problem was immediately cured: # echo 1 > /proc/sys/net/ipv6/conf/all/disable_ipv6 I also uncommented the relevant line in /etc/sysctl, which I hope will make the change persist across a reboot. So, now to the areas where I'd like clarification if anybody can help: (1) Are those two changes all I need to do/ the best way to disable IPv6? (2) Is the original problem actually indicative of some more fundamental misconfiguration either on my PC, my router or in my ISP's systems? (3) My reading of the YaST situation is: (a) the opensuse kernels were changed so that ipv6 is always built-in rather than loaded as a module (b) there was a period when YaST still tried to use module control to disable ipv6, which didn't work, but that problem in YaST was subsequently fixed and YaST should now be able to change the ipv6 state properly (c) BUT it is incorrectly reporting the state for some reason. Evidently it isn't looking in /proc or /etc/sysctl so I believe it must be trusting some other source of information that is no longer accurate. (d) Perhaps the inaccuracy occurs because of some flaw in the upgrade logic? If I'm right in my understanding, then I guess YaST should get it's status information from somewhere different and I should raise a bug against it? Cheers, Dave [1]<http://forums.opensuse.org/english/get-technical-help-here/how-faq-forums/unreviewed-how-faq/412555-disable-ipv6.html> [2]<http://forums.opensuse.org/new-user-how-faq-read-only/unreviewed-how-faq/433057-howto-disable-ipv6-opensuse-11-2-a.html> [3]<https://bugzilla.novell.com/show_bug.cgi?id=539869> [4]<http://lists.opensuse.org/opensuse-kernel/2010-11/msg00071.html> [5] /etc/sysctl.conf # Disable response to broadcasts. # You don't want yourself becoming a Smurf amplifier. net.ipv4.icmp_echo_ignore_broadcasts = 1 # enable route verification on all interfaces net.ipv4.conf.all.rp_filter = 1 # disable IPv6 completely #net.ipv6.conf.all.disable_ipv6 = 1 # enable IPv6 forwarding #net.ipv6.conf.all.forwarding = 1 # increase the number of possible inotify(7) watches fs.inotify.max_user_watches = 65536 # avoid deleting secondary IPs on deleting the primary IP net.ipv4.conf.default.promote_secondaries = 1 net.ipv4.conf.all.promote_secondaries = 1 -- To unsubscribe, e-mail: opensuse+unsubscribe@opensuse.org For additional commands, e-mail: opensuse+help@opensuse.org
On 03/04/2011 06:17 AM, Dave Howorth wrote:
OK, so I've had a problem with my home machine that I think started with 11.2 and certainly is present after I upgraded to 11.3. The problem is a delay of a few seconds (5?) whenever I access a web site that I haven't just previously accessed. It's mainly noticeable as a delay in loading pages in Firefox but also occurs with other programs (e.g. wget).
My working hypothesis has always been that this is some DNS issue probably causing a timeout, and my guess was that it's somehow related to IPv6. But I know nothing about IPv6 and not a lot about modern DNS and the delays weren't hugely annoying so I haven't investigated.
But yesterday I had an epiphany. I clicked on a link to a forum how-to[1], that led me to another[2], that led me to a bugzilla[3] and an opensuse-kernel thread[4]. So last night I conducted an experiment and discovered how to make my problem go away. Hurray!
The reason for this mail is that I now think there's a *bug in YaST* but I'm not confident that I really understand the issues properly. I know there are people here who understand these issues and won't bite my head off if I've got the wrong end of the stick. So I thought I'd try to clarify my understanding before deciding on the appropriate action.
YaST is involved because I used it to check that IPv6 was *not* causing my problem. And it falsely told me that IPv6 was disabled. Specifically, YaST/Network Settings/Global Options/Enable IPV6 showed an empty checkbox. That is, it said IPv6 is disabled.
But now I have learned an independent way to check:
# cat /proc/sys/net/ipv6/conf/all/disable_ipv6 0
That is, IPv6 is NOT disabled in reality.
Further checking indicated that it was not disabled in /etc/sysctl.conf either[5].
So I used the command-line to disable it and my problem was immediately cured:
# echo 1 > /proc/sys/net/ipv6/conf/all/disable_ipv6
I also uncommented the relevant line in /etc/sysctl, which I hope will make the change persist across a reboot.
So, now to the areas where I'd like clarification if anybody can help:
(1) Are those two changes all I need to do/ the best way to disable IPv6?
(2) Is the original problem actually indicative of some more fundamental misconfiguration either on my PC, my router or in my ISP's systems?
(3) My reading of the YaST situation is: (a) the opensuse kernels were changed so that ipv6 is always built-in rather than loaded as a module (b) there was a period when YaST still tried to use module control to disable ipv6, which didn't work, but that problem in YaST was subsequently fixed and YaST should now be able to change the ipv6 state properly (c) BUT it is incorrectly reporting the state for some reason. Evidently it isn't looking in /proc or /etc/sysctl so I believe it must be trusting some other source of information that is no longer accurate. (d) Perhaps the inaccuracy occurs because of some flaw in the upgrade logic?
If I'm right in my understanding, then I guess YaST should get it's status information from somewhere different and I should raise a bug against it?
Cheers, Dave
[1]<http://forums.opensuse.org/english/get-technical-help-here/how-faq-forums/unreviewed-how-faq/412555-disable-ipv6.html> [2]<http://forums.opensuse.org/new-user-how-faq-read-only/unreviewed-how-faq/433057-howto-disable-ipv6-opensuse-11-2-a.html> [3]<https://bugzilla.novell.com/show_bug.cgi?id=539869> [4]<http://lists.opensuse.org/opensuse-kernel/2010-11/msg00071.html>
[5] /etc/sysctl.conf # Disable response to broadcasts. # You don't want yourself becoming a Smurf amplifier. net.ipv4.icmp_echo_ignore_broadcasts = 1 # enable route verification on all interfaces net.ipv4.conf.all.rp_filter = 1 # disable IPv6 completely #net.ipv6.conf.all.disable_ipv6 = 1 # enable IPv6 forwarding #net.ipv6.conf.all.forwarding = 1 # increase the number of possible inotify(7) watches fs.inotify.max_user_watches = 65536 # avoid deleting secondary IPs on deleting the primary IP net.ipv4.conf.default.promote_secondaries = 1 net.ipv4.conf.all.promote_secondaries = 1
Hi Dave, You may also want to try the following: # echo “alias net-pf-10 off” >> /etc/modprobe.conf.local # echo “alias ipv6 off” >> /etc/modprobe.conf.local The reboot the machine. kind regards, Phil -- To unsubscribe, e-mail: opensuse+unsubscribe@opensuse.org For additional commands, e-mail: opensuse+help@opensuse.org
Phil Savoie wrote:
You may also want to try the following:
# echo “alias net-pf-10 off” >> /etc/modprobe.conf.local # echo “alias ipv6 off” >> /etc/modprobe.conf.local
The reboot the machine.
I don't understand that. Doesn't modprobe.conf only affect modules? Since opensuse no longer uses a module for ipv6, isn't modprobe.conf irrelevant? Cheers, Dave -- To unsubscribe, e-mail: opensuse+unsubscribe@opensuse.org For additional commands, e-mail: opensuse+help@opensuse.org
On 2011/03/04 11:17 (GMT) Dave Howorth composed:
# cat /proc/sys/net/ipv6/conf/all/disable_ipv6 0
That is, IPv6 is NOT disabled in reality.
Further checking indicated that it was not disabled in /etc/sysctl.conf either[5].
So I used the command-line to disable it and my problem was immediately cured:
# echo 1> /proc/sys/net/ipv6/conf/all/disable_ipv6
FWIW, I set ipv6.disable=1 on my Grub kernel lines in 11.3 & 11.4, and /proc/sys/net/ipv6* doesn't even exist. -- "How much better to get wisdom than gold, to choose understanding rather than silver." Proverbs 16:16 NKJV Team OS/2 ** Reg. Linux User #211409 Felix Miata *** http://fm.no-ip.com/ -- To unsubscribe, e-mail: opensuse+unsubscribe@opensuse.org For additional commands, e-mail: opensuse+help@opensuse.org
participants (3)
-
Dave Howorth
-
Felix Miata
-
Phil Savoie