python.org coming back as unreachable in Dillo (IPv6 routing error?)

T

Tim Chase

Though only semi-Python related, it impacts me because I (until
recently) use Dillo at home for browsing docs.python.org.

I'm trying to figure out if something network-related changed.
Within the last week or two (time-frame is fuzzy), it seems that
something changed and I now get "Network unreachable" errors.
AFAIK, I haven't changed any settings on my local Debian box.
The best of my google-fu has returned that this may have
something to do with ipv6 routing. Firefox, Epiphany and Lynx
all work fine (as does Safari on my Mac on the same internal home
network). Likewise, browsing with Dillo to IPv4 address-space
seems to work fine.

Have any network changes taken place at python.org (particularly
IPv6 or DNS related) recently?

Some of the configuration details from my machine:

tim@rubbish:~$ ip -f inet6 route
fe80::/64 dev eth0 metric 256 expires 21252543sec mtu 1500
advmss 1440 hoplimit 4294967295

tim@rubbish:~$ /sbin/ifconfig -a eth0 | grep inet6
inet6 addr: fe80::2e0:b8ff:fe37:e150/64 Scope:Link

tim@rubbish:~$ traceroute -6 docs.python.org
traceroute to docs.python.org (2001:888:2000:d::a2), 30 hops max,
40 byte packets
connect: Network is unreachable

A "traceroute -4 docs.python.org" works fine.

If output of other commands would be helpful, just ask as I don't
know enough about IPv6 to troubleshoot the best solution to this.

It may be possible to just disable IPv6, but it would be nice to
allow IPv6 to remain enabled *and* configured correctly :)

Thanks for any pointers you might be able to offer.

-tkc
 
M

Martin v. Löwis

Have any network changes taken place at python.org (particularly IPv6 or
DNS related) recently?

Yes, python.org has IPv6 connectivity now, and many systems (except for
mail) have IPv6 DNS entries (AAAA).
Some of the configuration details from my machine:

tim@rubbish:~$ ip -f inet6 route
fe80::/64 dev eth0 metric 256 expires 21252543sec mtu 1500 advmss 1440
hoplimit 4294967295

Ok, so you don't have IPv6 connectivity, right? You can reach the
link-local network fe80::/64, but none of the global IPv6 internet
(2000::/3).
tim@rubbish:~$ traceroute -6 docs.python.org
traceroute to docs.python.org (2001:888:2000:d::a2), 30 hops max, 40
byte packets
connect: Network is unreachable

Right. Your IP stack determines that it has no v6 route to
docs.python.org (or any other IPv6 system in the world), so it reports
"network unreachable".
If output of other commands would be helpful, just ask as I don't know
enough about IPv6 to troubleshoot the best solution to this.

If you want to use IPv6 connectivity, you need to get it from somewhere,
e.g. from your ISP (although chances are high that your ISP doesn't
offer IPv6 connectivity right now - you could then try a tunnel broker
such as www.sixxs.net).
It may be possible to just disable IPv6, but it would be nice to allow
IPv6 to remain enabled *and* configured correctly :)

You shouldn't need to do anything. It should be no problem that you
can't reach www.python.org through IPv6, since all your applications
will immediately fall back to using IPv4 on their own.

It may be that some application misbehaves, i.e. it tries to get an
IPv6 connection, which it can't, and then gives up. This would be
very bad programming, and the authors should never had added IPv6
support to that application in the first place (applications that
predate IPv6 only use gethostbyname, only find IPv4 addresses, and
never even try IPv6).

Regards,
Martin
 
T

Tim Chase

You shouldn't need to do anything. It should be no problem that you
can't reach www.python.org through IPv6, since all your applications
will immediately fall back to using IPv4 on their own.

It may be that some application misbehaves, i.e. it tries to get an
IPv6 connection, which it can't, and then gives up. This would be
very bad programming, and the authors should never had added IPv6
support to that application in the first place (applications that
predate IPv6 only use gethostbyname, only find IPv4 addresses, and
never even try IPv6).

I've filed a Debian bug-report against Dillo which is the
problematic app. My home ISP (SBC Global) apparently doesn't
support IPv6, or if it does, something fails between them and my
laptop (perhaps my router). I think the easiest solution for now
is just to disable IPv6 in my /etc/modprobe.d/aliases as I've
seen suggested elsewhere until either my ISP routes IPv6 packets
properly, or the Dillo bug is fixed.

Thanks for your help!

-tkc
 

Staff online

Members online

Forum statistics

Threads
473,767
Messages
2,569,571
Members
45,045
Latest member
DRCM

Latest Threads

Top