linux – 为两个VM创建专用网络

linux – 为两个VM创建专用网络,第1张

概述我正在尝试创建两个连接到同一专用网络的VM.我正在使用 Linux和qemu-kvm 1.0. 我的攻击计划是这样的: brctl addbr bridgeifconfig bridge uptunctl -t tap1tunctl -t tap2ifconfig tap1 upifconfig tap2 upbrctl addif bridge tap1brctl addif b 我正在尝试创建两个连接到同一专用网络的VM.我正在使用 Linux和qemu-kvm 1.0.

我的攻击计划是这样的:

brctl addbr brIDgeifconfig brIDge uptunctl -t tap1tunctl -t tap2ifconfig tap1 upifconfig tap2 upbrctl addif brIDge tap1brctl addif brIDge tap2qemu-kvm -net nic,macaddr=52:54:00:11:22:33 -net tap,ifname=tap1 disk1.imgqemu-kvm -net nic,macaddr=52:54:00:44:55:66 -net tap,ifname=tap2 disk2.img

一旦启动,我给第一台机器IP地址192.168.100.5,第二台机器192.168.100.10.

此时,当我尝试从另一个VM Ping一个VM时,没有Ping响应.但是,使用Wireshark,我看到ARP请求被发送并响应,并且我验证了ARP缓存确实包含其他VM上的信息.然而,没有生成Ping回复(通过Wireshark看到).

接下来,我尝试为网桥提供IP地址192.168.100.1.执行此 *** 作后,在VM之间执行Ping *** 作,但仍然存在问题:现在所有请求似乎都来自桥本身.例如,如果我从一个VM连接到另一个FTP服务器,则在具有FTP服务器的VM上运行netstat会显示192.168.100.1是源.连接的工作方式与NAT相同,但与NAT一样,源地址不是源计算机的源地址.我已经尝试使用net.ipv4.ip_forward打开和关闭,并伪装(iptables -t nat -A POSTROUTING -j MASQUERADE)打开和关闭,结果相同.

我真正想要的是让我的VM充当它们插入交换机的行为:它应该是透明的.我更关心看起来像桥的源地址而不是需要IP的桥.后者有点烦人,但前者对我来说是一个阻碍者.

解决方法 我之前看到iptables干扰了桥接流量(即使它不应该是AFAIK).您当然不希望任何与NAT相关的规则,但我认为FORWARD链需要接受数据包.我建议使用没有iptables规则和FORWARD链上的默认ACCEPT策略来测试它.

还有几件要检查的事情:

> brctl显示验证tap1和tap2是否在桥中?> brctl showmacs brIDge是否显示两个VM的MAC地址?

总结

以上是内存溢出为你收集整理的linux – 为两个VM创建专用网络全部内容,希望文章能够帮你解决linux – 为两个VM创建专用网络所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/yw/1040612.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-24
下一篇 2022-05-24

发表评论

登录后才能评论

评论列表(0条)

保存