网络模拟器WANem使用配置图文教程

转自:http://blog.csdn.net/zm_21/article/details/25810263

WANem简介

由于公司在一些场合需要模拟真实的网络环境,如时延,丢包,抖动等,虽然使用Linux下的TC也可以实现该功能,但是TC有着命令行界面不利于配置,使用桥接模式时不便于远程管理的缺陷,所以本着分享的精神,现在向大家推荐一款网络模拟工具——WANem。WANem全名为WAN emulator,是一个基于开源广域网络模拟器,其也是基于TC的,其主要功能如下:

  • 可以用来在局域网模拟广域网,包括带宽、时延、丢包、抖动
  • 高级功能有:随机复位连接、按概率发重复包、按概率使包乱序和按概率瞬时断开网络,按协议随机断开连接等,而且可以针对不同的协议,不同的主机,不同的网络甚至是不同的应用程序来模拟。

其优点如下:

  • WANem在单网卡设备上即可实现所有功能
  • WANem支持从光盘启动,不需要将它安装到硬盘也可使用,甚至可以运行于虚拟机上,此时桥接主机的网卡即可使用,非常方便
  • 支持完全图形化的界面配置,方便设置
  • 可以设置多条规则,不同规则不同用户使用互不干扰,方便用于集中式的测试环境
  • 仅需要调整路由表即可应用设置的规则

下载地址:http://wanem.sourceforge.net/

如下图为WANem的高级模式配置界面:

说明:

Packet Limit:用来设置包的队列大小,默认为1000,当队列超过1000时,超过的包将被丢弃

Symmetrical network:对称网络,选中为Yes的时候,应用网络的规则将在数据包来回的方向上都生效

Choose BW:从快速列表选择带宽

Specify BW:自定义带宽

Delay:延时,这里设置的是单向的延时。Jitter,抖动;Correlation,相关性,用来设置这个包的延迟时间与上一个包的时间的相关度

Loss:丢包率;Correlation,相关性,以一定的概率发生突发的大量的丢包,但平均丢包率不会超过Loss定义的值

Duplication:重包率,以一定概率生成某个包的多份拷贝,并按随机时间到达目标端。Correlation,相关性,类似Loss的

Packet reordering:包重排序率,按概率将包的顺序打乱,gap用来确定包重排序的个数,不设置更接近真实的环境

Corruption:错包率,按概率产生噪音,即格式错误的包

Idle timer Disconnect:空闲断开定时器,当网络空闲时,按设定的时间对Type定义的协议断开连接。

Random Disconnect:按Type随机断开,MTTF,平均失效前时间,用Low和High定义两个极值,MTTF,平均恢复前时间

IP source address:匹配的源IP地址

IP source subnet:源IP地址的子网

IP dest address:匹配的目标IP地址

IP dest subnet:匹配的目标IP地址的子网

Add a rule set:添加一条规则

Apply settings:应用设置。

  1. 从光盘引导WANem
  2. 将WANem的LiveCD放入光驱,并设置电脑从光盘驱动器启动,若使用虚拟机可以使用光盘镜像。

  3. 进入此界面后直接按回车进入系统引导,或者按F2、F3看系统高级参数

  4. 启动界面

  5. 当出现Do you want to configure all interfaces via DHCP(y/n)时,输入y将使所有接口通过DHCP来配置IP地址,输入n手动配置IP地址,并进入IP地址配置界面,如图。

  6. 接下来系统提示设置SSH的密码,这里SSH的用户名为:perc,密码自定义,为空时不能使用SSH

  7. 密码设置完成后便进入到了WANem的控制台,控制台提示符为:[email protected],而且登录Banner会提示WANem的配置地址为:http://<该机器的IP地址>/WANem ,输入state命令可查看所有接口信息,注意:该链接区分大小写,大小写不正确不能进入Web配置界面。

  8. 在WANem的控制台输入help可以获得帮助信息,如图。提供了一些命令,可以使用命令查看或设置系统的功能。
  9. 在WANem的控制台输入exit2shell可以进入到Linux的Shell,在此shell中可以使用Linux的命令,如如果不知道接口的IP地址,可以输入ipconfig –a来查看,本例中接口eth1的IP地址为192.168.0.44。如果要重新进入WANem控制台则在shell输入wanem即可。

  10. 通过web配置WANem
  11. 打开浏览器,输入WANem的管理地址http://<该机器的IP地址>/WANem,这里是http://192.168.0.44/WANem(注意大小写),即可登录WANem。

  12. 功能导航:
  • About:关于
  • WANalyer:广域网学习工具,通过学习到目标主机的丢包,时延,抖动,自动模拟该网络环境

  • Basic Mode:基本模式,只能设置带宽和时延

  • Advanced Mode:高级模式,可以设置复杂的网络规则,比如基于不同接口,不同主机,不同网段,甚至是不同应用程序的规则等

    选择接口

  • Save/Restore:备份和恢复数据

  • Help:帮助。

WANem处在网络中的位置

WANem的使用

使用WANem的大概过程是,首先在WANem创建网络规则,然后在待测试的设备上调整路由表,使待测试的设备的网络流量的默认下一跳为WANem即可。

配置实例

以下实例均处在如图所示的模拟的网络环境,假设WANem服务器所在的IP地址为192.168.3.54,对端设备IP为192.168.3.51。对设备的所有操作在重新启用网卡后会还原为默认设置,故不存在风险。

  1. Windows作为被测试机
  1. 假如我们要使Windows机器所有向外发(不同网段)的流量均产生上述模拟器所示的情况,我们只需要更改Windows的默认路由表,步骤如下
  • 首先删除默认路由:使用命令 route delete 0.0.0.0
  • 然后添加一条默认路由指向WANem:route add 0.0.0.0 mask 0.0.0.0 192.168.3.54
  • 这样后,所有发向不同网段的流量均会应用到上面定的网络规则。
  1. 假如我们要使Windows向指定主机应用上规则,以向主机192.168.3.51为例,步骤如下:
  • 添加一条到目录主机的路由表,该路由表的下一跳为WANem服务器:route add 192.168.3.51 mask 255.255.255.255 192.168.3.54
  • 这样即应用了该规则,如下实例图,你会发现这样的效果更接近实际情况

  1. Linux作为被测试机(类似Windows的情况,我只列出命令)
  1. 测试Linux所有向外发的流量
  • 添加默认路由即可:route add default gw 192.168.3.54
  1. 测试Linux向指定义机发的流量
  • 添加一条指向的路由即可:route add –host 192.168.3.51 gw 192.168.3.54
  1. IPPBX作为被测试机
  1. 测试IPPBX所有向外发的流量
  • 删掉默认路由(设原来的网关为192.168.0.1):routeDelete "0.0.0.0","192.168.0.1"
  • 添加默认路由(WANem的IP地址):routeAdd "0.0.0.0","192.168.3.54"
  1. 测试IPPBX向指定主机发的流量
  • 添加一条指定路由即可:routeAdd "192.168.3.51","192.168.3.54"
  1. IAD作为被测试机
  1. 测试IAD所有向外发的流量
  • 首先删掉默认路由:route delete default
  • 添加默认路由指向WANem:route add default 192.168.3.54
  1. 测试IAD向指定主机发的流量
  • route add 192.168.3.51 255.255.255.255 192.168.3.54

origin: http://blog.163.com/hlz_2599/blog/static/142378474201341342720443/

时间: 2024-10-26 07:19:49

网络模拟器WANem使用配置图文教程的相关文章

Zend Server 安装与配置图文教程

Zend Server是一款专业的PHP Web开发应用服务器,一些初次接触并使用此程序的朋友可能不太了解安装方法,本文为您提供了Zend Server 安装与配置图文教程,欢迎大家阅读,并提出自己的意见和问题,我们一起来学习! 首先要下载ZendServer软件 下载地址:http://www.zend.com/en/products/server/downloads 运行安装文件(ZendServer-CE-php-5.3.2-5.0.1-Windows_x86.exe)开始安装,选项请参照

MySQL5.7免安装版配置图文教程

MySQL5.7免安装版配置图文教程 更新时间:2017年09月06日 10:22:11   作者:吾刃之所向    我要评论 Mysql是一个比较流行且很好用的一款数据库软件,如下记录了我学习总结的mysql免安装版的配置经验,感兴趣的的朋友参考下吧 Mysql是一个比较流行且很好用的一款数据库软件,如下记录了我学习总结的mysql免安装版的配置经验. 一. 软件下载 5.7 32位https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.

Apache Tomcat下载、安装、配置图文教程

想安装一下ArcGIS Server,前提是安装Tomcat. 测试环境: 操作系统名称    Microsoft Windows 8.1 专业版 处理器    Intel(R) Core(TM) i7-4800MQ CPU @ 2.70GHz,2701 Mhz,4 个内核,8 个逻辑处理器 已安装的物理内存(RAM)    8.00 GB tomcat_百度百科 http://baike.baidu.com/link?url=MZj7EXAD_a3M0BimpzQpis_ttO6ovYXlRN

Jrebel6.3.3破解,配置图文教程

JRebel是个很好的开发工具,我在网上找了好久都没有找到很详细的教程,破解与配置教程千篇一律,步骤不详细.编写这篇教程,综合网络上的知识,加上了自己的理解与详细图文步骤. 安装 一般最新的插件是没有破解的,所以我们往往需要使用上一版本的软件.Jrebel旧版本下载地址:http://update.zeroturnaround.com/update-site-archive/ 建议在下载之前先去网络上下载好破解文件,如果破解版本与软件版本不统一,不知道能否破解成功哦. 我使用的版本为Jrebel

Tomcat安装与配置图文教程

安装Tomcat之前先配置JDK,JDK的JAVA_HOME变量都必须设置好,以便Tomcat找到JDK.关闭防火墙等. 一:安装版Tomcat 1. 先下载tomcat,到http://tomcat.apache.org/ 2. 注意,下载可以下载zip格式或exe格式的,其中zip格式的只要解压缩再配置下环境变量就可以使用了,就像绿色版的.我这里使用的是后者exe格式的,这个对于新手比较方便.本文介绍的是tomcat6.0的安装与配置教程. 3.下载好后如: 4.双击安装(注意:安装前应该先

Xen安全架构sHype/ACM策略配置图文教程

实验要求 1.     熟悉Xen虚拟化平台部署: 2.     Xen sHype/ACM安全架构中的Simple TE和Chinese Wall策略及事实上现机制的分析与验证. 第1章           Xen环境部署 1.1           版本号选择 因为Ubuntu使用广泛.软件包易于下载.我们选择Ubuntu系统进行Xen部署. 可选择的LTS系统例如以下[1]: 1)Ubuntu 10.04系统採用的是Linux 2.6.32内核,因为Linux 3.0下面内核不支持Xen[

Xen Server6.5安装配置图文教程

废话少说,直接上马 首先下载好xenserver6.5的iso镜像文件,物理机就刻盘安装,虚拟机就直接使用iso镜像安装 XenServer6.5下载地址:http://pan.baidu.com/s/1c00F9nE提取码:i2kf 1.安装界面 2.键盘模式选择默认-美式,ok 3.这里提醒你安装将清除磁盘信息,做好备份,ok 4.想什么呢,当然是Accept了 5.服务器的CPU没有开启虚拟化,请开启虚拟化后继续 6.选择安装在本地硬盘,第一项,ok 7.安装介质选择本地光盘,第一项,ok

阿里云服务器 FTP配置图文教程

1.添加FTP账号和密码. A. 选择“服务管理器”->“配置”->“本地用户和组”->“用户”:在空白处右键选择“新用户”: B. 输入用户名,全名和描述可以不填写:输入两遍密码:可以设置“用户不能修改密码”和“密码永不过期”:选择“创建”:密码必须含有字母,数字和下划线. 2. 打开Internet 服务(IIS)管理器,选择左侧连接中的“网站”,右键“添加FTP站点 3.输入FTP站点名称和FTP指向的路径:选择“下一步”: 4.绑定和SSL设置选择你希望开放的IP地址(默认选择全

PHP MemCached高级缓存配置图文教程

memcache是一个高性能的分布式的内存对象缓存系统,它能够用来存储各种格式的数据,包括图像.视频.文件以及数据库检索的结果等. 1.Memcache相关介绍 memcache是一个高性能的分布式的内存对象缓存系统,它能够用来存储各种格式的数据,包括图像.视频.文件以及数据库检索的结果等. 使用Memcache的网站一般流量都是比较大的,为了缓解数据库的压力,让Memcache作为一个缓存区域,把部分信息保存在内存中,在前端能够迅速的进行存取. 2.Memcache Win32的安装 (1)下