(OK)(OK) Fedora23——NS3(MANETs)——Docker(busybox)——genymotion(android)——All is OK


(OK)(OK) Fedora23——NS3(MANETs)——Docker(busybox)——genymotion(android)——All is OK


+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
set genymotion android —— BEGIN
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

-----------
in HOST
-----------
tunctl -t tap-left
ip link set up dev tap-left
brctl addbr br-android
brctl addif br-android tap-left
ip link set up dev br-android
ip addr add 10.1.1.1/24 dev br-android
ip route add 10.1.1.0/24 dev br-android

-----------


[root@localhost genymotion]# pwd
/opt/genymobile/genymotion
[root@localhost genymotion]# ./genymotion

// Virtual Box > Settings > Network > Adapter 2 > bridge, br-android, then, to start android in genymotion window.


-----------
in Android
-----------
-------------------------------------
// in HOST
[root@localhost busybox]# adb push busybox-x86_64 /data
[root@localhost busybox]# adb shell

// in Android
root@vbox86p:/ # cd data/                                                      
chmod 755 busybox-x86_64
-------------------------------------
// in Android

netcfg eth1 down
./busybox-x86_64 ifconfig eth1 down
./busybox-x86_64 ifconfig eth1 10.1.1.2 netmask 255.255.255.0 up


// ./busybox-x86_64 ip addr add 10.1.1.2/24 dev eth1
// ./busybox-x86_64 ip route add default via 10.1.1.1 dev eth1

./busybox-x86_64 route -n
./busybox-x86_64 ifconfig
./busybox-x86_64 ping 10.1.1.2
-----------

-------------------------------------
ifconfig br-android down
brctl delif br-android tap-left
brctl delif br-android eth1
brctl delbr br-android
ifconfig tap-left down
tunctl -d tap-left
ip link delete veth_android44
ip link delete X
-------------------------------------

+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
set genymotion android —— END OK
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++




+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
set docker busybox —— BEGIN
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

[root@localhost ~]# mkdir /tmp/docker1

systemctl start docker.service
systemctl restart docker.service

cd /tmp/docker1

[root@localhost docker1]# docker run -it --rm --net='none' busybox /bin/sh

[root@localhost ~]# docker ps
CONTAINER ID     IMAGE      COMMAND      CREATED           STATUS          PORTS    NAMES
9d284828d3a4     busybox    "/bin/sh"    36 seconds ago    Up 35 seconds            loving_goldstine

//get PID of CONTAINER
[root@localhost ~]# docker inspect -f "{{.State.Pid}}" loving_goldstine
32701
[root@localhost ~]#

rm /var/run/netns/* -f
ln -s /proc/32701/ns/net /var/run/netns/32701

brctl addbr br-docker
tunctl -t tap-right
ifconfig tap-right 0.0.0.0 promisc up

ip link add veth_docker1 type veth peer name Y
brctl addif br-docker veth_docker1
ip link set veth_docker1 up
ip link set Y netns 32701

brctl addif br-docker tap-right
ifconfig br-docker up

brctl show

ip netns exec 32701 ip link set dev Y name eth0
ip netns exec 32701 ip link set eth0 up
ip netns exec 32701 ip addr add 10.1.1.1/24 dev eth0

cd /proc/sys/net/bridge
for f in bridge-nf-*; do echo 0 > $f; done
cd -



-------------------------------------
ifconfig br-docker down
brctl delif br-docker tap-right
brctl delbr br-docker
ifconfig tap-right down
tunctl -d tap-right
ip link delete veth_docker1
ip link delete Y
-------------------------------------

+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
set docker busybox —— END OK
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

-----------------------
running NS3
-----------------------
[root@localhost ~]# cd /opt/tools/network_simulators/ns3/ns-allinone-3.25/ns-3.25
[root@localhost ns-3.25]# ./waf --run scratch/manet-docker --vis

-----------------------
docker ping android
-----------------------
[root@localhost docker1]# docker run -it --rm --net='none' busybox /bin/sh
/ # ping 10.1.1.2
PING 10.1.1.2 (10.1.1.2): 56 data bytes
64 bytes from 10.1.1.2: seq=6 ttl=64 time=187.739 ms
64 bytes from 10.1.1.2: seq=7 ttl=64 time=92.091 ms
64 bytes from 10.1.1.2: seq=8 ttl=64 time=27.092 ms
64 bytes from 10.1.1.2: seq=9 ttl=64 time=29.086 ms

-----------------------
android ping docker
-----------------------
root@vbox86p:/data # ./busybox-x86_64 ping 10.1.1.1                            
PING 10.1.1.1 (10.1.1.1): 56 data bytes
64 bytes from 10.1.1.1: seq=0 ttl=64 time=75.287 ms
64 bytes from 10.1.1.1: seq=1 ttl=64 time=78.020 ms
64 bytes from 10.1.1.1: seq=2 ttl=64 time=91.383 ms
64 bytes from 10.1.1.1: seq=3 ttl=64 time=96.378 ms

+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
So far, All is OK
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

posted @ 2016-05-19 23:26  张同光  阅读(168)  评论(0编辑  收藏  举报