如何让局域网里其他机器能够 ping 通 VM 的 only-host 模式

2021-03-01 09:16:06 +08:00
 dbe
由于对 vm 里面的虚拟机有固定 ip 的需要,所以搞了 only-host 的模式。现在想要宿主机局域网环境下的其他机器能够 ping 通 vm 的 only-host 下的虚拟机,请问这个可不可以实现,如果可以要如何实现?
2380 次点击
所在节点    程序员
35 条回复
OliverDD
2021-03-01 10:36:32 +08:00
host-only 应该不行吧。nat 可以在主机上端口映射一下;桥接可以直接访问;他们都可以固定 ip 啊
dbe
2021-03-01 10:51:22 +08:00
@dorothyREN 虚拟机桥接宿主机虚拟网卡同样需要新添加一个网卡,这边系统环境有网卡验证,双网卡的话,系统没办法正常运行的。如果是去掉 only-host 模式直接桥接虚拟网卡,直接桥接不是更好吗,是我这儿不适合桥接的。感谢兄弟
rohgeo
2021-03-01 10:57:25 +08:00
有的公司网络环境没法用虚拟机桥接模式。试试用 vpn 连接
FreeEx
2021-03-01 10:59:25 +08:00
@dbe 看到你说没有路由器的权限,这样你用桥接模式即可。
maedaema
2021-03-01 11:10:49 +08:00
因为你没有路由器的权限,所以即使配置了也只能在其他设备上手动配置路由才能 ping 通

大概思路
宿主机所在网段 A,宿主机 IP-A
only-host 网段 B,宿主机 IP-B
其他设备配置路由,把网段 B 目标地址的数据包发送到 IP-A
宿主机设置转发,把来自网段 A 目标为网段 B 的数据包转发到 only-host 的虚拟网卡
如果转发时进行了 IP 伪装,变成了 IP-B 的话则虚拟机不用改配置,否则要在虚拟机配置返回的路由
dier
2021-03-01 11:16:40 +08:00
如果没有路由器的管理权限,那就只能在想要发起访问的源主机上设置静态路由了,将 only-host 的子网路由到你的本机 IP 上,由你的 IP 进行转发
bruce0
2021-03-01 11:46:12 +08:00
能想到的
1.桥接模式
2.nat+端口转发
no1xsyzy
2021-03-01 12:25:30 +08:00
局域网里其他机器 --(静态路由表)-> VM host --(NAT 转发 IP 包)-> VM
回程似乎直接用默认的路由表就成。
实际上的配置就是让其他机器添加静态路由到 VM host
no1xsyzy
2021-03-01 12:28:00 +08:00
@no1xsyzy 脑子浆糊了
VM host 要开启 IP 包转发
上面那行也不是 NAT
这就是一般的路由网络结构
如果有网关的后台能让网关转,没有就只能每台机器各自添加路由表了。
laqow
2021-03-01 12:41:03 +08:00
应该可以在宿主机搞个代理把宿主机其他网段 IP 的端口映射到 VM 同一个内网的 IP 上
laqow
2021-03-01 12:45:13 +08:00
@laqow 搞错了,这个不是 ping,只能把内网服务映射到外面端口。但看 ping 的目的是什么了。
lower
2021-03-01 13:01:45 +08:00
赞同楼上,虚拟机本身提供的网络功能都没法满足的话,,只能搞 vpn,代理(反代、正代)
Selenium39
2021-03-01 13:23:57 +08:00
用两个网卡,一个 NAT,一个 only-host,这样就既能 ping 通外网也能虚拟机互相 ping 通
loveyu
2021-03-01 17:55:13 +08:00
两个网卡,一个 NAT,一个 only-host 。我就是这样的
bao3
2021-03-02 04:29:21 +08:00
楼上正确。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/757111

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX