mininet测试实验-路由转发和联通测试实验

1. 使用vnc连接对应的虚拟机

地址 远程连接密码 账户 密码
172.20.4.91:5911 njnu01 stu1 stu1
172.20.4.91:5912 njnu02 stu2 stu2
172.20.4.91:5913 njnu03 stu3 stu3

2. 新建example.py文件,

#跳转到根目录
cd ~ 
#创建Project文件夹以存储实验文件
mkdir Project
#打开Project文件夹
cd Project/
#创建example.py

vim example.py

输入一下内容,无法输入的按一下“i”或者“ins”键,进入编辑模式

from mininet.net import Mininet
from mininet.link import TCLink
from mininet.cli import CLI
def main():
	net = Mininet(link=TCLink)
	h0 = net.addHost( 'h0' )
	h1 = net.addHost( 'h1' )
	h2 = net.addHost( 'h2' )
	r0 = net.addHost( 'r0')
	net.addLink(h0,r0,port1=0,port2=0,delay= '5ms' )
	net.addLink(h1,r0, port1=0,port2=1,delay= '3ms')
	net.addLink(h2,r0,port1=0, port2=2,delay= '3ms')
	net.start()
	CLI(net)
if __name__== '__main__':
	main()

输入完毕后,按Esc键,输入“:wq”,回车。
表示退出编辑模式,保存退出

3. 修改文件权限

sudo chmod 775 example.py

在这里插入图片描述
如果出现"[sudo] password for test:",则需输入账户的密码

4. 运行example.py文件,启动mininet。输入net命令查看配置的网络拓扑是否生效

sudo python example.py

在这里插入图片描述

net

在这里插入图片描述

5. 接下来开始配置每台主机的ip地址,使用xterm+主机名的命令打开每台主机的终端,利用ifconfig命令进行ip地址的配置

xterm h0 #打开h0的终端

mininet测试实验-路由转发和联通测试实验_第1张图片

ifconfig  #在h0终端中输入,查询h0的IP地址等信息 

mininet测试实验-路由转发和联通测试实验_第2张图片

xterm h1 #打开h1的终端

mininet测试实验-路由转发和联通测试实验_第3张图片

ifconfig  #在h1终端中输入,查询h1的IP地址等信息 

类似的打开h2,r0终端
mininet测试实验-路由转发和联通测试实验_第4张图片
修改主机h1地址为100.0.0.10

sudo ifconfig h1-eth0 100.0.0.10

mininet测试实验-路由转发和联通测试实验_第5张图片
修改主机h2地址为200.0.0.20

sudo ifconfig h2-eth0 200.0.0.20

mininet测试实验-路由转发和联通测试实验_第6张图片

修改路由器的eth0端口地址:10.0.0.100,eth1:100.0.0.1,eth2:200.0.0.1

sudo ifconfig r0-eth0 10.0.0.100
sudo ifconfig r0-eth1 100.0.0.1
sudo ifconfig r0-eth2 200.0.0.1

mininet测试实验-路由转发和联通测试实验_第7张图片

6. 此时用ping命令测试一下h0到h1和h2的联通性,发现显示网络不可达

#在h0终端输入
#每个人的IP地址可能不同,自己确认h0,h1,h2地址
ping 100.0.0.10 #h0到h1
ping 200.0.0.10 #h0到h2

mininet测试实验-路由转发和联通测试实验_第8张图片

7.对三台主机进行默认路由的配置
oute add命令的主要作用是加入静态路由,通常的格式是:
route ADD 157.0.0.0 MASK 255.0.0.0 157.55.80.1 METRIC 3 IF 2
參数含义:destination mask gateway metric interface /* 能够缩写 */
destination【网段地址】
mask【子网掩码】
gateway【网关地址】 gw
metric 【路由跳数】
if【port号】
route add 134.105.0.0 mask 255.255.0.0 134.105.64.1
意思是:所有须要发往134.105.0.0/16地址段的IP数据包。所有由134.105.64.1路径转发。

修改h0的网关为10.0.0.100

sudo route add default gw 10.0.0.100

mininet测试实验-路由转发和联通测试实验_第9张图片
修改h1的网关为100.0.0.1

sudo route add default gw 100.0.0.1

修改h2的网关为200.0.0.1

sudo route add default gw 200.0.0.1

8.开启r0主机作为路由器的ipv4路由转发功能

sudo sysctl net.ipv4.ip_forward=1

mininet测试实验-路由转发和联通测试实验_第10张图片
9. 配置完成,再次使用h0客户机去ping h1与h2服务器,发现已经可以ping通
mininet测试实验-路由转发和联通测试实验_第11张图片
mininet测试实验-路由转发和联通测试实验_第12张图片

你可能感兴趣的:(linux,网络,运维)