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 |
// |