在实践中深入理解VMware虚拟机的上网模式:桥接模式
0.说明
本篇博文为《在实践中深入理解VMware虚拟机的上网模式》系列的其中一篇:NAT模式。
有关于深入理解VMware虚拟机的上网模式的意义,可以参考本系列博文的另一篇《在实践中深入理解VMware虚拟机的上网模式:NAT模式》中的说明部分,这里不再展开说明。
本博文的撰写方式还是以理论为主线,结合实际操作,在实践中深入理解VMware虚拟机的各种上网方式。
VMware虚拟机的上网方式有三种:NAT、桥接、仅主机模式,本篇介绍桥接模式。
1.实验环境
博主的实验环境如下:
宿主机操作系统:Windows 7
VMware Workstation版本:12.5.2 build-4638234
虚拟机操作系统:CentOS 6.5
虚拟机操作系统上网方式:桥接模式
说明:为了后面的测试正常,请务必将宿主机和虚拟机的操作系统的防火墙功能关闭。实际上虚拟机使用哪一种操作系统是没有影响的,为了方便测试验证,应该使用自己熟悉的操作系统。
对于上网模式的设置,可以参考下面的图示:
2.桥接模式的理论知识
当把我们的虚拟机的上网方式设置为桥接模式时,虚拟机、宿主机、各网卡之间的连接关系可用下图来表示:
因此,当虚拟机使用桥接模式上网时,你可以把这台虚拟机完全看作是宿主机所在局域中的一台真实主机,它使用的网络地址信息跟宿主机的完全一样。
不过需要注意的是,由于我们的宿主机中可能会有多张网卡,因此,在VMware Workstation中,我们是可以设定我们的虚拟机桥接到哪一张网卡上的:
如图,博主是把当前的虚拟机桥接到宿主机的无线网卡上,因此虚拟机的网络地址信息应该跟宿主机在无线网卡上所获取到的网络地址信息是在同一个网段的,即它们位于同一个局域网中。
3.在实践中深入理解桥接模式的网络原理
先在我们的宿主机上查看网络地址信息:
可以看到宿主机所在局域网的IP地址段为192.168.1.0/24,因为我的宿主机是接wifi来上网的,并且使用的是DHCP方式来获取ip地址,所以我们可以在虚拟机上设置使用dhcp的方式来获取IP地址,CentOS的dhcp配置如下:
[root@leaf ~]# cat /etc/sysconfig/network-scripts/ifcfg-eth0 DEVICE=eth0 HWADDR=00:0c:29:3b:4c:6d TYPE=Ethernet UUID=5ae16ecc-0149-487e-8dab-51afc75bd265 ONBOOT=yes NM_CONTROLLED=yes #BOOTPROTO=static BOOTPROTO=dhcp IPADDR=10.0.0.101 NETMASK=255.255.255.0 GATEWAY=10.0.0.2 DNS1=202.96.128.86 DNS2=202.96.128.166 IPV6INIT=no USERCTL=no PEERDNS=yes
重启CentOS的网络服务:
[root@leaf ~]# /etc/init.d/network restart Shutting down interface eth0: [ OK ] Shutting down loopback interface: [ OK ] Bringing up loopback interface: [ OK ] Bringing up interface eth0: Determining IP information for eth0... done. [ OK ]
再查看IP地址信息:
[root@leaf ~]# ifconfig eth0 Link encap:Ethernet HWaddr 00:0C:29:3B:4C:6D inet addr:192.168.1.106 Bcast:192.168.1.255 Mask:255.255.255.0 inet6 addr: fe80::20c:29ff:fe3b:4c6d/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:31386 errors:0 dropped:0 overruns:0 frame:0 TX packets:15738 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:14467018 (13.7 MiB) TX bytes:1726371 (1.6 MiB) lo Link encap:Local Loopback inet addr:127.0.0.1 Mask:255.0.0.0 inet6 addr: ::1/128 Scope:Host UP LOOPBACK RUNNING MTU:16436 Metric:1 RX packets:239 errors:0 dropped:0 overruns:0 frame:0 TX packets:239 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:23198 (22.6 KiB) TX bytes:23198 (22.6 KiB)
这时可以测试宿主机与虚拟机的连通情况,在宿主机上ping虚拟机的IP地址:
或者在CentOS上ping宿主机:
[root@leaf ~]# ping 192.168.1.100 PING 192.168.1.100 (192.168.1.100) 56(84) bytes of data. 64 bytes from 192.168.1.100: icmp_seq=1 ttl=128 time=0.530 ms 64 bytes from 192.168.1.100: icmp_seq=2 ttl=128 time=0.482 ms 64 bytes from 192.168.1.100: icmp_seq=3 ttl=128 time=0.508 ms 64 bytes from 192.168.1.100: icmp_seq=4 ttl=128 time=0.579 ms 64 bytes from 192.168.1.100: icmp_seq=5 ttl=128 time=0.447 ms 64 bytes from 192.168.1.100: icmp_seq=6 ttl=128 time=0.448 ms 64 bytes from 192.168.1.100: icmp_seq=7 ttl=128 time=0.552 ms 64 bytes from 192.168.1.100: icmp_seq=8 ttl=128 time=0.220 ms ^C --- 192.168.1.100 ping statistics --- 8 packets transmitted, 8 received, 0% packet loss, time 7352ms rtt min/avg/max/mdev = 0.220/0.470/0.579/0.107 ms
因为虚拟机和宿主机都是在同一个局域网中,所以正常情况下它们肯定是可以互通的,当出现通信不正常的情况下,就需要注意看是否是因为开启了防火墙而把数据丢弃掉,所以在这些测试中,都 是建议把防火墙关掉的。
上面的IP地址信息,对应到前面的原理图上,如下:
所以这样一来我们就很清楚,当VMware虚拟机使用桥接模式上网时,其背后的网络通信原理和细节的一个完整过程了。
4.下一步应该做什么
上面对于虚拟机使用的是DHCP分配的地址的方式,实际用手动分配也是可以的,这时它一样可以和宿主机进行网络通信,可以自行测试一下。
5.在实际当中的应用
首先第一点是,当我们的虚拟机出现网络问题的时候,都是需要先了解清楚网络的拓扑结构再进行网络排错的,所以上面的内容就为我们提供了非常好的理论与实践知识。
另外,如果可以在理解这些网络知识的前提下再去搭建各种服务,做各种测试,可以让我们做到胸有成竹的一种状态,而不再是“雾里看花,水中望月”了,相应在这样的不断尝试中,我们的综合操作能力一定会变得更强。
不过仍然需要说明的是,上面的图解仍然只是做参考,其中的很多细节都是需要了解VMware Workstation的网络虚拟化的细节才可以真正了解清楚的,但不管怎么说,上面的内容对于在网络通信上面,还是可以给我们带来很大的帮助的,真心希望可以帮到大家!
由于能力和时间有限,如果发现有问题的,望及时指出。
补充:
对于网络排错,可以参考博主之前写的一篇博文:《网络排错大讲解》。
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
Nginx+Redis+Tomcat实现session共享集群
Nginx作为目前最流行的开源反向代理HTTP Server,实现资源缓存、web server负载均衡等功能,Tomcat提供动态web内容,redis提供高效缓存构成一个完美web站点组合,但必须借助redis-session-manager-tomcat.jar包才能实现session共享。session-manager负责会话管理,commons-pool是共享池,jedis是连接redis组件,三者协调共享,缺一不可。 特别注意:redis-session-manager-tomcat.jar是通过maven打包而成,与context.xml内容相对应,commons-pool.jar jedis.jar版本要求严格,千万不能轻视。 架构图 实验环境 IP Roles port station11192.168.1.11 nginx centos6.8 端口:80 版本:1.10.2 station11192.168.1.11 redis 2.4.10 端口:6379 station12192.168.1.12 tomcatA ...
- 下一篇
Windows Server 2016下配置NFS集群
Windows Server 2016下配置NFS集群 说到Windows下集群,大家都会想到Windows系统自带的故障转移的集群服务,详细的我们就不多说了,今天主要介绍的Windows Server 2016下配置NFS服务集群,我们为什么搭建今天的服务呢?是有一定的原因的,在此我们就说说原因吧~从去年年开始公司就一直上线OA系统,OA系统中有一个附件服务器,通过Mount的方式做共享数据,由于之前做的是单点,供应商也没有好的方法,所以就想到了用windows的NFS做集群,经过尝试确实效果还不错,所以分享给有需要的同学参考。 环境介绍: Hostname:DC IP:192.168.5.10 Role:DC、DNS Domain Name:ixmsoft.com Hostname:ISCSI-Server IP:192.168.5.65 Role:ISCSI Server Hostname:NFS2016-01 IP:192.168.2.42 Role:NFS+Cluster Hostname:NFS2016-02 IP:192.168.2.43 Role:NFS+Cluster...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- Red5直播服务器,属于Java语言的直播服务器
- SpringBoot2配置默认Tomcat设置,开启更多高级功能
- 设置Eclipse缩进为4个空格,增强代码规范
- CentOS8安装Docker,最新的服务器搭配容器使用
- MySQL8.0.19开启GTID主从同步CentOS8
- Jdk安装(Linux,MacOS,Windows),包含三大操作系统的最全安装
- CentOS7编译安装Gcc9.2.0,解决mysql等软件编译问题
- CentOS6,7,8上安装Nginx,支持https2.0的开启
- CentOS7设置SWAP分区,小内存服务器的救世主
- SpringBoot2整合Redis,开启缓存,提高访问速度