Networking 我可以使用哪些不会与本地主机网络冲突的IP?

Networking 我可以使用哪些不会与本地主机网络冲突的IP?,networking,vagrant,Networking,Vagrant,我的开发机器是一台笔记本电脑,运行多个虚拟机。我的文件中有这样的配置 s.vm.network "private_network", ip: "10.0.0.4" 然后在主机的/etc/hosts中 10.0.0.4 mymachine 这通常运行良好,因为我的主机位于使用192.168.0.0–192.168.255.255的本地网络上 我的主机是一台笔记本电脑,我可以将它带到各种不同的地点,使用不同的网络配置。我的主机当前位于使用10.0.0.0–10.255.255.255的办公室的

我的开发机器是一台笔记本电脑,运行多个虚拟机。我的文件中有这样的配置

s.vm.network "private_network", ip: "10.0.0.4"
然后在主机的/etc/hosts中

10.0.0.4  mymachine
这通常运行良好,因为我的主机位于使用192.168.0.0–192.168.255.255的本地网络上

我的主机是一台笔记本电脑,我可以将它带到各种不同的地点,使用不同的网络配置。我的主机当前位于使用10.0.0.0–10.255.255.255的办公室的网络上,vagrant向我发送以下消息:

指定的主机网络与非纯主机网络冲突!这 将导致指定的IP无法访问。请更改IP地址 或仅主机网络的名称,使其不再与 桥接或非仅主机的网络

我可以将所有机器切换为使用192.168.0.x,但这并不理想,因为:

  • 我必须更新/etc/hosts
  • 我在其他网络上也会遇到同样的问题
  • 我必须教育其他开发者如何处理这类事情

这有什么办法吗?我可以告诉Vagrant允许可能的冲突,或者以某种方式创建一个不受冲突影响的子网络吗?

鉴于您问题中的当前元素:

  • 如果您的办公网络使用范围
    10.0.0.0–10.255.255.255
  • 您不想使用
    192.168.0.0/16
然后,您可以使用的唯一专用网络范围是
172.16.0.0–172.31.255.255
(请参阅)

如果你试图遵守所有可能的网络,你将无法获得一个IP

我必须更新/etc/hosts

您可以使用插件为您更新文件(它可以为主机和来宾计算机更新),因此,如果您需要更改网络,在
vagrant up
上,文件将相应地更新

您应该检查和是否有合适的地址范围,这些地址范围可以路由,但不能全局路由

例如:IPv4的
文档(TEST-NET-1)
范围为
192.0.2.0/24
,IPv6的
唯一本地范围为
fc00::/7


IPv6
唯一本地
范围有一些注意事项。范围的下半部分(
fc00::/8
)保留供全局机构分配,但如果使用兼容的随机数生成器选择下一个40位(全局ID),则可以使用范围的上半部分(
fd00::/8
)努力做到全球独一无二。

我正在一台笔记本电脑上运行这台机器,它将在各种网络上运行。我会澄清这个问题。如果你去一个使用172.xxx的办公室,你又会被套住。我不认为你能找到一个对你有好处的IP,然后-总会有一些情况下,你与现有的网络有冲突-添加使用插件的建议,然后使用“192.0.2.x”似乎在所有网络上都能很好地工作,谢谢!