首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >设置具有多个VLAN的KVM主机,每个都附加到“自己的”外部IP地址。

设置具有多个VLAN的KVM主机,每个都附加到“自己的”外部IP地址。
EN

Server Fault用户
提问于 2020-10-18 16:18:54
回答 1查看 567关注 0票数 1

我正在尝试(并且很难)设置一个干净的KVM环境: Ubuntu (20.04)主机(带有一个NIC)、多个ubuntu来宾、2个公共IP和每个IP一个Vlan。基本上看上去像:

我的需求是:

  • 我有两个公共IP地址附加在我的主机网卡上。
  • 我想为我的客人提供2个VLAN,不同VLAN上的机器之间没有通信。
  • 每个VLAN附加在一个公共IP上
  • 所有客人至少可以上网,但不一定可以从外面访问(“单向”,经典的NAT?)
  • 一些客人充当管理员/服务器,可以从互联网上访问(“双向”,端口重定向?)
  • 主机应该仍然能够访问internet。
  • 在我的主机外只有2个(每个IP) mac地址(到我的提供商的路由器)

我没有找到任何关于如何实现这个架构的在线资源,也没有我的任何尝试。

还没有成功。我认为我可以通过网桥和(NAT) VLAN的正确组合来实现它,但我的一些研究表明,我可能需要使用Iptables路由。

Is可以实现这种结构,如果是,如何实现?

  • 用于主机网络配置(neptlan、ifup、iptable等)
  • 和libvirt配置(virsh )

编辑:以使我的需求更加清楚:

代码语言:javascript
复制
Traffic from 0.0.0.0/0 destined to X.X.X.X on port 443 must be forwarded to VM1 in VLAN-1
Traffic from 0.0.0.0/0 destined to X.X.X.X on port 5432 must be forwarded to VM2 in VLAN-1
Traffic from 0.0.0.0/0 destined to Y.Y.Y.Y on port 443 must be forwarded to VM3 in VLAN-2
Traffic from VM1 in VLAN2 destined to 0.0.0.0/0 on any port must be routed through Y.Y.Y.Y ?
EN

回答 1

Server Fault用户

回答已采纳

发布于 2020-10-18 17:20:39

看看您的场景,我假设如下:

代码语言:javascript
复制
Traffic from 0.0.0.0/0 destined to X.X.X.X on port 443 must be forwarded to VM1 in VLAN-1
Traffic from 0.0.0.0/0 destined to X.X.X.X on port 5432 must be forwarded to VM2 in VLAN-1
Traffic from 0.0.0./0 destined to Y.Y.Y.Y on port 443 must be forwarded to VM3 in VLAN-2

如果我的假设是正确的,我建议使用iptables。在这种情况下,您将执行端口转发.在KVM主机上执行以下操作:

代码语言:javascript
复制
$ sudo echo "1" > /proc/sys/net/ipv4/ip_forward
$ sudo iptables -t nat -A PREROUTING -p tcp -m tcp -d X.X.X.X --dport 443 -j DNAT --to-destination 10.0.1.1:443 #(VM1 in VLAN1)
$ sudo iptables -t nat -A PREROUTING -p tcp -m tcp -d X.X.X.X --dport 5432 -j DNAT --to-destination 10.0.1.2:5432 #(VM2 in VLAN1)
$ sudo iptables -t nat -A PREROUTING -p tcp -m tcp -d Y.Y.Y.Y --dport 443 -j DNAT --to-destination 10.0.2.3:5432 #(VM3 in VLAN2)
$ sudo iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT #(Allow retrun traffic)
票数 0
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/1039184

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档