【问题标题】:External IPs not assigned within VM未在 VM 内分配的外部 IP
【发布时间】:2015-03-27 18:12:09
【问题描述】:

我有几个要设置的 Centos 6 虚拟机。我为它们分配了静态 IP,但是在运行 ifconfig 时,我看不到外部 IP,只看到内部 IP。 Google 不允许此功能吗?

【问题讨论】:

  • 如果我需要指定,这是针对谷歌云计算平台的
  • 你是如何/在哪里设置静态IP的?你能描述一下你的网络拓扑吗?
  • 没什么复杂的,我在 google 云计算部分 cloud.google.com/compute 中构建了 2 个 vm,在设置过程中,我选择了静态 IP,而不是选择 Ephemeral 作为外部网络。重新启动两台服务器后,我运行了 ifconfig 并查看了 /etc/sysconfig/network-scripts/ifcfg-eth# 我没有看到新的配置,我只有 eth0 这是内部 IP 和 lo。为了进一步排除故障,我构建了一个全新的虚拟机,为外部选择相同的静态 IP,但它没有在 ifconfig 下显示外部 IP
  • 我的猜测是这在某种程度上与 dhcp 相关。你试过sudo dhclient -v吗?而且我不明白您所说的内部和外部网络是什么意思。您能否将您的详细信息整合到您最初的问题中?
  • 感谢 JPT 的帮助,但我想我正在寻找更精通谷歌云计算引擎的人。大部分内容都超出了我的控制范围,因为基础架构和虚拟机内部之外的所有内容都完全超出了我的控制范围。

标签: static ip virtual-machine google-compute-engine nat


【解决方案1】:

除了Anderson所说的,这是从实例本身查询外部IP的命令:

curl "http://metadata.google.internal/computeMetadata/v1/instance/network-interfaces/0/access-configs/0/external-ip" -H "Metadata-Flavor: Google"

【讨论】:

  • 所以除非我做错了什么,否则我仍然看不到它出现在 ifconfig 下。 bo-strato-comp.tinytake.com/sf/MTA0NjYyXzY5MTQ2Nw
  • 我建议的命令是获取该信息。但是,它不会修改您将通过 ifconfig 命令收到的输出。
【解决方案2】:

DHCP 仅支持请求单个地址。 Google Compute Engine 通过 DHCP 返回内部 IP 地址,并使用 NAT 将外部分配的 IP 地址映射到 VM。

如果您想从 VM 内部获取分配的 IP 地址,请you could query the metadata server 获取该信息。

【讨论】:

  • 感谢您的信息,我会做更多的研究,但我只是想确认您是说我可以让虚拟机,例如 ifcfg-eth1 显示外部 IP?
猜你喜欢
  • 2016-12-18
  • 1970-01-01
  • 2018-08-11
  • 2018-02-26
  • 1970-01-01
  • 1970-01-01
  • 2021-04-22
  • 2021-01-09
  • 1970-01-01
相关资源
最近更新 更多