YaST Package Manager wants IPv6: I don't have it

it’s a couple of weeks I can’t perform YaST updates from my openSUSE 11.2.

The reason is that YaST wants to connect to repositories “only” through IPv6, but my network doesn’t support it. I quoted only because I suppose it prefers v6 over v4, but it keeps trying to connect without switching to v4 or returning error.

Even if I disabled IPv6 from YaST/Networking/Network Settings, I still have a local scope address. I connect to Wifi using KNetworkManager. The TCP/IP stack should know that if an interface has a local scope v6 address and a global v4 address, it’s a bad idea to keep trying with v6.

Italian mirror, garr.it, of openSUSE repository both has v4 and v6 addresses.
If I try to ping opensuse.mirror.garr.it I ping v4, but if I try to telnet that host on port 80 it tries to connect to v6. Same if I try to connect with Firefox.

How to tell Linux that I don’t have IPv6?
I’m connecting from University of Naples wireless network. While unina has IPv6 via GARR’s Teredo tunnel (2001:760::/32 as I remember), it doesn’t reach students’ network because DHCP server doesn’t release IPv6, nor Zeroconf obtains one.

I just would like to use classic IPv4 until, at least for now.



as a kernel parameter boot option

why: beginning with the kernel included in openSUSE 11.2 IPv6 is built
into the kernel, and on by default…the instructions above will
change that to off…

there are several threads already in the forums with specifics on how
to do that, if need it…

DenverD (Linux Counter 282315)
CAVEAT: http://is.gd/bpoMD
NNTP w/TBird | HTTP w/FFox 3.0.14-0.1 | KDE 3.5.7 | openSUSE
10.3 SMP i686
AMD Athlon 1 GB RAM | GeForce FX 5500 | ASRock K8Upgrade-760GX |
CMedia 9761 AC’97 Audio

…for example → here. DenverD described the basic workaround, my link only provides some more details (and an extra workaround to set the disabled IPv6 permanent so it will not have to be set again after each kernel-update).