VirtualBox和CoLinux中NAT方式dns失效的解决办法

本文描述了在使用VirtualBox和CoLinux时遇到的DNS解析失效问题,并通过手动设置DNS地址成功解决了该问题。文章还分析了VirtualBox内部DNS配置逻辑,指出其会选取主机的第一个DNS地址。
部署运行你感兴趣的模型镜像
这两天在试VirtualBox和CoLinux,都是使用NAT方式上网,发现一个问题,就是dns失效。里面dhcp设置的dns地址都是10.0.2.3。
如果手动设置一个有效的dns地址,就能正常访问外网。

在Google上查了下,也没有人给出很明确的解决方法,不过提供了一条线索,就是VBox里边的dns解析就是返回host机器的一个dns地址来进行解析。我使用网通宽带+无线路由器上网,因此有两个网络连接,一个是无线网络,另一个是ppp连接,dns地址分别是168.192.1.1和221.12.1.228。查看Vbox.log,果然发现一行,把dns设为192.168.1.1并忽略221.12.1.228。由此推测vbox是寻找host机器中第一个dns地址来使用。把无线连接的dns地址手动设为221.12.1.228,果然问题就解决了。更high的是,发现在CoLinux里完全是一摸一样的问题,一并搞定。

您可能感兴趣的与本文相关的镜像

EmotiVoice

EmotiVoice

AI应用

EmotiVoice是由网易有道AI算法团队开源的一块国产TTS语音合成引擎,支持中英文双语,包含2000多种不同的音色,以及特色的情感合成功能,支持合成包含快乐、兴奋、悲伤、愤怒等广泛情感的语音。

### ### 在 VirtualBox 中配置 NAT 模式 在 VirtualBox 中,NAT 模式允许虚拟机通过宿主机的网络连接访问外部网络,但外部网络无法直接访问虚拟机。此模式适用于大多数开发测试环境。 虚拟机通过 NAT 模式连接网络时,其 IP 地址由 VirtualBox 提供的内置 DHCP 服务器分配,通常为私有地址段(如 10.0.2.x)。虚拟机的网络流量经过宿主机的网络地址转换(NAT)后发送到外部网络。[^2] #### 配置步骤: 1. 打开 VirtualBox,选择目标虚拟机,点击“设置”。 2. 在“网络”选项卡中,选择“网卡 1”。 3. 勾选“启用网络连接”。 4. 在“连接方式”下拉菜单中选择“NAT”。 5. 确认“附加到”选项为“NAT 网络”或保留默认设置。 6. 启动虚拟机后,操作系统将自动通过 DHCP 获取 IP 地址。 如需手动设置静态 IP,可在虚拟机操作系统中配置网络参数,例如在 Ubuntu 系统中编辑 `/etc/netplan/` 配置文件: ```yaml network: version: 2 ethernets: enp0s3: dhcp4: no addresses: - 10.0.2.15/24 gateway4: 10.0.2.1 nameservers: addresses: - 8.8.8.8 - 8.8.4.4 ``` 应用配置后,虚拟机将使用指定的 IP 地址并通过 NAT 模式访问外部网络。 ### ### 在 VirtualBox 中配置桥接模式 桥接模式使虚拟机直接连接到物理网络,获得与宿主机同一网段的 IP 地址。此模式适用于虚拟机需要作为独立设备在网络中被访问的场景,例如搭建 Web 服务器或 FTP 服务。 在桥接模式下,虚拟机会模拟出一个独立的网卡,与宿主机处于同一网络层级,可直接与局域网中的其他设备通信。[^1] #### 配置步骤: 1. 打开 VirtualBox,选择目标虚拟机,点击“设置”。 2. 进入“网络”选项卡,选择“网卡 1”。 3. 勾选“启用网络连接”。 4. 在“连接方式”下拉菜单中选择“桥接网卡”。 5. 在“界面名称”中选择宿主机的物理网卡(如以太网或无线网卡)。 6. 启动虚拟机后,操作系统将从局域网的 DHCP 服务器获取 IP 地址。 若需手动配置 IP 地址,确保其与局域网其他设备处于同一网段。例如在 Ubuntu 中,可编辑 `/etc/netplan/` 配置文件: ```yaml network: version: 2 ethernets: enp0s3: dhcp4: no addresses: - 192.168.1.100/24 gateway4: 192.168.1.1 nameservers: addresses: - 8.8.8.8 - 8.8.4.4 ``` 应用配置后,虚拟机即可与局域网中的其他设备直接通信。 ###
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值