NistNet 配置安装
<DIV>CSDN <A href="http://blog.csdn.net/tryscan/archive/2008/02/02/2077746.aspx" target=_blank>http://blog.csdn.net/tryscan/archive/2008/02/02/2077746.aspx</A></DIV><DIV> </DIV>
<DIV>安装准备:</DIV>
<DIV>下载 nistnet.2.0.12b.tar.gz <A href="http://snad.ncsl.nist.gov/nistnet/" target=_blank>http://snad.ncsl.nist.gov/nistnet/</A></DIV>
<DIV> nistnet.2.0.12c.tar.gz <A href="http://snad.ncsl.nist.gov/nistnet/" target=_blank>http://snad.ncsl.nist.gov/nistnet/</A></DIV>
<DIV> (Nistnet是运行在linux平台下的,目前有2.0.12b和c两个版本,具体安装哪个版本要视linux内核而定,2.4.**以下的用b,2.6.**的用c,千万别安错了;kernel 2.6.*下问题比较多,不太好搞。)</DIV>
<DIV> </DIV>
<DIV>以下就以Red Had 9做个例子</DIV>
<DIV>一.安装系统</DIV>
<DIV> 安装有kernel 2.4.**的linux,硬盘如果够大,建议linxu模块全部安装,大约5G+;免的出错。</DIV>
<DIV>二.安装NISTnet</DIV>
<DIV>(1)安装NISTNET前重新生成新内核(因为NISTNET的新版本用RTC-real time clock,以前老版本用fast timer,RTC更稳定)</DIV>
<DIV> open CLI:</DIV>
<DIV> cd /usr/src/linux2.4.20-8 // kernel文档目录</DIV>
<DIV> make mrproper //删除不稳定的.O文件和.config配置文件</DIV>
<DIV> make menuconfig //调出修改内核工具</DIV>
<DIV> to make sure:</DIV>
<DIV> Loadable module support --></DIV>
<DIV> Set version information no all module symbols --off //又说按M键设置,本人在设置的时候用的N键</DIV>
<DIV> Character devices --></DIV>
<DIV> Enhanced Real Time Clock Suppot --M //按M键,设置</DIV>
<DIV> make dep //连接程序代码和函数库</DIV>
<DIV> make clean //删不必要的模块</DIV>
<DIV> make bzImage //生成内核文件</DIV>
<DIV> cp /usr/src/linux2.4.20-8/arch/i386/boot/bzImage /boot/vmlinuz-2.4.20-8_new //该步骤可能会提示用户“没有该目录…”,请检查所在目录,正确运用cp命令即可</DIV>
<DIV> make modules //编译外挂模块</DIV>
<DIV> make modules_install //安装编译完成的模块</DIV>
<DIV> make install //把新的内核和相关文件复制到正确的目录,并修改grub.conf文件,在grub 菜单会添加一个新的内核启动选项(也可以自己修改)</DIV>
<DIV>// ----------------------------------------------------------</DIV>
<DIV>mkinitrd /boot/initrd-2.4.20-8_new.img 2.4.20-8 </DIV>
<DIV> edit grub.conf (/boot/grub/grub.conf , add a new title and the root path) 编译启动文件(title Red Hat Linux (2.4.20-8 new)</DIV>
<DIV> root (hd0,0)</DIV>
<DIV> kernel /vmlinuz-2.4.20-8_new ro root= /dev/hda?</DIV>
<DIV> initrd /initrd-2.4.20-8_new.img</DIV>
<DIV>)</DIV>
<DIV>//-----------------------------------------------------------</DIV>
<DIV> Reboot </DIV>
<DIV> 注意:从新内核引导;当重启过程中出现让你选择kernel 的选项时要选择最新编译过的,就是最上面的那个。</DIV>
<DIV>(2)安装NISTNET</DIV>
<DIV> cd ~./NistNet //进入NistNet解压缩目录</DIV>
<DIV> ./configure</DIV>
<DIV> make </DIV>
<DIV> make install //安装完成,如果没有错误就下一步</DIV>
<DIV>(3)测试安装是否成功</DIV>
<DIV> cd ~./NistNet</DIV>
<DIV> ./Load nistnet </DIV>
<DIV> cnistnet –u //加载模块 &也可使用图像窗口,xnistnet –u</DIV>
<DIV> cnistnet –a 192.168.100.1 192.168.2.121 --drop 30 --delay 30 //进行丢包及延时设定</DIV>
<DIV> </DIV>
<DIV><BR>Clinet 一端:执ping操作(192.168.100.111 ping 192.168.2.121)</DIV>
<DIV> </DIV>
<DIV><BR>对比执行cnistnet –d 后的结果 //off该功能</DIV>
<DIV> </DIV>
<DIV><BR>显然执行cnistnet –a[]后,有了丢包及延时,说明测试ok!</DIV>
<DIV>有关NISTNET 的命令,执行cnistnet –h即可看到 //or 执行cnustnet也可显示</DIV>
<DIV> </DIV>
<DIV><BR># cnistnet -h</DIV>
<DIV>cnistnet: invalid option -- h</DIV>
<DIV>Usage: cnistnet <options> - must be root to run it.</DIV>
<DIV> -u up (on)</DIV>
<DIV> -d down (off)</DIV>
<DIV> -a src[:port[.protocol]] dest[:port[.prot]] add new</DIV>
<DIV> [--delay delay ]]</DIV>
<DIV> [--drop drop_percentage]</DIV>
<DIV> [--dup dup_percentage]</DIV>
<DIV> [--bandwidth bandwidth]</DIV>
<DIV> [--drd drdmin drdmax ]</DIV>
<DIV> -r src[:port[.prot]] dest[:port[.prot]] remove</DIV>
<DIV> -s src[:port[.prot]] dest[:port[.prot]] see stats</DIV>
<DIV> -S src[:port[.prot]] dest[:port[.prot]] see stats continuously</DIV>
<DIV> [-n] -R read table (-n numerical format)</DIV>
<DIV> -D value debug on (value=1 minimal, 9 maximal)</DIV>
<DIV> -U debug off</DIV>
<DIV> -G global stats</DIV>
<DIV> -K kickstart the clock</DIV>
<DIV> -F flush the queues</DIV>
<DIV> -h this help message</DIV>
<DIV>三.LINUX路由设置</DIV>
<DIV>我们的NISTNET已经安装OK!下面进行LINUX路由设置:</DIV>
<DIV>Linux环境下双网卡主机</DIV>
<DIV>(1)、环境:<BR>三台直接相连的计算机主机如图<BR>CLINET 1<------>NISTnet<------>CLINET 2<BR>其中NISTnet上有两块网卡eth0、eth1,分别与CLINET 1、CLINET 2相连</DIV>
<DIV>(2)、需求:<BR>将NISTnet配置为路由器模式,用来在CLINET 1、CLINET 2之间转发报文</DIV>
<DIV>(3)、方法:<BR>将三台主机按照环境所要求用交叉线直接连网后,为三台主机分配网段并配置IP地址。<BR>网段及IP地址分配如下:</DIV>
<DIV>------- --------------- ------------------ ------------------<BR>主机名 所在网段 分配IP 网关<BR>CLINET 1: 192.168.100.0/24 192.168.100.111/24 192.168.100.1</DIV>
<DIV>NISTnet: 192.168.100.0/24 eth1:192.168.100.1/24 eth0 <BR> 192.168.2.0/24 eth0:192.168.2.1/24 eth1 </DIV>
<DIV>CLINET 2: 192.168.2.0/24 192.168.2.121/24 192.168.2.1</DIV>
<DIV>-------------------------------------------------------------------------</DIV>
<DIV>按照上表所示分别将主机IP地址配置好,其中要注意的是,要想使NISTnet具有报文转发功能,</DIV>
<DIV>在NISTnet上检查/proc/sys/net/ipv4/ip_forward中的值是否为1<BR>命令:<BR>#cat /proc/sys/net/ipv4/ip_forward<BR>如果显示其值不为1而是0 输入以下命令:<BR>#echo 1 > /proc/sys/net/ipv4/ip_forward //打开IP转发功能<BR>打开包的转发功能通常情况执行以下步骤即可:</DIV>
<DIV> </DIV>
<DIV>#echo 1 > /proc/sys/net/ipv4/ip_forward //打开IP转发 </DIV>
<DIV>#iptables -t nat -F // 清除原有的nat表中的规则 </DIV>
<DIV>#iptables -F //清除原有的filter有中的规则</DIV>
<DIV>#iptables -P FORWARD ACCEPT //缺省允许IP转发 </DIV>
<DIV>#iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE //在公网出口进行地址伪装,这样即使以后公网地址修改了也不用重新设置规则。</DIV>
<DIV> </DIV>
页:
[1]