Im my answer to question "SQL Server 08 Express error when connecting to localhost - “Timeout expired”. Works with ::1 or",
I wrote:

Can you try to delete "::1 localhost" in HOSTS. For me it looks unnecessary and confusing (to which one localhost is supposed to resolve?). For ex., my HOSTS doesn't have it

which was downvoted (and, so, neglected) as well as commented :

::1 is the IPv6 entry for localhost. It only appears in HOSTS files for operating systems that support IPv6. It is not unnecessary. – MarkM

Does this comment mean that my Windows XP Pro SP3 has IPv6 installed but it does not support it? Why does XP install IPv6?

How does it need it (I uninstalled it and cannot find what I broke by it) ?

Why does HOSTS file need "localhost ::1" entry? I reformulated it to more mundane Why is “ localhost” needed in HOSTS file ?

Changed later the last phrase:
My Windows XP resolved "::1" to localhost without this entry in HOSTS before was IPv6 uninstalled but stopped to resolve it after.

Related questions:


IPv6 support for Windows XP was partially added in SP2. It still does not support DCHPv6 or PPPv6, nor are there any plans for it to.

The previously linked article shows you how to enable the limited functionality through netsh if you choose to.

Most likely you have not explicitly enabled IPv6 on your XP install, so the HOSTS IPv6 loopback entry of ::1 was never added.

Some browsers are smart enough to translate ::1 to, which is why you may have a browser work properly with ::1 when you don't have IPv6 installed.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.