我和这里有同样的问题..... Unable to connect to Windows Azure from Powershell Azure Powershell module
我可以验证我运行Powershell脚本的机器是否具有Internet访问权限 . 我成功运行了Get-AzurePublishSettingsFile,它启动了一个浏览器,从azure下载我的设置 .
我已成功导入Import-AzurePublishSettingsFile设置
通过检查我的AppData \ Roaming \ Windows Azure Powershell来验证这一点,这包含我正确的设置 .
当我尝试访问任何cmdlet时,Get-AzureSubscription等我返回时出现上面列出的相同错误“请在执行此cmdlet之前连接到Internet” .
我在Google上搜索得很高,但没有成功 .
对不起,似乎我没有为Build Server配置我的设置:... Windows Server 2008 R2 64bit . Microsoft .NET 4.0 . 还有DNS,DHCP,RRAS服务器(仅适用于VPN DialIn的RRAS . 我的网关是我网络中其他地方的路由器) . Windows高级防火墙(但是,所有配置文件都已关闭,因此目前尚未使用) . Powershell v3.0 . 昨天从WindowsAzure下载的最新Powershell工具(根据网站上次更新2013) . 我的Azure订阅在北欧按需付费 . 我的ISP是Virgin Media .
我可以从Powershell成功Ping,因此可以确认powershell可以访问互联网 . 我的IPv4是一个正确的静态地址,并且正确设置了DNS和网关设置 . 在Internet选项下,我确实设置了“从不拨号连接”,因为列表中唯一的2个连接是VPN连接 . 但是,我尝试更改了设置 . 我目前正在检查Powershell Azure cmdlet是否可以在我的开发笔记本电脑上运行 .
有没有人有任何想法?
1 回答
我查看了Github上的PowerShell Cmdlet代码(https://github.com/WindowsAzure/azure-sdk-tools)并发现要检查Internet连接,代码在
WinInet.dll
中使用InternetGetConnectedState函数(源代码在这里:https://github.com/WindowsAzure/azure-sdk-tools/blob/master/WindowsAzurePowershell/src/Management.Utilities/Common/Validate.cs) .然后我搜索了为什么
InternetGetConnectedState
函数将返回false,即使计算机已连接到Internet,我登陆以下页面:http://support.microsoft.com/kb/315035 . 你能检查一下这是不是你面临的问题吗?希望这可以帮助!