Xen 客户网络模型

Xen 客户网络模型

是时候用新服务器替换旧服务器了。在旧服务器上,所有设置都在裸机上进行。在新服务器上,我尝试为特定任务设置虚拟服务器。

主机操作系统是 Debian 9。我将在 HVM 模式下运行来宾(也是 Debian)。计划的服务器是:MySql、电子邮件(postfix、curys、垃圾邮件过滤器和所有与电子邮件相关的服务器)、Web 服务器(nginx+php)、Web 代理(SSL 终结器)

但问题在于网络。我不希望客人在外面可见,他们也没有公共 IP。但每个客人都必须看到其他客人。

我创建了两座桥梁。hostbr0xenbr0。在 中我添加了具有一个静态 IP(公共)的hostbr0物理接口。在 中我添加了接口。eno1xenbr0vdum1

vdum1是带模块的虚拟接口dummy,IP = 192.168.1.1。所有来宾的 IP 地址均来自 192.168.1.0 子网。因此所有来宾都在一个网络中。

我该如何配置 iptables,以便访客可以访问互联网?我不是在寻求确切的命令,而是寻求指导。我需要设置伪装吗?那么哪个接口必须伪装?是否可以在网桥之间设置转发?

我已经尝试过伪装展位桥和接口,但我无法从客户操作系统访问互联网。

我还想控制访客对互联网的访问。例如,mysql 访客根本不需要互联网(一般来说)。

在主机操作系统上我将使用shorewall

答案1

在主机操作系统上,您在 IPTables 上添加一条规则,该规则对从内部客户机传入并传出到外部的数据包执行 SNAT。

在 Shorewall 中,条目如下所示/etc/shorewall/masq

eth0    192.168.10.1    10.10.10.10

这里,eth0是连接到互联网的接口。192.168.10.1是您想要进行 NAT 的客户 IP 地址。10.10.10.10是数据包在 SNAT 之后将收到的 IP 地址(通常与主机操作系统公共 IP 地址相同)。

相关内容