Luca Prete | 8137ffc | 2016-08-16 11:53:45 -0700 | [diff] [blame] | 1 | #!/bin/bash |
| 2 | # sdnip-setup.sh |
| 3 | # |
| 4 | # Runs as sdnip user. |
| 5 | # |
| 6 | # Sets up the SDN-IP tutorial. |
| 7 | |
| 8 | export USER=sdnip |
| 9 | |
| 10 | echo "Creating SDN-IP tutorial" |
| 11 | |
| 12 | #--------------- Copy SDNIP code to home ----- |
| 13 | |
| 14 | cp -r /home/mininet/onos/tools/tutorials/sdnip /home/sdnip/ |
| 15 | cp -r /home/sdnip/sdnip/configs /home/sdnip/ |
| 16 | sudo -u mininet sh -c 'cp -r /home/sdnip/sdnip/configs/network-cfg.json /home/mininet/onos/tools/package/config' |
| 17 | |
| 18 | |
| 19 | #--------------- Add iptables rule for BGP-ONOS communication ----- |
| 20 | |
| 21 | echo "sudo iptables -A PREROUTING -t nat -i root-eth0 -p tcp --dport 2000 -j DNAT --to 10.0.3.11:2000 " >> /home/sdnip/.xprofile |
| 22 | |
| 23 | DESKTOP=/home/${USER}/Desktop |
| 24 | |
| 25 | mkdir -p ${DESKTOP} |
| 26 | |
| 27 | cat > ${DESKTOP}/ONOS << EOF |
| 28 | [Desktop Entry] |
| 29 | Encoding=UTF-8 |
| 30 | Type=Application |
| 31 | Name=ONOS |
| 32 | Name[en_US]=ONOS |
| 33 | Icon=konsole |
| 34 | Exec=/usr/bin/lxterminal -e '/home/mininet/apache-karaf-3.0.5/bin/client -u karaf -h 10.0.3.11' |
| 35 | Comment[en_US]= |
| 36 | EOF |
| 37 | |
| 38 | cat > "${DESKTOP}/SDN-IP Mininet" << EOF |
| 39 | [Desktop Entry] |
| 40 | Encoding=UTF-8 |
| 41 | Type=Application |
| 42 | Name=SDN-IP Mininet |
| 43 | Name[en_US]=SDN-IP Mininet |
| 44 | Icon=konsole |
| 45 | Exec=/usr/bin/lxterminal -e 'sudo mn --custom /home/sdnip/sdnip/tutorial.py --topo sdnip --controller remote,10.0.3.11 --nolistenport' |
| 46 | Comment[en_US]= |
| 47 | EOF |
| 48 | |
| 49 | cat > ${DESKTOP}/Tutorial << EOF |
| 50 | [Desktop Entry] |
| 51 | Encoding=UTF-8 |
| 52 | Type=Application |
| 53 | Name=SDN-IP Tutorial |
| 54 | Name[en_US]=SDN-IP Tutorial |
| 55 | Icon=internet-web-browser |
| 56 | Exec=/usr/bin/chromium-browser https://wiki.onosproject.org/display/ONOS/SDN-IP+Tutorial |
| 57 | Comment[en_US]= |
| 58 | EOF |
| 59 | |
| 60 | cat > ${DESKTOP}/GUI << EOF |
| 61 | [Desktop Entry] |
| 62 | Encoding=UTF-8 |
| 63 | Type=Application |
| 64 | Name=ONOS GUI |
| 65 | Name[en_US]=ONOS GUI |
| 66 | Icon=internet-web-browser |
| 67 | Exec=/usr/bin/chromium-browser http://10.0.3.11:8181/onos/ui/index.html#topo |
| 68 | Comment[en_US]= |
| 69 | EOF |
| 70 | |
| 71 | cat > ${DESKTOP}/Wireshark << EOF |
| 72 | [Desktop Entry] |
| 73 | Encoding=UTF-8 |
| 74 | Type=Application |
| 75 | Name=Wireshark |
| 76 | Name[en_US]=Wireshark |
| 77 | Icon=wireshark |
| 78 | Exec=/usr/bin/wireshark |
| 79 | Comment[en_US]= |
| 80 | EOF |
| 81 | |
| 82 | cat > ${DESKTOP}/Reset << EOF |
| 83 | [Desktop Entry] |
| 84 | Encoding=UTF-8 |
| 85 | Type=Application |
| 86 | Name=Reset |
| 87 | Name[en_US]=Reset |
| 88 | Icon=konsole |
| 89 | Exec=/usr/bin/lxterminal -t 'Resetting; please wait' -e '/bin/bash -c /home/mininet/reset-to-1.sh' |
| 90 | Comment[en_US]= |
| 91 | EOF |