我正在尝试从 VirtualBox Ubuntu 客户操作系统建立到运行 o Host 的 Oracle XE 数据库的 JDBC 连接。但是,连接被拒绝。以下是我的环境的详细信息:
VirtualBox:4.1.4 主机操作系统:Windows 7 客户机操作系统:Ubuntu server 11.4 网络模式:桥接网络 主机上运行的 Oracle XE 数据库
问题:WebLogic 服务器在 Ubuntu 虚拟机上运行。它尝试连接到在主机操作系统 (Windows 7) 上运行的 Oracle XE 数据库,监听端口为 1521。在客户操作系统 (Ubuntu) 上,我能够从客户操作系统 ping 主机计算机。但是,当我在客户操作系统上的 WebLogic 服务器上配置 JDBC 数据源以连接到 Oracle XE 时,连接需要很长时间,最终我收到“IO 异常:网络适配器无法建立连接”的消息。当我尝试“telnet host-ip 1521”时,没有建立连接。
使用 Bridge 网络,我可以在主机和客户操作系统之间建立双向连接(例如通过 ssh 和 ftp 连接)。我在 Bridge 网络和客户/主机操作系统的设置中是否遗漏了什么?请注意,我能够在正常网络环境中建立相同的连接(即不使用虚拟盒)。
我不确定 Bridge 网络是否适合上述工作。我应该使用仅主机网络模式吗?如果是,我需要执行哪些特定配置?我通读了有关设置仅主机网络的 Virtual Box 文档,但其中缺少详细信息。我按照手册中描述的步骤进行操作,但甚至无法连接到主机。
这里的一些专家可以就这个问题启发我吗?
非常感谢。李成
答案1
我绝对会推荐您采用仅主机网络连接的方法。
如果您需要将桥接连接用于其他目的,则保留它并创建额外的仅主机连接。
我发现主机和客户机之间的连接多次无法使用桥接连接,这意味着它们通常不受支持。其次,你会遇到以下问题
- 如果桥接接口上的物理连接断开,主机和客户机之间的连接就会中断 - 当您重新启动路由器时,或者在移动中使用笔记本电脑时)
- IP 地址可能会定期更改等
- 确切的性能和行为取决于驱动程序的实现
通过仅主机连接,您可以在主机上获得固定地址接口,而客户机则从 DHCP 获得分配的 IP。
请注意,出于性能原因,请在虚拟机的属性适配器类型中选择“半虚拟化网络/Virtio”。这个对我的 Ubuntu 客户机有用,避免了昂贵的硬件模拟……并提供一致的行为。