Can't update repos, install software, etc (zypper or yast)

zypper ref looks like this:

> sudo zypper ref
Download (curl) error for ‘http://download.opensuse.org/distribution/13.2/repo/non-oss/content’:
Error code: Connection failed
Error message: Failed to connect to download.opensuse.org port 80: Network is unreachable

Abort, retry, ignore? [a/r/i/? shows all options] (a): i
Do you want to disable the repository openSUSE-13.2-Non-Oss permanently? [yes/no] (no):
Skipping repository ‘openSUSE-13.2-Non-Oss’ because of the above error.
Download (curl) error for ‘http://download.opensuse.org/distribution/13.2/repo/oss/content’:
Error code: Connection failed
Error message: Failed to connect to download.opensuse.org port 80: Network is unreachable

Abort, retry, ignore? [a/r/i/? shows all options] (a): i
Do you want to disable the repository openSUSE-13.2-Oss permanently? [yes/no] (no):
Skipping repository ‘openSUSE-13.2-Oss’ because of the above error.
Download (curl) error for ‘http://download.opensuse.org/update/13.2/repodata/repomd.xml’:
Error code: Connection failed
Error message: Failed to connect to download.opensuse.org port 80: Network is unreachable

Abort, retry, ignore? [a/r/i/? shows all options] (a): i
Do you want to disable the repository openSUSE-13.2-Update permanently? [yes/no] (no):
Skipping repository ‘openSUSE-13.2-Update’ because of the above error.
Download (curl) error for ‘http://download.opensuse.org/update/13.2-non-oss/repodata/repomd.xml’:
Error code: Connection failed
Error message: Failed to connect to download.opensuse.org port 80: Network is unreachable

Abort, retry, ignore? [a/r/i/? shows all options] (a): i
Do you want to disable the repository openSUSE-13.2-Update-Non-Oss permanently? [yes/no] (no):
Skipping repository ‘openSUSE-13.2-Update-Non-Oss’ because of the above error.

etc…

zypper in fails because it can’t refresh the repos (just says there are no updates). If I look at the packages in the repo, I can see that there are updates. In fact, I can manually download the rpms and install them by hand.

I just manually installed the latest zypper (and libzipp), but this didn’t help.

Any idea what could be causing this? I noticed a few people complaining of similar problems, but there issues all seemed to resolve themselves with time. This has been happening to me since last Friday, with no let up.

Edit:

Also, I live in Utah, US. Do we have a bad mirror or something?

I think it is a problem with a mirror.

If I disable repo-non-oss, repo-oss, repo-update, and repo-update-non-oss repos, then add the same repos, but point to a local mirror, then the problem goes away (for those repos anyway).

sudo zypper mr -d repo-non-oss
sudo zypper mr -d repo-oss
sudo zypper ar http://opensuse.cs.utah.edu/distribution/13.2/repo/non-oss/ utah-repo-non-oss
sudo zypper ar http://opensuse.cs.utah.edu/distribution/13.2/repo/oss/ utah-repo-oss

sudo zypper mr -d repo-update
sudo zypper mr -d repo-update-non-oss
sudo zypper ar http://opensuse.cs.utah.edu/update/13.2/ utah-repo-update
sudo zypper ar http://opensuse.cs.utah.edu/update/13.2-non-oss/ utah-repo-update-non-oss

Does anyone know a way to test which mirror I’m defaulting to? Maybe then I can contact the owner of the mirror to get it fixed.

This doesn’t seem to be a problem with a mirror.
zypper apparently cannot reach download.opensuse.org itself, because of “Network is unreachable”.

This sounds very much similar to https://forums.opensuse.org/showthread.php/457497-cannot-access-installation-media?p=2692148#post2692148

Try to disable IPv6 for curl and see if it helps (by creating a file /root/.curlrc with the specified content, “–ipv4”…)

Ah, looks like you might be right:

> curl -v http://download.opensuse.org/distribution/13.2/repo/non-oss/suse/repodata/repomd.xml

  • Hostname was NOT found in DNS cache
  • Trying 195.135.221.134…
  • Trying 2001:67c:2178:8::13…
  • connect to 2001:67c:2178:8::13 port 80 failed: Network is unreachable
  • Failed to connect to download.opensuse.org port 80: Network is unreachable
  • Closing connection 0
    curl: (7) Failed to connect to download.opensuse.org port 80: Network is unreachable

> curl -4 http://download.opensuse.org/distribution/13.2/repo/non-oss/suse/repodata/repomd.xml
<?xml version=“1.0” encoding=“UTF-8”?>
<repomd xmlns=“http://linux.duke.edu/metadata/repo” xmlns:rpm=“http://linux.duke.edu/metadata/rpm”>
<revision>1414236708</revision>
<data type=“filelists”>
<location href=“repodata/db41461816d3d72fab77d45530f44ed1c9512b93a3ed5a5144b337e5dc1c1905-filelists.xml.gz” />
<checksum type=“sha256”>519538e562445478c226bd451a3d95b8c71c8b351727ccadadb30749da0c9408</checksum>
<timestamp>1414236710</timestamp>
<size>55322</size>
<open-size>718375</open-size>
<open-checksum type=“sha256”>67ef9cce5ad6a2c1a31d59a8fa41e355cb95239858203a39ec2af77f9a95b41f</open-checksum>
</data>
<data type=“other”>
<location href=“repodata/7e96c1292f58cff458d66449d503e27ba50ee42040969f377a222f6a021d3fb6-other.xml.gz” />
<checksum type=“sha256”>7bf58f8107b75463aef6ced75cab70f4ac4e8bc1ca659a72caee2da2f83267e7</checksum>
<timestamp>1414236710</timestamp>
<size>33859</size>
<open-size>222296</open-size>
<open-checksum type=“sha256”>82a3243e626c893b203ea730f5c99b20b59651c740363d7f491307d6517a2742</open-checksum>
</data>
<data type=“primary”>
<location href=“repodata/7072e6c9d59bada5b17e6d7f4133ace7eb878bb0f51a8be68178d1d3c1ad04f4-primary.xml.gz” />
<checksum type=“sha256”>e719f35b070788b97f8be1a4f5e75950e48decb0b3971cfa4af106194b68c888</checksum>
<timestamp>1414236710</timestamp>
<size>22892</size>
<open-size>146619</open-size>
<open-checksum type=“sha256”>940d80835e1adf950198b56198435a7cd4d30db1cdbda40510e601d74dbebaa4</open-checksum>
</data>
</repomd>