这篇文章是计算机网络上机实验课的作业。

实验任务:利用 VMWare 搭建一个由 5 个主机组成的随机拓扑的网络。要求该网络中至少有 2 个子网,两个路由器 。实验的网络拓扑图如下:

网络中有两个路由器,三个终端,组成三个局域网络。路由器和终端均为VMWare的的虚拟机。VMWare软件下载就在百度下载就可以了。这里我收藏了八台虚拟机ubuntu12,需要的同学可以下载使用哦。下载链接:https://pan.baidu.com/s/1miMIM9q (每台虚拟机的用户名和密码都是user,三台有图形界面,四台没有图形界面。)关于怎么导入和使用虚拟机自行百度哈~这里就不赘述了。

1. 虚拟机的网络配置

1.1 导入多个虚拟机

除需运行图形界面软件的虚拟机外,其它默认采用字符界面。在字符界面下可以选用普通用户或根用户(root)登录。用普通用户登录时,命令提示符为$,在执行需要 root 用户权限的命令时可通过在命令前加 sudo,或用 su 命令提升为 root 用户完成。用 root 用户登录时,命令提示符变为#。从字符界面启动图形界面时用命令 startx,为使图形界面运行正常,请先确保虚拟机内存达到 256M。

我这次实验导入了5台虚拟机,571和572是路由器,573到575是终端。

1.2 连接多个虚拟机

VMWare 提供了十个虚拟交换机 VMnet0—VMnet9。其中 VMnet0、 VMnet1 和 VMnet8为专用设备,分别以 default Bridged、 Host-only 和 NAT 三种方式为虚拟机提供宿主机器原网络服务。另外七个虚拟交换机未被定义,可以用它们进行连接,配制虚拟网络。

下面介绍怎么配置各个虚拟机的网络:

U571 对应于网络中的route0,负责两个子网之间的交换路由。打开U571的虚拟机设置:

打开网络适配器,右侧选择自定义网络,选择VMNET2,这样虚拟机U571便与虚拟交换机VMNET2相连,与VMNET2相连的都在一个局域网内。VMWare 没有提供虚拟路由,我们需要用虚拟机来模拟出一个路由器,这样用来模拟路由器的虚拟机至少需要两张网卡,

所以你可能看到你的网络适配器只有一个,点击下方的添加按钮就可以为虚拟机添加多张网卡。

这样变又加入了一张网卡。现在U571就是一个链接了VMNET2和VMNET3的路由器了,同样的配置U572为链接VMNET3和VMNET4的路由器。U573和U574为连接VMNET2的终端。U575为链接VMNET4的终端。

为了理清网络结构和后面的内容,我给前面出现的图加一些注释方便理解:

标注了每个交换机和终端的网卡的IP地址,通过ping操作来检测是否网络链接正常。目标是任意的两个IP之间都能PING通。

2. 设置IP与路由规则

ip 地址是计算机进行网络通讯的基础,每一台联网计算机都至少具有一个 ip 地址。在日常使用中,我们通常能自动获取 ip,这是由于 DHCP 协议的作用。在本次实验中我们需

要手动为配置好的虚拟网络分配 ip 地址。

首先使用 ifconfig 命令查看网络配置,以虚拟机 U-571 为例,键入命令

ifconfig -a |less

用"q"键退出。刚开始的虚拟机还没有IPV4地址。

然后使用ifconfig命令分别为两个网络设备eth0和eth1设置IP.(U571)

sudo ifconfig eth0 192.168.2.1 netmask 255.255.255.0

sudo ifconfig eth1 192.168.3.1 netmask 255.255.255.0

同样在U572中设置为

sudo ifconfig eth0 192.168.4.1 netmask 255.255.255.0

sudo ifconfig eth1 192.168.3.1 netmask 255.255.255.0

U573--U575的IP按照的上述的方法设置成上图中每个节点的IP就可以了。这里要仔细联系上面的图理清楚网络关系。

配置好之后我们可以用ifconfig -a 查看:

IP设置好后,就可以根据IP在路由上设置路由规则。这个也是本次实验的核心部分,路由器是根据路由表来进行数据包的转发的,如果没有路由表,数据包就不知道往哪里发,这个就跟写信不写地址就发不了一样。

在这里我们以路由器U571为例来说明,U572配置的方法是一样的。配置路由规则的命令如下:

sudo ip route add 192.168.2.0/24 via 192.168.2.1

sudo ip route add 192.168.3.0/24 via 192.168.3.1

sudo ip route add 192.168.4.0/24 via 192.168.3.2

其中 ip route add 192.168.2.0/24 via 192.168.2.1 命令添加的规则,告诉路由目的 ip 在192.168.2.0/24(192.168.2.1~192.168.2.255)网段内的封包经由 ip 地址为 192.168.2.1 的设备转发出去,即下一跳的 ip 为 192.168.2.1。而 192.168.2.0/24 是 Linux 中常用的掩码表示方式。24 表示掩码字长为 24 即掩码为 255.255.255.0, 192.168.2 为网络号, 1~254 为网络中的主机号。 此外还有其他形式用于添加路由规则的命令。

这里要好好体会路由器转发的是下一跳的IP,我当时实验的时候翻了一个错误就是在转发192.168.4.0/24的时候,把他的下一跳IP设置成了192.168.3.1,这里可以看到这样是不行的,如果有U575(192.168.4.2)的数据包的话,那么转发给192.168.3.1,路由器并不知道下面该把包发送给谁。所以应该设置成192.168.3.2,然后路由器U572中,再添加路由规则sudo ip route add 192.168.4.0/24 via 192.168.4.1,这样便可以把包转发给U575了。这里需要好的体会下是怎么实现的。

最后我们要让虚拟路由允许转发,置虚拟机 U-571 的 ip_forward 标志为 1。 这里我们需要把/proc/sys/net/ipv4/目录下的文件 ip_forward 值置为 1。 使用命令 echo,形如:

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

在运行上述代码会出现permission denied,这时运行  sudo su,然后再执行上述代码就可以了。

然后同理的配置好路由器U572后就可以愉快的相互ping通了。

实验下从U572(192.168.2.2)  ping u575(192.168.4.2)结果如下:

这就ping通啦~说明网络配置成功了。

我也是才开始学计算机网络,文章中出现了哪些专业术语不正确的地方还望大家指正~纯手打,看完点个赞吧(●'◡'●)!!!

虚拟机局域网拓扑图_利用 VMWare 搭建随机拓扑网络相关推荐

  1. 利用 VMWare 搭建随机拓扑网络

    这篇文章是计算机网络上机实验课的作业. 实验任务:利用 VMWare 搭建一个由 5 个主机组成的随机拓扑的网络.要求该网络中至少有 2 个子网,两个路由器 .实验的网络拓扑图如下: 网络中有两个路由 ...

  2. kalivm 虚拟机访问win文件夹_利用vmware搭建属于自己的win虚拟环境

    利用vmware搭建属于自己的win虚拟环境 前言 vmware是业界非常稳定且安全的桌面虚拟机软件,VMware虚拟机可让你在一台机器上同时运行二个或更多Windows.DOS.LINUX系统.在虚 ...

  3. 利用TensorFlow搭建CNN,DNN网络实现图像手写识别,总结。

    利用TensorFlow搭建CNN,DNN网络实现图像手写识别,总结. 摘要 一.神经网络与卷积网络的对比 1.数据处理 2.对获取到的数据进行归一化和独热编码 二.开始我们的tensorflow神经 ...

  4. 利用VMware搭建虚拟开发环境及VMware虚拟机上网

    局域网xp系统,VMware装linux 9, 局域网 xp自动获取IP:59.64.157.90, 启用 VMware Network AdapterVMnet8.设 IP: 59.64,157.2 ...

  5. vscode 新建cpp文件_利用vscode搭建c

    利用vscode搭建c/c++开发平台 Visualstudio是微软公司专为程序开发人员推出的开源代码编辑器,其具有跨平台,轻量化的特点,可作为轻量化的开发平台使用,通过配置设置,可作为LiteCo ...

  6. win10主题更换_利用termuxapi手机定时更换网络随机壁纸;免费申请小米收款宝

    1.再来发一个没有什么软用的教程,利用termux-api手机定时更换网络壁纸. 国产定制系统,有很多主题,更换随机壁纸也相对比较简单.但是对于原生或者类原生系统,如一加,索尼,诺基亚,pixel等等 ...

  7. 虚拟机局域网拓扑图_Hyper-V虚拟机常用网络拓扑结构

    一.虚拟机与虚拟机之间的相互通信(Host-Only,即专用网络) 二.虚拟机与宿主机(物理计算机)之间的相互通信(NAT,即内部网络) 三.虚拟机与宿主机所在的LAN(局域网)中的其他物理计算机之间 ...

  8. python共享文件权限_利用Python实现在同一网络中的本地文件共享方法

    本文利用Python3启动简单的HTTP服务器,以实现在同一网络中共享本地文件. 启动HTTP服务器 打开终端,转入目标文件所在文件夹,键入以下命令: $ cd /Users/zero/Documen ...

  9. 虚拟搭建局域网模拟器_利用Packet Tracer模拟器搭建小型企业局域网实验

    小型企业拓扑图 第一步:规划ip地址,已经规划好了 分别分成192.168.1.10/24192.168.2.10/24192.168.3.10/24这是PC机 第二步:给交换机配置IP地址,设置远程 ...

  10. linux 预览md文件_利用Tornado搭建文档预览系统

    在平时的工作或学习中,我们经常会接触不同格式的文档类型,比如txt,log,Offices文档,编程代码脚本,图片,视频等.本文将会介绍笔者的一个朴素想法,即把不同格式的文档都放在同一个平台中进行预览 ...

最新文章

  1. 人工智能对地球环境科学的推进
  2. 详解Java中的复合视图设计模式
  3. 【实用】面对枯燥的源码,如何才能看得下去?
  4. ArcGIS生成根据点图层生成等值面并减小栅格锯齿的操作步骤
  5. std::dynamic_pointer_cast细节用法
  6. freecplus框架-加载参数文件
  7. ctfshow-萌新-web6( 利用二进制绕过获取网站敏感信息)
  8. css3在线快速制作工具
  9. php 坏了怎么修复,winload.exe丢失或损坏怎么办
  10. 大数据项目实战-电商日志平台
  11. iOS 超好用的本地视频播放器推荐!
  12. 【Codecs系列】VP9码流结构和概述
  13. 五千字说清汽车基础软件及国产现状
  14. 宽带经常掉线应如何解决
  15. securitytube视频列表
  16. 给你一个二维整数数组 matrix,返回 matrix 的 转置矩阵
  17. 如何将多个excel合并成一个
  18. Ruoyi若依前后端分离框架【若依登录详细过程】
  19. vue2.0 webApp保存图片到相册
  20. atlas mysql_使用Atlas配置MySQL读写分离

热门文章

  1. 海豚选房获中视银宗基金300万元天使轮融资,专注司法拍房
  2. 太可怕了!人工智能逐渐取代客服?原因竟然是这个
  3. 接口收到CRC错包怎么处理
  4. 1 Apache启动失败,请检查相关配置 √MySQL5 1已启动 解决方案
  5. calibre +obok插件,解决从kobo上买的电子书的DRM问题
  6. 怦然心动(Flipped)-8
  7. 英特尔的指令集体系结构_Intel MIC初探(一):MIC架构及编程模型概览
  8. 云服务器流量是什么东西_云服务器带宽与流量都有什么关系?不限制流量服务器...
  9. linux下7z文件解压命令
  10. 第八章笔记[计算机网络]