docs/checks/network.md
A bug in the runner or the dotnet framework that causes the actions runner to be unable to make Http requests in a certain network environment.
A Proxy or Firewall may block certain HTTP method, such as blocking all POST and PUT calls which the runner will use to upload logs.
A Proxy or Firewall may only allows requests with certain user-agent to pass through and the actions runner user-agent is not in the allow list.
A Proxy try to decrypt and exam HTTPS traffic for security purpose but cause the actions-runner to fail to finish SSL handshake due to the lack of trusting proxy's CA.
The SSL handshake may fail if the client and server do not support the same TLS version, or the same cipher suites.
A Proxy may try to modify the HTTPS request (like add or change some http headers) and causes the request become incompatible with the Actions Service (ASP.NetCore), Ex: Nginx
Firewall rules that block action runner from accessing certain hosts, ex: *.github.com, *.actions.githubusercontent.com, etc
The key is to figure out where is the problem, the network environment, or the actions runner?
Use a 3rd party tool to make the same requests as the runner did would be a good start point.
nslookup to check DNSping to check Pingtraceroute, tracepath, or tracert to check the network route between the runner and the Actions servicecurl -v to check the network stack, good for verifying default certificate/proxy settings.Invoke-WebRequest from pwsh (PowerShell Core) to check the dotnet network stack, good for verifying bugs in the dotnet framework.If the 3rd party tool is also experiencing the same error as the runner does, then you might want to contact your network administrator for help.
Otherwise, contact GitHub customer support or log an issue at https://github.com/actions/runner
If you are having trouble connecting, try these steps:
pwshInvoke-WebRequest {url}