Open Bug 1681527 Opened 4 years ago Updated 11 hours ago

Connection test should report partial connectivity without ipv6

Categories

(Core :: Networking, enhancement, P3)

Firefox 83
enhancement

Tracking

()

UNCONFIRMED

People

(Reporter: bert, Unassigned)

References

(Blocks 1 open bug)

Details

(Whiteboard: [necko-triaged])

Attachments

(2 files)

User Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_6) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/14.0.1 Safari/605.1.15

Steps to reproduce:

Attempt to connect to an ipv6-only website, eg https://www.v6.facebook.com/ from an ipv4-only host

Actual results:

Misleading error message is returned, an average user would believe the site is down rather than realising that their own connectivity is too outdated to access it.

Expected results:

Firefox should test that full connectivity including both ipv6 and ipv4 is available and working, for instance by having a pair of respective single-stack test sites.

If only partial connectivity is available, a warning message should be displayed to users alerting them to the fact that some sites might be inaccessible - potentially also linking to a Mozilla hosted FAQ with more information.

Attempts to access a site that is unreachable due to a lack of connectivity on the user's end should display a clear error message as to why the site is unreachable so that they can take appropriate steps to remedy the situation.

In some instances ipv6 connectivity is only provided on demand by isps, in other cases only newer revisions of the isp-supplied routers are ipv6 capable while many users are still using older equipment. An accurate error message would allow users to request ipv6 or a router update.

I cannot confirm this issue, but I can say it's an improvement idea. I've chosen component (Core) Networking for this bug since it appears to be related. If incorrect, please set a more appropriate one.

Component: Untriaged → Networking
Flags: needinfo?(bert)
Product: Firefox → Core
See Also: → 987785
Flags: needinfo?(bert)

As per the above screenshots, IPv6 is explicitly turned off and then an attempt is made to access https://www.v6.facebook.com
The error message is non specific, and will lead the user to believe that the site is down rather than their own connection being inadequate to access it.

I would suggest two solutions:

  1. If an AAAA record is present for the requested URL and the local system does not have IPv6 connectivity, this should be highlighted to the user along with a link to an FAQ page containing more information.

  2. Firefox already performs a check for connectivity on startup and to check for captive portals etc, however it should perform 2 such checks to cover both IPv6 and IPv4. If both fail then the user should be informed that they have no Internet connectivity (ie they are either totally offline, or in an isolated network). If only one fails, then the user should be informed that they have only partial connectivity, along with a link to an FAQ page explaining this.

This is an interesting idea.
Because of the lack of IPv6 support site always advertise IPv4. These cases will rarely happen for an average user.

Priority: -- → P3
Whiteboard: [necko-triaged]

Currently most sites also have legacy ipv4 as well, but there are some exceptions, such as www.v6.facebook.com and loopsofzen.uk etc.

In future there will be more such sites, a lot of providers (especially mobile) provide cgnat ipv4 and full routed ipv6, so if you want to host anything there you must use ipv6. For these providers, routed ipv4 is usually a costly extra that users won't want to pay for. In some countries the only option for fully routable ipv4 is signing up for a business plan which is many times more expensive than a consumer service.

There are also cases where ipv4 might be down while ipv6 is up, especially since getting PI space for ipv6 is easy (so you can multi home, anycast etc) but doing the same for ipv4 is cost prohibitive for smaller outfits.
Similarly for users behind cgnat, their shared outbound ipv4 address might be blacklisted (only takes one infected user to blacklist the whole isp) but the users have individual ipv6.

Users should also know if they have a full or only partial connection, not having ipv6 would prevent access to some sites, reduce performance on others, and could impair performance of applications using p2p communication... Having working dual stack has no downsides.

The future of ipv4 is cgnat, which creates a dystopia where only the privileged few can host anything and everyone else is simply a viewer. IPv6 is important to maintain the openness of the web.

Severity: -- → N/A

More and more sites going ipv6-only:

https://starlink.awlnx.space/d/GG3mnflGz/starlink?orgId=1&refresh=5s
https://clintonwhitehouse2.archives.gov/

US government websites are moving towards IPv6-only such as the one above, users should see a meaningful and accurate error if they are unable to access such sites. China has a similar policy too. The numbers of IPv6-only sites are only going to increase, and with current browsers the users would have no idea why they can't access them.

It's probably also worth checking for IPv6 connectivity during startup, and warning users that some sites may be inaccessible due to only having partial connectivity.

Browsers notifying the user of their lack of IPv6 connectivity could help adoption of IPv6.

Furthermore, all error messages should clearly indicate what the fault is, so that knowledgeable people can fix it.

For example, Firefox could indicate that the website you're trying to connect to is using a different address family than what is available.

The argument that the user would almost never run into this, can also be said for other errors currently in the Firefox source code.

Here is a longer (still incomplete!) list of IPv6 only sites

http://42.be
http://dnslabs.nl
http://geschwindigkeitstester.de
http://loopsofzen.uk
http://game.flyingpenguintech.org
http://k6usy.net

(In reply to Nick Bouwhuis from comment #8)

Browsers notifying the user of their lack of IPv6 connectivity could help adoption of IPv6.
Furthermore, all error messages should clearly indicate what the fault is, so that knowledgeable people can fix it.
For example, Firefox could indicate that the website you're trying to connect to is using a different address family than what is available.

That is definitely something worth pursuing. It's on our roadmap, but not high priority just yet.

Here is a longer (still incomplete!) list of IPv6 only sites

Thanks, but please refrain from posting links to ipv6 only websites. These sort of comments can easily be mistaken for SEO spam and might result in your account getting banned.

Blocks: necko-error
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: