基本原理

在虚拟机中有三种通信方式,例如以下图所看到的

1. Bridged(桥接模式)



在桥接模式下,VMware虚拟出来的操作系统就像是局域网中的一独立的主机,它能够訪问网内不论什么一台机器只是你须要多于一个的IP地址,并且须要手工为 虚拟系统配置IP地址子网掩码,并且还要和宿主机器处于同一网段。这样虚拟系统才干和宿主机器进行通信



假设你想利用VMware在局域网内新建一个虚拟server,为局域网用户提供网络服务,就应该选择桥接模式



2. NAT(网络地址转换模式)

使用NAT模式,就是让虚拟系统借助NAT(网络地址转换)功能,通过宿主机器所在的网络来訪问公网也就是说。使用NAT模式能够实如今虚拟系统里訪问互 联网NAT模式下的虚拟系统的TCP/IP配置信息是由VMnet8(NAT)虚拟网络的DHCPserver提供的。无法进行手工改动,因此虚拟系统也就无法 和本局域网中的其它真实主机进行通讯,採用NAT模式最大的优势是虚拟系统接入互联网很easy,你不须要进行不论什么其它的配置。仅仅须要宿主机器能訪问互联网即 可



假设你想利用VMware安装一个新的虚拟系统,在虚拟系统中不用进行不论什么手工配置就能直接訪问互联网,建议你採用NAT模式



3. Host-only(主机模式)



在某些特殊的网络调试环境中。要求将真实环境和虚拟环境隔离开,这时你就可採用Host-only模式在Host-only模式中,全部的虚拟系统是能够 相互通信的。但虚拟系统和真实的网络是被隔离开的能够利用Windows XP里面自带的Internet连接共享(实际上是一个简单的路由NAT)来让虚拟机 通过主机真实的网卡进行外网的訪问虚拟系统的TCP/IP配置信息(如IP地址网关地址DNSserver等)。都是由VMnet1(Host-only)虚拟 网络的DHCPserver来动态分配的

假设你想利用VMware创建一个与网内其它机器相隔离的虚拟系统,进行某些特殊的网络调试工作,能够选择Host-only模式

NAT方式配置

NAT(静态IP)的配置方法

1 确保虚拟机的网卡正常。选择Edit - Virtunal Network Editor

2 查看网卡属性。确保VMnet8 Host Connection(主机连接) 的状态是Connected。

假设没有连接上能够点击左下角的Restore Defaultbutton恢复默认设置。

3 点击 NAT Settingsbutton,能够查看到网关为192.168.84.2。记下此时的网关,为后面的配置做准备。

4 进入虚拟机。改动eth0的配置信息

[root@TESTATEWAY=192 ~]# vi /etc/sysconfig/network-scripts/ifcfg-eth0

BDEVICE=eth0
HWADDR=00:0C:29:7F:EF:4C TYPE=Ethernet
UUID=34adef05-91e5-4f4a-9776-df983b2a8787 ONBOOT=yes
NM_CONTROLLED=yes BOOTPROTO=static
NETMASK=255.255.255.0 IPADDR=192.168.84.101
GATEWAY=192.168.84.2
DNS1=192.168.84.2
IPV6INIT=no
ARPCHECK=no

确保下面的參数例如以下设置

ONBOOT=yes
NM_CONTROLLED=yes
BOOTPROTO=static<span style="white-space:pre">	</span>//静态地址
NETMASK=255.255.255.0
IPADDR=192.168.84.101<span style="white-space:pre"> </span>//虚拟机IP地址(任意)
GATEWAY=192.168.84.2<span style="white-space:pre"> </span>//网关(与之前看到的网关一致)

5 保存后重新启动网络服务,确保正常启用。

[root@TESTATEWAY=192 ~]# service network restart
Shutting down interface eth0: [ OK ]
Shutting down loopback interface: [ OK ]
Bringing up loopback interface: [ OK ]
Bringing up interface eth0: [ OK ]

6 查看此时的ip地址是否按上面的配置那样设置

[root@TESTATEWAY=192 ~]# ifconfig
eth0 Link encap:Ethernet HWaddr 00:0C:29:7F:EF:4C
inet addr:192.168.84.101 Bcast:192.168.84.255 Mask:255.255.255.0
inet6 addr: fe80::20c:29ff:fe7f:ef4c/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:448 errors:0 dropped:0 overruns:0 frame:0
TX packets:223 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:39552 (38.6 KiB) TX bytes:19385 (18.9 KiB)
Interrupt:19 Base address:0x2000 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:65536 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:0 (0.0 b) TX bytes:0 (0.0 b)

7 在宿主机上查看网卡信息(WIN7环境)

控制面板\网络和 Internet\网络连接下找到【VMware Network Adapter VMnet8】这块网卡




8 查看IPv4的属性将默认网关改成与虚拟机中的网关一致192.168.84.2

9 在命令提示行中ping虚拟机的地址192.168.84.101

C:\Users\Administrator>ping 192.168.84.101

正在 Ping 192.168.84.101 具有 32 字节的数据:
来自 192.168.84.101 的回复: 字节=32 时间=3ms TTL=64
来自 192.168.84.101 的回复: 字节=32 时间=1ms TTL=64
来自 192.168.84.101 的回复: 字节=32 时间<1ms TTL=64
来自 192.168.84.101 的回复: 字节=32 时间<1ms TTL=64 192.168.84.101 的 Ping 统计信息:
数据包: 已发送 = 4,已接收 = 4。丢失 = 0 (0% 丢失)。
往返行程的预计时间(以毫秒为单位):
最短 = 0ms,最长 = 3ms。平均 = 1ms

10 此时能够ping通大功告成

ping通后能够使用如Xshell等 支持SSH协议的工具连接虚拟机,简化操作。







虚拟机上网设置

1 当前模式下,检查是否能ping通外网。以下结果说明能够ping通

[root@TESTATEWAY=192 ~]# ping baidu.com
PING baidu.com (220.181.111.86) 56(84) bytes of data.
64 bytes from 220.181.111.86: icmp_seq=1 ttl=128 time=7.75 ms
64 bytes from 220.181.111.86: icmp_seq=2 ttl=128 time=51.3 ms
64 bytes from 220.181.111.86: icmp_seq=3 ttl=128 time=9.57 ms
64 bytes from 220.181.111.86: icmp_seq=4 ttl=128 time=8.38 ms
64 bytes from 220.181.111.86: icmp_seq=5 ttl=128 time=7.39 ms
64 bytes from 220.181.111.86: icmp_seq=6 ttl=128 time=7.83 ms
64 bytes from 220.181.111.86: icmp_seq=7 ttl=128 time=7.16 ms
64 bytes from 220.181.111.86: icmp_seq=8 ttl=128 time=91.2 ms
^C
--- baidu.com ping statistics ---
8 packets transmitted, 8 received, 0% packet loss, time 7194ms
rtt min/avg/max/mdev = 7.163/23.834/91.244/29.166 ms

2 假设是以下结果则说明ping不通外网。返回未知的主机名。

[root@TESTATEWAY=192 ~]# ping baidu.com
ping: unknown host baidu.com

3 假设虚拟机想上外网,则须要改动网卡的配置信息。在文件里增加DNS地址。与网关同样就可以。

[root@TESTATEWAY=192 ~]# vi /etc/sysconfig/network-scripts/ifcfg-eth0

BDEVICE=eth0
HWADDR=00:0C:29:7F:EF:4C TYPE=Ethernet
UUID=34adef05-91e5-4f4a-9776-df983b2a8787 ONBOOT=yes
NM_CONTROLLED=yes BOOTPROTO=static
NETMASK=255.255.255.0 IPADDR=192.168.84.101
GATEWAY=192.168.84.2
<span style="color:#ff0000;">DNS1=192.168.84.2</span>
IPV6INIT=no
ARPCHECK=no

4 重新启动网络服务,并再次ping外网。发现此时能够ping通外网了。

[root@TESTATEWAY=192 ~]# service network restart
Shutting down interface eth0: [ OK ]
Shutting down loopback interface: [ OK ]
Bringing up loopback interface: [ OK ]
Bringing up interface eth0: [ OK ]
[root@TESTATEWAY=192 ~]# ping baidu.com
PING baidu.com (220.181.111.86) 56(84) bytes of data.
64 bytes from 220.181.111.86: icmp_seq=1 ttl=128 time=7.64 ms
64 bytes from 220.181.111.86: icmp_seq=2 ttl=128 time=8.44 ms
64 bytes from 220.181.111.86: icmp_seq=3 ttl=128 time=8.43 ms

VmWare 与 宿主主机通信 STEP BY STEP (适用于刚開始学习的人)的更多相关文章

  1. WPF Step By Step 系列-Prism框架在项目中使用

    WPF Step By Step 系列-Prism框架在项目中使用 回顾 上一篇,我们介绍了关于控件模板的用法,本节我们将继续说明WPF更加实用的内容,在大型的项目中如何使用Prism框架,并给予Pr ...

  2. 【Step By Step】将Dotnet Core部署到Docker下

    一.使用.Net Core构建WebAPI并访问Docker中的Mysql数据库 这个的过程大概与我之前的文章<尝试.Net Core—使用.Net Core + Entity FrameWor ...

  3. 转载自~浮云比翼:Step by Step:Linux C多线程编程入门(基本API及多线程的同步与互斥)

    Step by Step:Linux C多线程编程入门(基本API及多线程的同步与互斥)   介绍:什么是线程,线程的优点是什么 线程在Unix系统下,通常被称为轻量级的进程,线程虽然不是进程,但却可 ...

  4. VMware虚拟机与主机联通及配置上网

    vmware版本:10.0.0 build-1295980,安装redhat enterprise linux 5.8 一.物理机与虚拟机联通,但不联网 1.虚拟网络VMnet1设置: 此时,物理主机 ...

  5. enode框架step by step之消息队列的设计思路

    enode框架step by step之消息队列的设计思路 enode框架系列step by step文章系列索引: enode框架step by step之开篇 enode框架step by ste ...

  6. enode框架step by step之saga的思想与实现

    enode框架step by step之saga的思想与实现 enode框架系列step by step文章系列索引: 分享一个基于DDD以及事件驱动架构(EDA)的应用开发框架enode enode ...

  7. WPF MVVM 架构 Step By Step(6)(把actions从view model解耦)

    到现在为止,我们创建了一个简单的MVVM的例子,包含了实现了的属性和命令.我们现在有这样一个包含了例如textbox类似的输入元素的视图,textbox用绑定来和view model联系,像点击but ...

  8. Docker 网络管理及容器跨主机通信

    1.网络模式 docker支持四种网络模式,使用--net选项指定: host,--net=host,如果指定此模式,容器将不会获得一个独立的network namespace,而是和宿主机共用一个. ...

  9. Docker容器跨主机通信

    默认情况下Docker容器需要跨主机通信两个主机节点都需要在同一个网段下,这时只要两个Docker容器的宿主机能相互通信并且该容器使用net网络模式,改实现方式为网桥模式通信: 除此之外我们还可以通过 ...

随机推荐

  1. django-debug-toolbar 使用

    https://pypi.org/project/django-debug-toolbar/ https://django-debug-toolbar.readthedocs.io/en/latest ...

  2. PHP DES-ECB加密对接Java解密

    最近公司有个业务,需要对接第三方接口,但是参数是需要加密的,对方也只提供了一个java的demo,在网上到处搜索,没有找到直接就能用的方法,后来还是跟公司的Android工程师对接出来的,在这里记录一 ...

  3. HNU 12876 Quite Good Numbers 完美数变形

    筛法是一种很快的方法,贴代码纪念一下. 做法很像筛法 #include <iostream> #include <cstdio> #include <cstring> ...

  4. python main函数

    关于Python的主(main)函数问题 2007-07-23 19:14 初次接触Python的人会很不习惯Python没有main主函数.这里简单的介绍一下,在Python中使用main函数的方法 ...

  5. 洛谷 P1294 高手去散步

    P1294 高手去散步 题目背景 高手最近谈恋爱了.不过是单相思.“即使是单相思,也是完整的爱情”,高手从未放弃对它的追求.今天,这个阳光明媚的早晨,太阳从西边缓缓升起.于是它找到高手,希望在晨读开始 ...

  6. ArcGIS api for javascript——明确的创建图层列表

    描述 本例展示了如何确切地创建一个地图服务里的图层列表.这个列表由HTML checkboxe组成,可用用于开关图层的可见性. 函数updateLayerVisibility()包含开关图层的逻辑.函 ...

  7. EF框架—Database-First

    ADO.NET Entity Framework 是微软以 ADO.NET 为基础所发展出来的对象关系对应 (O/R Mapping) 解决方案,现已经包含在 Visual Studio 2008 S ...

  8. 移动App架构设计

    移动App架构设计 本文主要总结了几种经常使用的架构模式, 基本是层层递进的转载请注名出处 http://blog.csdn.net/uxyheaven, 良好的排版在https://github.c ...

  9. 一个美丽的java烟花程序

    <img src="http://img.blog.csdn.net/20150625104525974?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi ...

  10. vue8 生命周期

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...