在 VMware 中可以使用三种方式上网:桥接(Bridge)、网络地址转换(NAT)、仅主机(HOST-ONLY)。
如何选择正确的方式上网,直白地说,就是以下几点:
要使虚拟机能连接互联网,并且外部网络或局域网能访问到虚拟机(独立公网 IP 或局域网 IP),使用桥接模式
要使虚拟机能连接互联网,但是不在意虚拟机与宿主机是否能通信(比如连接 SSH),外部网络不能访问虚拟机,使用 NAT 模式
要使虚拟机不能连接互联网,但是需要虚拟机与宿主机相互通信,使用 HOST-ONLY 模式
这里记录下在 VMware 中使 CentOS 利用桥接上网的方法(其实网上方法是可行的…)
第一步:设置 VMware
在 VMware 中打开【编辑】->【虚拟网络编辑器】,添加 VMnet0
,并选择桥接模式
。需要注意的是,需要选择“桥接到”的网卡,使用无线网卡就选无线网卡,使用有线网卡就选有线网卡,如下图:
第二步:设置虚拟机
在虚拟机系统上右键,进入【设置】界面,在【硬件】选项卡中,找到【网络适配器】(没有就自行添加硬件),设置为桥接模式,如下图。其中“复制物理网络连接状态”不知道要不要选中,至少不选中是可以连接的。
第三步:在虚拟机内配置 IP
由于博主的 CentOS 没安装图形界面,所以以下全为命令行形式展现。
vim /etc/sysconfig/network-scripts/ifcfg-eth0 #打开以上文件,按a进入编辑模式 #博主这显示以下内容 DEVICE=eth0 HWADDR=00:0C:29:F4:F5:D6 TYPE=Ethernet UUID=36312bb1-d1ed-4702-a53c-cf19afb88c51 ONBOOT=no NM_CONTROLLED=yes BOOTPROTO=dhcp #DEVICE是网卡编号,HWADDR是MAC地址,TYPE、UUID和NM_CONTROLLED这五项无需更改 #ONBOOT是设置在启动network服务时是否启用该网卡,需要将其改为ONBOOT=yes,否则以后每次都要使用ifup eth0启动网卡 #BOOTPROTO是设置获得IP方式,可选为staic(静态IP)、dhcp(动态分配)、none(不使用)。即使路由器设置的是开启DHCP,也可以使用静态IP的方式获得IP
1、若使用 staic(静态 IP)的方式获得 IP,需要将该文件修改为下面形式
DEVICE=eth0 HWADDR=00:0C:29:F4:F5:D6 TYPE=Ethernet UUID=36312bb1-d1ed-4702-a53c-cf19afb88c51 ONBOOT=yes #修改 NM_CONTROLLED=yes BOOTPROTO=staic #修改 NETMASK=255.255.255.0 #子网掩码,与宿主机一致 IPADDR=192.168.1.55 #静态IP地址,与宿主机在同一网段内,不能被其他设备占用该IP GATEWAY=192.168.1.1 #网关,与宿主机一致
之后,再打开以下文件设置 DNS,否则能联网但是不能解析域名
vim /etc/resolv.conf #该文件默认是空文件,这时要加上 DNS,例如: nameserver 114.114.114.114 nameserver 8.8.8.8 #DNS无需与宿主机一致,但是一定要设置,否则你就用IP吧
最后,使用 service network restart
重启网络服务,虚拟机即可联网。
2、若使用 dhcp(动态分配)的方式获得 IP,需要将该文件修改为下面形式
DEVICE=eth0 HWADDR=00:0C:29:F4:F5:D6 TYPE=Ethernet UUID=36312bb1-d1ed-4702-a53c-cf19afb88c51 ONBOOT=yes #修改 NM_CONTROLLED=yes BOOTPROTO=dhcp #修改
无需设置 DNS,直接使用 service network restart
重启网络服务,虚拟机即可联网。
此时,贴上百度的正确使用方法:
此时 Ping 百度已经可以 Ping 通了= =
PS:附带一个修改 CentOS 语言的方法
vim /etc/sysconfig/i18n LANG="zh_CN.UTF-8" 改为 LANG="en_US.UTF-8" reboot
原创文章,转载请以链接形式注明出处:https://blog.ttionya.com/article-1159.html