2013-06-28 30 views
1

我试图重构旧的Perl代码以支持一些新的仅限IPV6的主机。如何在IPV6主机上使用适用于Perl的vSphere SDK

在测试中基本的“connect.pl”的脚本,它失败

不支持的IP地址格式:

#/usr/lib/vmware-vcli/apps/general/connect.pl --url https://fe80::b6b5:2fff:fe5a:c5d8:443/sdk --username root --password pw 
Unsupported IP address format 

我也写了一个小测试脚本行使的Util ::连接,并在失败一样的方法。

注意事项:

我使用VMware-vSphere-Perl-SDK-5.1.0-780721

在我的场景中,ESXi主机只运行IPV6,而且客人只会运行IPV4

回答

1

这里有两个问题。

  1. URL中的IPv6文字地址需要放在括号内。
  2. 您的链接本地地址缺少接口标识符。

使用正确的接口标识符在括号中指定链路本地地址。例如:

https://[fe80::b6b5:2fff:fe5a:c5d8%eth0]:443/sdk 
+0

没有喜悦: /usr/lib/vmware-vcli/apps/general/connect.pl --url的https:// [FE80 :: b6b5:2FFF:fe5a:c5d8%的eth0]/SDK - -username根--password PW 不支持的IP地址格式 #/ usr/lib目录/ VMWare的vCLI的/应用/一般/ connect.pl --url“https://开头[FE80 :: b6b5:2FFF:fe5a :c5d8%的eth0]/SDK” --username根--password PW 不支持的IP地址格式 但是,我能够用pysphere连接这个URL格式。还有什么我应该做的与VSphere API连接? – Unxmaal

+0

修复perl脚本中的错误? –

0

这里的正确答案是,由于未知原因,API会检查链接本地“fe80”地址,如果它看到它们,则会发生错误。

connect.pl(这是VMware提供的示例代码)适用于全球范围的IPV6地址。

+0

你的意思是白痴_故意写了一个错误? –

相关问题