解决方案#1:

解决方案#1:

我的主机是 OS X Snow Leopard,通过以太网连接到网络。客户虚拟机是 Ubuntu 12.04

我的目标是让我的虚拟机像局域网上的其他机器一样运行。具体来说,我希望能够通过 SSH 与虚拟机和网络上的所有其他机器进行通信。

我想到两种解决方案,但都无法实现。

解决方案#1:

具有桥接适配器的虚拟机应该像 LAN 上的普通机器一样运行,因此我将虚拟机的适配器 1 设置为桥接,并选择 en0(以太网)作为名称。然后我打开虚拟机,发现我没有任何 Internet 访问权限,因此无法安装 OpenSSH 服务器。为了解决这个问题,我添加了一个 NAT 适配器(适配器 2),以便我可以安装 OpenSSH。然后我可以从我的虚拟机通过 SSH 连接到网络上的任何其他机器(我相信 NAT 适配器允许我这样做),但我无法从任何其他机器通过 SSH 连接到虚拟机(连接超时)。以下是 ifconfig 的一些可能有用的结果:

对于客人:

eth0      Link encap:Ethernet  HWaddr 08:00:27:e1:60:d4  
          inet addr:128.102.109.21  Bcast:128.102.111.255  Mask:255.255.248.0
          inet6 addr: fe80::a00:27ff:fee1:60d4/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1

对于主机:

en0: flags=8963<UP,BROADCAST,SMART,RUNNING,PROMISC,SIMPLEX,MULTICAST> mtu 1500
    ether 00:25:bc:dd:62:80 
    inet6 fe80::225:bcff:fedd:6280%en0 prefixlen 64 scopeid 0x4 
    inet 128.102.109.20 netmask 0xfffff800 broadcast 128.102.111.255
    media: autoselect (1000baseT <full-duplex,flow-control>)
    status: active

我应该提到主机有防火墙(我认为这可能会影响事情)

解决方案 2:

我考虑的第二件事是从主机到客户机的 ssh 端口转发。我可以进行设置,以便主机上的端口 XXXX 转发到客户机上的端口 22,但无法访问主机上的端口 XXXX。

ssh -p 2222 128.102.109.20

给出连接超时错误。

我很确定这与防火墙有关,但我无法使用防火墙,因为我没有管理权限。

我怎样才能让它工作?

答案1

问题是,当您通过桥接连接启动虚拟机时,虚拟机具有与虚拟 LAN 卡关联的自己的 MAC 地址。

此地址未在 NASA 使用的智能交换机上注册。因此您的“新机器”无法连接到 LAN。

解决此问题的唯一方法是向交换机注册虚拟机的 MAC 地址。您需要让 IT 人员来做这件事。

相关内容