- Vagrant
- Virtualbox
- of-controller
- of-switch
- NODE1-1
- NODE1-2
$ cd ccn/of-controller
$ vagrant up
$ vagrant ssh
$ cd /vagrant/ccn-router
$ ifconfig
write down eth0 ipv4 address
$ bundle
$ bundle exec rake db:migrate
$ bundle exec rake trema:run
$ cd ccn/of-switch
$ vagrant up
$ vagrant ssh
$ sudo ovs-vsctl add-br ovsbr1
$ sudo ovs-vsctl set-controller ovsbr1 tcp:192.168.xxx.xxx:6653
$ sudo ovs-vsctl set bridge ovsbr1 protocols=OpenFlow10
$ sudo ovs-vsctl set-fail-mode ovsbr1 secure
at of-switch
$ cd ccn/of-switch
$ vagrant ssh
$ sudo mkdir -p /etc/lxc/ovs_if{up, down}
$ sudo vi /etc/lxc/ovs_ifup/ovsbr1
--------
#!/bin/bash
ifconfig $5 0.0.0.0 up
ovs-vsctl add-port ovsbr1 $5
--------
$ sudo vi /etc/lxc/ovs_ifdown/ovsbr1
--------
#!/bin/bash
ifdown $5
ovs-vsctl del-port ovsbr1 $5
--------
$ sudo chmod +x /etc/lxc/ovs_if*/ovsbr1
$ vi /tmp/lxc_config
--------
lxc.network.type=veth
lxc.network.name=eth0
lxc.network.link=lxcbr0
lxc.network.flags=up
lxc.network.script.up=/etc/lxc/ovs_ifup/ovsbr1
lxc.network.script.down=/etc/lxc/ovs_ifdown/ovsbr1
--------
$ sudo lxc-create -n NODE1 -t ubuntu -f /tmp/lxc_config
$ sudo lxc-start -n NODE1
at NODE1
$ sudo lxc-console -n NODE1
login: ubuntu
password: ubuntu
$ sudo apt-get update
$ sudo apt-get install -y git ruby-dev vim
$ sudo gem i parallel
$ git clone https://github.com/tsub/ccn_client_server.git -b master
$ exit
at of-switch
$ sudo lxc-stop -n NODE1
$ sudo lxc-clone NODE1 NODE1-1
$ sudo lxc-clone NODE1 NODE1-2
$ sudo su
$ vi /var/lib/lxc/NODE1-1/config
--------
- lxc.network.link=lxcbr0
+ lxc.network.ipv4=192.168.11.2
--------
$ vi /var/lib/lxc/NODE1-1/rootfs/etc/network/interfaces
--------
- iface eth0 inet dhcp
+ iface eth0 inet static
+ address 192.168.11.2
+ netmask 255.255.255.0
--------
$ vi /var/lib/lxc/NODE1-2/config
--------
- lxc.network.link=lxcbr0
+ lxc.network.ipv4=192.168.11.3
--------
$ vi /var/lib/lxc/NODE1-2/rootfs/etc/network/interfaces
--------
- iface eth0 inet dhcp
+ iface eth0 inet static
+ address 192.168.11.3
+ netmask 255.255.255.0
--------
$ exit
$ sudo lxc-start -n NODE1-1
$ sudo lxc-start -n NODE1-2
$ sudo lxc-console -n NODE1-1
login: ubuntu
password: ubuntu
$ cd ccn_client_server
$ echo hogehoge >> public/hoge.txt
$ ruby udp_server.rb
$ sudo lxc-console -n NODE1-2
login: ubuntu
password: ubuntu
$ cd ccn_client_server
$ mkdir downloads
$ ruby udp_client.rb <content_name>