VirtualBox:将 IP 地址桥接至虚拟机

VirtualBox:将 IP 地址桥接至虚拟机

我想将 yy4.36 桥接到我的虚拟机。

我可以在主机上配置 yy4.36。所以路由到主机是有效的,我可以ping y.y.4.36从互联网:

$ ifconfig
eno2: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet x.x.41.32  netmask 255.255.255.0  broadcast x.x.41.255
        inet6 fe80::5a20:b1ff:fe07:b375  prefixlen 64  scopeid 0x20<link>
        ether 58:20:b1:07:b3:75  txqueuelen 1000  (Ethernet)
        RX packets 2851252  bytes 241129524 (241.1 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 6722211  bytes 9634863759 (9.6 GB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
        device memory 0x92c00000-92cfffff  
eno2:0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet y.y.4.36  netmask 255.255.255.224  broadcast y.y.4.63
        ether 58:20:b1:07:b3:75  txqueuelen 1000  (Ethernet)
        device memory 0x92c00000-92cfffff  
$ route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         x.x.41.1        0.0.0.0         UG    0      0        0 eno2
x.x.41.0        0.0.0.0         255.255.255.0   U     0      0        0 eno2

请注意,yy4.36 没有默认网关。

我可以轻松地将虚拟机设置为使用桥接网络,并将其地址设置为 yy4.36。但我如何才能通过互联网访问它呢?

我希望我必须删除 eno2:0,然后告诉虚拟机它应该使用 yy4.36 作为其地址,并使用 xx41.1 作为其默认网关。

但我该怎么做呢?

这不起作用:

$ route add -net default gw x.x.41.1
SIOCADDRT: Network is unreachable

因为虚拟机在 xx41.* 上没有地址。

编辑

我已经做了一个解决方法。在虚拟机上添加另一个与主机网络的接口。然后:

ifconfig enp0s8 192.168.56.2
ifconfig eth0 y.y.4.36 netmask 255.255.255.224
route add -net default gw 192.168.56.1
# Force the src address to be y.y.4.36 and not 192.168.56.2
ip route replace default via 192.168.56.1 dev enp0s8 src y.y.4.36

在主机上:

route add -host y.y.4.36 gw 192.168.56.2

因此,我通过 VirtualBox 的主机网络 (192.168.56.0/24) 路由流量。

它似乎有效,但我相信有一种更传统的方法可以完成将 yy4.36 提供给虚拟机。

答案1

如果我理解正确的话:

Your host is x.x.41.32  netmask 255.255.255.0 (ie, net is x.x.41.0 to x.x.42.255),
 and the gateway (to internet) is x.x.41.1. 
you want to setup a lan for your vms on x.x.4.36 netmask 255.255.255.224
 (hence on a subnet with 32 ips, x.x.4.32 to x.x.4.63 and that vm is x.x.4.36).

如果您希望该子网访问互联网:多种可能性之一(TIMTOWTDI...):其中一台虚拟机(例如:xx4.36?或主机?或另一个?)应该有 2 个接口:一个位于 xx41 .y,xx4.z 中的一个,已启用路由,并且默认网关为 xx41.1。其他虚拟机应将该特定虚拟机(或主机)的 xx4.z IP 作为默认网关。

相关内容