Thanks for the feedback.

Please forgive my ignorance but I do not fully understand what you mean by 
Windows 10 firewall ignore the connection attempt. Do you mean the firewall 
blocks the connection attempt? Is this a know bug with Windows 10 firewall? I 
tried enabling firewall logging but have not been able to verify that the 
firewall is actually stopping a connection.

Lars
________________________________
Fra: Henrik Holst <henrik.ho...@millistream.com>
Sendt: fredag 22. august 2025 10:25
Til: libcurl development <curl-library@lists.haxx.se>
Kopi: Lars Sunde <laasu...@hotmail.com>
Emne: Re: ipv6 connect timeout

I think that the firewall in Windows 10 simply ignores the connection attempt 
and does not send a TCP_RESET while your Windows 11 setup does which is why 
CuRL on the one can detect that there exists no listening application on that 
port and ip and on the other system it have to time out the connection first 
(which though by default should take 300s and not just 3s).

/HH

Den fre 22 aug. 2025 kl 09:57 skrev Lars Sunde via curl-library 
<curl-library@lists.haxx.se<mailto:curl-library@lists.haxx.se>>:
Hello,

We are running C++ software that uses libCurl 8.5 on Windows 10 and 11 that 
perform HTTP operations.

During testing I notice a difference in some rare situations when running the 
software in Window 11 and in a virtual machine. The virtual machine is Oracle 
Virtual Box with Windows 11 host and Windows 10 guest OS).

We enabled CURLOPT_VERBOSE to debug the issue when the software attempts to 
perform a HTTP post operation.

Here is the output from Windows 11;

  1.
Host localhost:8010 was resolved
  2.
IPv6: ::1
  3.
IPv4: 127.0.0.1
  4.
Trying [::1]:8010...
  5.
Trying 127.0.0.1:8010...
  6.
Connect to localhost (127.0.0.1) port 8010

Step 4 in the above list uses approximately 200ms to execute before moving on 
to trying 127.0.0.1.

Here is the output from Windows 10 inside Oracle Virtual Box;

  1.
Host localhost:8010 was resolved
  2.
IPv6: ::1
  3.
IPv4: 127.0.0.1
  4.
Trying [::1]:8010...
  5.
ipv6 connect timeout after 2985ms, move on
  6.
Connection timeout after 3378 ms
  7.
Close connection

Step 4 in the above list uses approximately 2985ms to execute before moving on 
...

Windows 11 has the following interfaces (according to "route print" command)

  *
Intel(R) Ethernet Connection
  *
VirtalBox Host-only Ethernet Adpter
  *
Software Loopback Interface

Windows 10 inside VirtualBox has the following interfaces (according to "route 
print" command)

  *
Intel(R) PRO/1000 MT
  *
Software Loopback Interface


Why does Windows 10 inside a virtual machine use 15 times as much time to try 
IPv6 before moving on? How can I possible reduce or remove this difference? I 
have read above CURLOPT_IPRESOVE but really need to understand the problem 
before considering this solution.

Appreciate any input

Regards, Lars
--
Unsubscribe: https://lists.haxx.se/mailman/listinfo/curl-library
Etiquette:   https://curl.se/mail/etiquette.html
-- 
Unsubscribe: https://lists.haxx.se/mailman/listinfo/curl-library
Etiquette:   https://curl.se/mail/etiquette.html

Reply via email to