Windows命令行是否需要任何代理设置来ping网站?
我可以访问浏览器中的所有网站,但是当我尝试从命令行或PowerShell ping同一网站时,我会得到"请求超时"错误。如何解决此错误?
在IE浏览器中,我设置了自动代理检测脚本,因为网络是公司LAN。尝试在网上提供的大多数解决方案没有任何运气。
由于这个原因,我无法运行chef命令来安装gem并收到错误Unable to download data from https://rubygems.org/ - Errno::ETIMEDOUT:
A connection attempt failed because the connected party did not properly respon
d after a period of time, or established connection failed because connected hos
t has failed to respond. - connect(2) for "api.rubygems.org" port 443 (https://a
pi.rubygems.org/specs.4.8.gz)
答案 0 :(得分:2)
获取ping回复或HTTP响应是两回事。也就是说,任何服务器都可以尊重其中任何一个。此外,路由上可能存在更改结果的代理和防火墙。即使服务器愿意回复ping,企业防火墙也可能阻止它。
通过环境变量as per documentation设置Chef的代理设置可能会取得一些成功。如何查找代理设置,请咨询您的网络管理员。如果这不起作用,请检索代理设置from IE's registry key。在链接腐烂的情况下,这里的功能是:
function Get-InternetProxy {
<#
.SYNOPSIS
Determine the internet proxy address
.DESCRIPTION
This function allows you to determine the the internet proxy address used by your computer
.EXAMPLE
Get-InternetProxy
.Notes
Author : Antoine DELRUE
WebSite: http://obilan.be
#>
$proxies = (Get-ItemProperty -Path 'HKCU:\Software\Microsoft\Windows\CurrentVersion\Internet Settings').proxyServer
if ($proxies) {
if ($proxies -ilike "*=*") {
$proxies -replace "=","://" -split(';') | Select-Object -First 1
} else {
"http://" + $proxies
}
}
}