Can't find package lists after upgrading to 19.07

Hello!

I tried to upgrade my fb4040 from 18.06 to 19.07 using this howto:

https://openwrt.org/docs/guide-user/installation/generic.sysupgrade

After rebooting I logged in via plain http to install luci-ssl and other packages, but opkg complained about not being able to download the necessary package lists. After trying three times, I decided to re-flash OpenWRT 18.06 again, and now everything is working again.

Is this a known issue or did I just do something wrong?

With or without keeping settings?

1 Like

As written in the above mentioned howto:

sysupgrade -v /tmp/firmware_image.bin

So you kept settings then, which is not advised when moving from 18.06 to 19.07.
Any number of things could have been wrong, and the right move was to flash again to resolve it.

1 Like

I did a fresh flash this time, not keeping anything. Still opkg can't download the package lists. The network is up and running, dns is working:

root@fb4040:~# nslookup www.google.de
Server:        127.0.0.1
Address:       127.0.0.1#53

Name:      www.google.de
Address 1: 172.217.21.195
Address 2: 2a00:1450:4001:818::2003

ping www.google.de
PING www.google.de (172.217.21.195): 56 data bytes
64 bytes from 172.217.21.195: seq=0 ttl=55 time=21.350 ms
64 bytes from 172.217.21.195: seq=1 ttl=55 time=17.291 ms
64 bytes from 172.217.21.195: seq=2 ttl=55 time=16.467 ms
64 bytes from 172.217.21.195: seq=3 ttl=55 time=22.719 ms

The build in diagnostics are also working: ping, traceroute, nslookup.

Just wget complains about not being able to connect:

root@fb4040:~# wget http://cdn.kernel.org/pub/linux/kernel/v5.x/linux-5.4.14.tar.sign
Downloading 'http://cdn.kernel.org/pub/linux/kernel/v5.x/linux-5.4.14.tar.sign'
Failed to establish connection

These are not OpenWrt packages. Nor are you using the opkg package manager.

What image did you install? And why are you trying to download and install a linux kernel?

I know. These commands were just meant as an example for network failure.

Did you try:

opkg update

Please report the result of that test.

1 Like

First article: opkg can't download the necessary package lists.

can you please post the output that you are getting when you issue the command?
Also, you didn't specify what image you flashed.

BusyBox v1.30.1 () built-in shell (ash)

OpenWrt 19.07.0, r10860-a3ffeb413b

root@fb4040:~# opkg update
Downloading http://downloads.openwrt.org/releases/19.07.0/targets/ipq40xx/generic/packages/Packages.gz
Failed to establish connection
*** Failed to download the package list from http://downloads.openwrt.org/releases/19.07.0/targets/ipq40xx/generic/packages/Packages.gz

Downloading http://downloads.openwrt.org/releases/19.07.0/targets/ipq40xx/generic/kmods/4.14.162-1-fa00c1231ac7d7840ec6ffe62dcad926/Packages.gz
Failed to establish connection
*** Failed to download the package list from http://downloads.openwrt.org/releases/19.07.0/targets/ipq40xx/generic/kmods/4.14.162-1-fa00c1231ac7d7840ec6ffe62dcad926/Packages.gz
...
etc...

I just re-flashed 18.06.5 again, and everything's working again as it is supposed to. I think I'll rather stay with release 18 until the first maintenance release 19.07.1 is out.

Are you running IPv4, IPv6, or dual stack? You might have an if you have a wan IPv6 in the interfaces list, try removing it. It is possible that the system is trying to use IPv6 but not actually getting a true dual-stack, so it fails.

That sounds reasonable, but if that is true, shouldn't version 18 also fail after flashing?

I flashed the image, not keeping settings. Then I ssh into the router and first thing I do is

opkg update

That's the point where I get the error in version 19. If what you say is true, the error should also occur in version 18. Unless, there have been some important changes.

I've had some time to spend today, so I tried again. And I failed again. :frowning:

This is the result after flashing, rebooting and restoring my network settings:

root@fb4040:~# opkg update
Downloading http://downloads.openwrt.org/releases/19.07.0/targets/ipq40xx/generic/packages/Packages.gz
Failed to establish connection
*** Failed to download the package list from http://downloads.openwrt.org/releases/19.07.0/targets/ipq40xx/generic/packages/Packages.gz

Downloading http://downloads.openwrt.org/releases/19.07.0/targets/ipq40xx/generic/kmods/4.14.162-1-fa00c1231ac7d7840ec6ffe62dcad926/Packages.gz
Failed to establish connection
*** Failed to download the package list from http://downloads.openwrt.org/releases/19.07.0/targets/ipq40xx/generic/kmods/4.14.162-1-fa00c1231ac7d7840ec6ffe62dcad926/Packages.gz

Downloading http://downloads.openwrt.org/releases/19.07.0/packages/arm_cortex-a7_neon-vfpv4/base/Packages.gz
Failed to establish connection
*** Failed to download the package list from http://downloads.openwrt.org/releases/19.07.0/packages/arm_cortex-a7_neon-vfpv4/base/Packages.gz
...
...
Collected errors:
 * opkg_download: Failed to download http://downloads.openwrt.org/releases/19.07.0/targets/ipq40xx/generic/packages/Packages.gz, wget returned 4.
 * opkg_download: Check your network settings and connectivity.

 * opkg_download: Failed to download http://downloads.openwrt.org/releases/19.07.0/targets/ipq40xx/generic/kmods/4.14.162-1-fa00c1231ac7d7840ec6ffe62dcad926/Packages.gz, wget returned 4.
 * opkg_download: Check your network settings and connectivity.
...
...

But I also get these results:

root@fb4040:~# nslookup downloads.openwrt.org
Server:         127.0.0.1
Address:        127.0.0.1#53

Name:      downloads.openwrt.org
downloads.openwrt.org   canonical name = mirror-02.infra.openwrt.org
Name:      mirror-02.infra.openwrt.org
Address 1: 176.9.48.73
downloads.openwrt.org   canonical name = mirror-02.infra.openwrt.org
Address 2: 2a01:4f8:150:6449::2

root@fb4040:~# traceroute downloads.openwrt.org
traceroute to downloads.openwrt.org (176.9.48.73), 30 hops max, 38 byte packets
 1  gateway.localnet  (1.1.0.1)  0.637 ms  0.560 ms  0.768 ms
 2  *  *  *
 3  xxx.zzz.yyy  (a.b.c.d)  15.516 ms  17.971 ms  14.324 ms
 4  ...   21.217 ms  15.529 ms  20.792 ms
 5  ...  48.470 ms  17.503 ms  18.248 ms
 6  ...  22.115 ms  26.973 ms  19.068 ms
 7  ix-ae-27-0.tcore1.fr0-frankfurt.as6453.net (195.219.50.106)  17.373 ms  15.977 ms  20.826 ms
 8  195.219.219.10 (195.219.219.10)  32.173 ms  19.312 ms  25.706 ms
 9  core22.fsn1.hetzner.com (213.239.245.17)  26.795 ms  core21.fsn1.hetzner.com (213.239.245.13)  20.854 ms  27.898 ms
10  ex9k1.dc6.fsn1.hetzner.com (213.239.229.90)  22.440 ms  27.093 ms  28.567 ms
11  mirror-02.infra.openwrt.org (176.9.48.73)  26.510 ms  25.901 ms  21.827 ms


root@fb4040:~# ping downloads.openwrt.org
PING downloads.openwrt.org (176.9.48.73): 56 data bytes
64 bytes from 176.9.48.73: seq=0 ttl=54 time=21.680 ms
64 bytes from 176.9.48.73: seq=1 ttl=54 time=25.885 ms
64 bytes from 176.9.48.73: seq=2 ttl=54 time=23.363 ms
^C
--- downloads.openwrt.org ping statistics ---
3 packets transmitted, 3 packets received, 0% packet loss
round-trip min/avg/max = 21.680/23.642/25.885 ms

I deleted some server names, but everything else you see is what OpenWRT 19.07 throws at me, and I really can not make any sense of this. Every thing works: my VLAN settings, name resolving, connecting to the outside world.

Why can the system reach the download server via traceroute, while at the same time it can't download the package lists?

My guess is that you have a misconfigured IPv6. You have DNS for it, but maybe not routing and connectivity. IPv6 is preferred, so wget tries to download with it and fails.

Either disable IPv6 DNS, of fix the connectivity.

You might be right, because I also don't use ipv6, but every network has had this option set before the update and afterwards:

option ipv6 '0'

But to make sure I will give it another try and add

net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
net.ipv6.conf.lo.disable_ipv6 = 1

to /etc/sysctl.conf. That should disable ipv6 completely.

You are right: there is something fishy going on: wget wants to use ipv6, even after I disabled ipv6 in sysctl.conf. If I use option "-4" to wget, it starts downloading.

So, two questions remain:

  1. How do I turn off ipv6 completely, when those entries in /etc/sysctl.conf.d/10-default_conf don't work, and if every network is added the open option ipv6 '0' in /etc/config/network?

  2. What has changed since version 18.06 concerning wget? Like I told before: version 18 did not have this problem!

You should probably disable the IPv6 related items in DHCP config /etc/config/dhcp . Also network config has ipv6 assignment stuff.

Those sysctl things are about actual low-level IPv6 routing and traffic, while your problems are with much higher level tools and config.

Which options are to be disabled in /etc/config/dhcp? I thoroughly looked into that file, but I can not find any option connected to ipv6.