centos7桥接模式配置网络ping不通外网的问题

问题描述:centos7用桥接模式搭局域网服务器,在虚拟机搭建完毕后上不了外网(nat模式不受影响)。经过多次查验网络文件的配置发现都正确,主机与虚拟机互相能ping通(不通则需要关闭物理机与虚拟机的防火墙),然而虚拟机依旧ping不通www.baidu.com。这个问题困扰我一上午,最后发现是因为公司对机器设备有上网权限的认证,桥接模式下虚拟机网络与物理机用的同一个网卡,但是虚拟机与物理机的mac在未修改的情况下是不同的,虚拟机的mac地址未通过认证,无访问公司内网的权限。

解决方法:

1)重新生成虚拟机mac后,找负责同事将虚拟机的mac地址加入公司内网使用权限内

2)修改虚拟机mac与物理机mac为同一地址(这个搭单体虚拟机可以,多台虚拟机需要采用第一种方法,找相关的负责人员加入mac入网权限,因为在同一网段虚拟机的mac值不能相同,否则会出现无法通信的情况)

查看物理机mac地址(本人用的是有线网,针对自己的网络情况查找物理机的mac地址):

 修改虚拟机mac地址:虚拟机->网络适配器->高级->修改mac地址->完成

 

解决结果:

 

### CentOS 7 桥接网络配置教程 #### 1. 准备工作 在开始之前,确保已经安装好 VirtualBox 和 CentOS 7 虚拟机。还需要确认宿主机上的 IP 地址以及可用的网络接口。 查看宿主机的 IP 地址可以通过命令 `ip addr` 或者 `ifconfig` 实现[^2]。找到对应的网卡名称(例如 eth0 或 enp0s3),并记录其 IP 地址、子网掩码和默认网关。 --- #### 2. 配置 VirtualBox 的网络设置 打开 VirtualBox,在虚拟机的 **设置 -> 网络** 中选择适配器模式为 **桥接网络 (Bridged Adapter)**。 - 将“名称”选项设置为主机上实际使用的物理网卡(如 Wi-Fi 或 Ethernet 接口)。 - 启用该适配器,并保存更改。 此操作允许虚拟机通过主机的真实网卡连接到外部网络。 --- #### 3. 修改 CentOS 7网络配置文件 进入 CentOS 7 虚拟机后,编辑对应网卡的配置文件: ```bash vi /etc/sysconfig/network-scripts/ifcfg-eth0 ``` 或者如果是其他命名规则,则可能是 `/etc/sysconfig/network-scripts/ifcfg-enp0s3` 文件[^4]。 以下是典型的配置参数: ```plaintext TYPE="Ethernet" BOOTPROTO="dhcp" # 使用 DHCP 自动获取 IP 地址 DEFROUTE="yes" PEERDNS="yes" PEERROUTES="yes" IPV4_FAILURE_FATAL="no" IPV6INIT="no" NAME="eth0" # 替换为实际网卡名 UUID="..." # 不要修改 UUID 值 ONBOOT="yes" # 开机自动启动网卡 ``` 如果需要静态 IP 地址而非动态分配,可以改为如下形式: ```plaintext BOOTPROTO="static" IPADDR="192.168.1.100" # 设置固定 IP 地址 NETMASK="255.255.255.0" # 子网掩码 GATEWAY="192.168.1.1" # 默认网关地址 DNS1="8.8.8.8" # Google DNS 或本地 DNS ``` 完成上述修改后保存退出。 --- #### 4. 配置全局网络参数 为了指定默认路由和域名解析服务器,还需调整以下两个文件的内容: ##### (1)/etc/sysconfig/network ```bash vi /etc/sysconfig/network ``` 添加或更新以下字段: ```plaintext NETWORKING=yes HOSTNAME=localhost.localdomain # 主机名可根据需求自定义 GATEWAY=192.168.1.1 # 这里填写与宿主机相同的网关地址 ``` ##### (2)/etc/resolv.conf ```bash vi /etc/resolv.conf ``` 确保有至少一个有效的 DNS 条目存在: ```plaintext nameserver 8.8.8.8 # Google Public DNS nameserver 114.114.114.114 # 备选国内公共 DNS ``` --- #### 5. 重启网络服务 应用以上所有更改前需重新加载网络服务以使其生效: ```bash systemctl restart network.service ``` 或者使用旧版命令: ```bash service network restart ``` 验证新配置是否成功运行以下测试指令: ```bash ping www.google.com # 测试外网连通性 ping <gateway-ip> # 测试内网连通性 ``` 如果没有错误提示则表示配置无误[^5]。 --- ### 注意事项 - 如果遇到无法获得 IP 地址的情况,请检查 VirtualBox 是否已正确启用 NAT 或 Bridge Mode 并尝试更换不同的物理网卡绑定。 - 对于多块网卡环境下的系统,默认会优先选取第一个激活状态良好的设备作为主要出口路径;必要时可通过手工设定来改变这一行为。 ---
评论 11
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小猿架构

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值