我正在尝试使用基于 Linux Bridge 的外部网络连接,使用网络启动和启动来自动设置 CentOS 7 的 VM 客户机。我希望解决方案轻量、简单且可移植,因此我决定创建自己的、非常简单的 ansible 模块来实现这一点。
但是我正在使用 OVH 基础设施,因此我的网络设置很奇怪。
假设我的 VM 主机的 IP 地址为 192.168.0.0/24 类,默认网关为 192.168.0.1。但我的虚拟机客户机的“公共”IP 属于 10.0.0.0/8 类。
因此,也由于我的假设,唯一的方法是设置虚拟机客户机使用 10.0.0.1/8 类的公共地址,并通过其网络接口(我们称之为“eth0”)添加静态路由到网关 192.168.0.1。所以我的结果ip r
应该是这样的:
default via 192.168.0.1 dev eth0
192.168.0.1/32 dev eth0
10.0.0.0/8 dev eth0
我的问题是 CentOS 7 使用的 dracut 无法使用 dhcp 设置此类路由(错误 1045087) 和静态 (ip=10.0.0.2::192.168.0.1:255.0.0.0:test:eth0:none) 设置。我也尝试使用 rd.route 添加路由,结果类似。
我是不是漏掉了什么?有没有办法解决这个问题(除了从 10.0.0.0/8 向虚拟机主机添加额外的 IP 并进行 nat 之外)?
答案1
看来即使通过这种方式进行 nat 在 ovh 环境中也不起作用。
因此,目前解决此问题的唯一方法是在 vm 主机上设置一个到 mirror.centos.org 的代理,监听 10.0.0.0/8 的 IP,并在网络安装中将其用作 centos 存储库...