首页   注册   登录
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  程序员

虚拟机之间如何跨主通讯

  •  
  •   snappyone · 97 天前 · 1234 次点击
    这是一个创建于 97 天前的主题,其中的信息可能已经有所发展或是发生改变。

    现在有 2 台宿主机,都是 ubuntu 的,每个上面都开了几台 vm,大概的网络拓扑如下,如何让 vm1 和 vm2 能够直接通讯呢:

    宿主机 A:

    vm1(192.168.122.21)

    宿主机 B:

    vm2(192.168.122.24)

    19 回复  |  直到 2019-07-17 15:51:52 +08:00
        1
    zjsxwc   97 天前
    给你两个虚拟机加 host only 虚拟网卡呗,
    如果一定要用默认的 nat 网卡就配置下端口映射也可以的
        2
    Tink   97 天前
    你的两个主机都在一个网段了,直接桥接不行?
        3
    snappyone   97 天前
    @Tink 两个宿主机不在一个网段
        4
    snappyone   97 天前
    @zjsxwc 需求有点像把所有虚拟机加入一个 vpn 中一样
        5
    zjsxwc   97 天前
    @zjsxwc #1 是桥接网卡 bridged,不是 host only
        6
    zjsxwc   97 天前
    @snappyone #4

    你的需求用 zerotier 这种吧
        7
    hoyixi   97 天前
    网卡桥接的话,虚拟机和宿主机在同一网段,好似一台物理机接入宿主机的局域网一样。

    这情况下,你 2 台宿主机怎么通讯,你的 2 台虚拟机就怎么通讯
        8
    iceheart   97 天前 via Android
    flannel ?
        9
    snappyone   97 天前
    @zjsxwc 我去看看 zerotier,谢谢
        10
    snappyone   97 天前
    @iceheart 这两天有在看 k8s 跟 flannel,但是还不知道怎么部署
        11
    snappyone   97 天前
    @hoyixi 这个需要虚拟机有独立的外网 ip 吧
        12
    hoyixi   97 天前
    那看你具体情况了

    上面说了,虚拟机网卡如果是桥接模式,虚拟机就像一台实际的电脑,接入你宿主机所在网络。

    你 2 台宿主机怎么通讯?如果是都在同一个局域网内,那虚拟机之间也一样;如果跨网络,那虚拟机也一样。
        13
    defunct9   97 天前
    vxlan
        14
    cadmuxe   97 天前
    不知道你的需求是什么。
    大概提供一个思路,希望有专门做网络的人看一看。
    因为你虚拟机和 host 是桥接,通过一个虚拟网卡,他们是在一个网段的(只限于那个虚拟网卡和虚拟桥)。同时 host 还有真实的网卡连到外部。
    Host1 92.168.122.1 [92.168.122.0/24]
    Vm1 192.168.122.2

    Host1 92.168.123.1 [92.168.123.0/24]
    Vm1 192.168.123.2

    host1 92.168.122.1 当作第一个网段的 gateway, 在 host1 上设置 ip_forwarding=1, 并且设置 ip rule 把这个网段的包从 eth0 push 出去。
    在 host2 上做同样的操作。

    在 host1,host2 的 router 上设置 route 把俩个网段 push 到正确的机器上应该就行了。

    ---
    如果只是想要通信,envoyproxy.io
        15
    openbsd   97 天前
    你可以把桥接模式认为,哪有什么虚拟机 ?都是物理主机
        16
    nnnToTnnn   97 天前
    teamview ,或者 openvpn ,pptp 等等,组建一个虚拟隧道不就可以了?
        17
    snappyone   97 天前
    @nnnToTnnn openvpn 应该可以
        18
    CallMeReznov   97 天前
    无脑桥接即可
        19
    onice   97 天前
    全部桥接。不过宿主机必须要连接外部网络才行。
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   1354 人在线   最高记录 5043   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.3 · 24ms · UTC 17:21 · PVG 01:21 · LAX 10:21 · JFK 13:21
    ♥ Do have faith in what you're doing.