几天前,我能够使用远程服务器/工作站的短名称创建远程会话。
这不再起作用,错误是:
+ CategoryInfo : InvalidArgument : (computername1:String) [Enter-PSSession], PSRemotingTransportExcepti
+ FullyQualifiedErrorId : CreateRemoteRunspaceFailed
但是当我使用完整的域名时,它正在工作:
nsn computername1.domain.com
Dns分辨率是否正确,我还可以检查以解决此问题?
答案 0 :(得分:1)
我最终找到了它! :)
我必须修改默认的pssession选项并将代理设置为' NoProxyServer'而不是默认值'无'
所以我在我的个人资料中添加了这一行:
$PSSessionOption = New-PSSessionOption -ProxyAccessType NoProxyServer
来自technet:
无未指定代理访问类型。这意味着代理 信息,例如访问类型,身份验证机制和 凭证,未传递给Web Services for Management(WSMan) 协议服务。此字段在Windows PowerShell 2.0中引入。
NoProxyServer 配置代理设置时不使用代理服务器。 此机制在本地解析所有主机名。这个领域是 在Windows PowerShell 2.0中引入。
答案 1 :(得分:0)
由于我无法找到问题的根源,这是我的解决方法: 重命名两个别名nsn和etsn,并在我的配置文件中用这些函数替换它们:
rename-item alias:\nsn nsn2 -ea silentlycontinue
rename-item alias:\etsn etsn2 -ea silentlycontinue
function resolve-hostname{
param($computername)
[System.Net.Dns]::GetHostEntry($computername) |select -ExpandProperty hostname
}
function nsn{
param($computername)
$cn=resolve-hostname $computername
new-pssession -cn $cn
}
function etsn{
param($computername)
$cn=resolve-hostname $computername
enter-pssession -cn $cn
}