本文主要是介绍NS3的半实物仿真实验 tap-wifi-dumbbell,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
tap-wifi-dumbbell本身可以在linux内部互通,但是如果与外部真实主机互通,
有三种方案:其中一种方案需要路由的支持,这里简单介绍一下我的实验。
拓扑图如下:
配置命令如下:
ip tuntap add dev tap0 mod tap
ifconfig tap0 10.1.1.1 up
ping 10.1.1.1
#linux设置主机路由,其中NS3中除了影子节点以外,任何一个都可以设置为网关,gw不能设置为10.1.1.1,该地址是一个桥设备
route add -net 10.1.1.0 netmask 255.255.255.0 dev tap0
route add -net 10.1.2.0 netmask 255.255.255.0 dev tap0 gw 10.1.1.2
route add -net 10.1.3.0 netmask 255.255.255.0 dev tap0 gw 10.1.1.2#windows 主机路由
route add 10.1.1.0 mask 255.255.255.0 192.168.198.129
route add 10.1.2.0 mask 255.255.255.0 192.168.198.129
更改原来的代码,并添加上一段简单的静态路由:
// Network topology
//
// +----------+
// | external |
// | Linux |
// | Host |
// | |
// | "mytap" |
// +----------+
// | n0 n3 n4
// | +--------+ +------------+ +------------+
// +-------| tap | | | | |
// | bridge | ... | | | |
// +--------+ +------------+ +------------+
// | Wifi | | Wifi | P2P |-----| P2P | CSMA |
// +--------+ +------+-----+ +-----+------+
// | | ^ |
// ((*)) ((*)) | |
// P2P 10.1.2 |
// ((*)) ((*)) | n5 n6 n7
// | | | | | |
// n1 n2 =========
这篇关于NS3的半实物仿真实验 tap-wifi-dumbbell的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!