基于VMware模拟实现远程主机网络通信

目的:

基于VMware软件,模拟实现不同网段的两主机,通过路由器进行通信。两主机host A和host B分别处于VMnet6网络和VMnet7网络,都属于端系统,不能直接通信,在这两台主机中添加两台路由器,即可实现通信。在本实验中,由CentOS系统充当路由器,具体网络和IP信息科查看下图:

从上图可以得知:

主机A:有一个网卡(网络适配器)使用自定义虚拟网络VMnet6进行连接,ip为55.0.0.55/8。

主机 B:有一个网卡使用自定义虚拟网络VMnet7进行连接,ip为155.0.0.55/16。

路由器a:使用CentOS7.3系统充当,有两个网卡,第一个网卡,连接到VMnet6连接,ip为55.0.0.1/8,即和主机A处于同一个网络,即可以直接和主机通信;第二个网卡,使用VMnet1,即仅主机连接模式,ip设置为192.168.32.55/24。

路由器b:使用CentOS6.9系统充当,有两个网卡,第一个网卡,连接到VMnet1,ip为192.168.32.155/24;第二个网卡,连接到VMnet7,ip为155.0.0.1/16。

这样设置,相当于host A和route a的A网卡直接相连,route a的B网卡和route b的C网卡直接相连,route b的d网卡和host B直接相连。直接相连,意味着可以直接进行网络访问,使用ping命令可以检测

实验步骤

  1. 硬件设置。按照图示,给各个设备添加网卡设备,在VMware 12 pro中,在关闭虚拟机的状态下,右键单击对应虚拟机,设置-->硬件-->添加-->网络适配器,就可以添加网卡

2.关闭防火墙。将所有设备的防火墙关闭

关闭防火墙命令

    

CentOS :
service iptables stop         # 临时生效
chkconfig iptables off       # 永久生效,关闭重启后,任然有效
CentOS :
systemctl stop firewall.service   # 临时生效
systemctl disable firewall.service    # 永久生效

查看是否关闭

CentOS :
service iptables status
CentOS :
systemctl status firewall.service

3.关闭NetworkManager服务

NetworkManager和network不是同一个服务,当两个服务同时开启,会优先执行NetworkManager服务,关闭NetworkManager,不影响network服务。

CentOS  :
service NetworkManager stop
CentOS :
systemctl stop NetworkManager

4.配置网络

A. host A网络配置

DEVICE=eth1                        #    对应设备名,根据自身的设备名做修改
NAME=eth1 # 设置名称,可不配置
TYPE=Ethernet # 网络类型 以太网
ONBOOT=yes # 自动连接
BOOTPROTO=static # 设置静态ip
IPADDR=55.0.0.55 # ip
PREFIX= # 网络位数
GATEWAY=55.0.0.1 # 网关
DNS1=8.8.8.8 # 域名地址

B.host B网络配置

DEVICE=eth3                          #      根据自身的设备名做修改
TYPE=Ethernet
IPADDR=155.0.0.55
PREFIX=
GATEWAY=155.0.0.1
DNS1=8.8.8.8

C. route a网络配置

A网卡配置:
DEVICE="ens38"
ONBOOT="yes"
TYPE="Ethernet"
BOOTPROTO="static"
IPADDR=55.0.0.1
PREFIX=
DNS1=8.8.8.8 B网卡配置:
DEVICE="ens33"
TYPE="Ethernet"
ONBOOT="yes"
BOOTPROTO="static"
IPADDR=192.168.0.55
PREFIX=
DNS1=8.8.8.8

D. route b网络配置

C网卡配置:
DEVICE=eth0
HWADDR=:0C::8F:5C:
TYPE=Ethernet
UUID=19f3041b-317b-4a32-bed5- 23f526d177c1
ONBOOT=yes
NM_CONTROLLED=yes
BOOTPROTO=static
IPADDR=192.168.0.155
PREFIX=
DNS1=8.8.8.8 D网卡配置:
DEVICE=eth1
TYPE=Ethernet
ONBOOT=yes
NM_CONTROLLED=yes
BOOTPROTO=static
IPADDR=155.0.0.1
PREFIX=
DNS1=8.8.8.8

5.开启两个“路由器”的路由功能

默认情况下,CentOS系统仅接收网络中与自身相关的数据包,与自身无关的包,做屏蔽处理,为了能够接收并转发网络中的数据包,需做一下设置:

echo 1 > /proc/sys/net/ipv4/ip_forward

6.测试

    使用ping命令,例如,在hostA上,测试与route a中A网卡的连接状态:

  ping 155.0.0.1

    分段测试:

先测试,直接相连的网络是否通信:

host A —— route A

route B —— route C

route D —— host B

如果这三段都通了,可以进行下一步测试;否则,参照前面步骤重新设置

然后测试:

host A —— route B

host A —— route C

host D —— route C

host D —— route B

最终测试:

host A —— host B

基于VMware模拟实现远程主机网络通信的更多相关文章

  1. 基于Vmware player的Windows 10 IoT core + RaspberryPi2安装部署

    本文记录了基于Vmware Player安装Windows10和VS2015开发平台的过程,以及如何在RaspberryPi2.0上启动Windows10 IoT core系统,并通过一个简单的hel ...

  2. 基于VMware的eCos环境编译redboot(脚本配置redboot)

    基于VMware的ecos,redboot及hello world(1)安装请参照[[ecos学习2]wmware运行redboot[方法二]--图形实现配置 ] (2)修改内存布局文件:~/i386 ...

  3. 基于VMware的虚拟Linux集群搭建-lvs+keepalived

    基于VMware的虚拟Linux集群搭建-lvs+keepalived 本文通过keepalived实现lvsserver的的双机热备和真实server之间的负载均衡.这方面的blog挺多,可是每一个 ...

  4. jQuery使用(九):队列及实现原理、基于队列模拟实现animate()

    开篇一张图之队列模型 queue()如何使用? queue()原理实现? 基于queue()模拟实现animate() 一.使用queuer方法.理解队列原理 queue() dequeue() cl ...

  5. 【申嵌视频】基于VMWare虚拟机下安装ubuntu操作系统的详细步骤

    [申嵌视频]基于VMWare虚拟机下安装ubuntu操作系统 适合搭建mini2440, Tiny6410, smart210,Tiny4412, NanoPC-T2, NanoPC-T3, Nano ...

  6. 基于VMware Workstation搭建开发服务器

    基于VMware Workstation搭建开发服务器   文章为本人原创,转载请联系作者并注明出处.晓松 源URL: https://www.jianshu.com/p/e62ab7de0124 我 ...

  7. 基于 VMware 的超融合, 解析 vSAN 与 SmartX ZBS 的优劣差异

    在企业级IT领域从业多年,最近越来越多地听到圈内人谈论起超融合技术的种种好处.的确,超融合技术已越来越走向成熟,带来的价值也逐渐凸显.它可靠性高,资源消耗低,尤其是运维部署非常便捷.在企业基础架构领域 ...

  8. 基于VMWare配置VxWorks开发环境

    常规VxWorks的开发环境都是基于目标开发板或目标机来构建的,但并非所有人都具备这样的条件,所以本文主要介绍如何基于vmware来构建VxWorks开发环境.   Step 1. 安装vmware ...

  9. 【安装文档】TRex流量分析仪保姆级安装指南--基于VMware虚拟机(ubantu18.04@Intel 82545EM)

    前言 既然你已经知道TRex并尝试搜索它的安装教程,这意味着你有一定的基础知识(至少知道自己需要什么).因此本文对于TRex的介绍部分会偏少 本次主要为TRex安装过程的一次记录(版本为v3.0.0) ...

随机推荐

  1. POJ 2400 Supervisor, Supervisee(KM二分图最大权值匹配)题解

    题意:n个老板n个员工,先给你n*n的数据,i行j列代表第i个老板第j喜欢的员工是谁,再给你n*n的数据,i行j列代表第i个员工第j喜欢的老板是谁,如果匹配到第k喜欢的人就会产生一个分数k-1.现在让 ...

  2. lamp服务器被人恶意绑定域名的解决办法

    还没开始就被别人绑定了域名 事情的起因与发现 刚买了个服务器搭建了一个dz,想着域名还没备案,就先搭建了起来,然后在做DDOS测试时偶然发现服务器被别人恶意把域名绑定了 最初的解决方案 没管..... ...

  3. Tutorial: Implementation of Siamese Network on Caffe, Torch, Tensorflow

    Tutorial: Implementation of Siamese Network with Caffe, Theano, PyTorch, Tensorflow  Updated on 2018 ...

  4. Attribute2Image --- Conditional Image Generation from Visual Attributes 论文笔记

     Attribute2Image --- Conditional Image Generation from Visual Attributes Target: 本文提出一种根据属性生成图像的产生式模 ...

  5. 基于OAuth2.0的第三方认证

    浅显易懂的解释 来源 yahoo OAuth认证 原理 理解OAuth 2.0:原理.分类 一张图搞定OAuth2.0:是什么,怎么用 应用自身,完成用户认证: 缺点: 1.不同的访问Web应用提供不 ...

  6. NLog汇总

    相关文章 NLog文章系列——系列文章目录以及简要介绍 Elasticsearch,Kibana,Logstash,NLog实现ASP.NET Core 分布式日志系统 ElasticSearch+N ...

  7. Katana的WebAPI集成Swagger 解决方案

    这位大哥写的博客很清楚了,我就不重复了. http://www.cnblogs.com/caodaiming/p/4156476.html 错误解决 http://blog.csdn.net/gold ...

  8. Git误操作 git reset强制回滚 恢复commit方法

    参考: 找回Git中丢失的Commit Git误操作 git reset强制回滚 恢复commit方法 使用Git时,常有误操作,在Commit之后又执行了git reset --hard HEAD强 ...

  9. C#Listview添加数据,选中最后一行,滚屏

    this.listView.Items.Add(lvi); this.listView.EnsureVisible(this.listView.Items.Count - 1); this.listV ...

  10. Java中String型与Date型数据的互相转换

    /** * Date类型转为指定格式的String类型 * * @param source * @param pattern * @return */ public static String Dat ...