X-Git-Url: https://gerrit.onap.org/r/gitweb?a=blobdiff_plain;f=vnfs%2FvFW%2Fscripts%2Fv_packetgen_init.sh;h=b7f619dc9e59dd29b1305815c5dfff45276895f9;hb=HEAD;hp=3bbe02f2d4274400623822f0aee33e4df597f50a;hpb=8df4a643ae0d43a71e6e86c6be148386d99990ff;p=demo.git diff --git a/vnfs/vFW/scripts/v_packetgen_init.sh b/vnfs/vFW/scripts/v_packetgen_init.sh old mode 100644 new mode 100755 index 3bbe02f2..b7f619dc --- a/vnfs/vFW/scripts/v_packetgen_init.sh +++ b/vnfs/vFW/scripts/v_packetgen_init.sh @@ -1,5 +1,26 @@ #!/bin/bash +# Convert Network CIDR to Netmask +mask2cidr() { + nbits=0 + IFS=. + for dec in $1 ; do + case $dec in + 255) let nbits+=8;; + 254) let nbits+=7;; + 252) let nbits+=6;; + 248) let nbits+=5;; + 240) let nbits+=4;; + 224) let nbits+=3;; + 192) let nbits+=2;; + 128) let nbits+=1;; + 0);; + *) echo "Error: $dec is not recognized"; exit 1 + esac + done + echo "$nbits" +} + # Start VPP start vpp sleep 1 @@ -12,15 +33,19 @@ PROTECTED_NET_CIDR=$(cat /opt/config/protected_net_cidr.txt) FW_IPADDR=$(cat /opt/config/fw_ipaddr.txt) SINK_IPADDR=$(cat /opt/config/sink_ipaddr.txt) +IPADDR1_MASK=$(ifconfig eth1 | grep "Mask" | awk '{print $4}' | awk -F ":" '{print $2}') +IPADDR1_CIDR=$(mask2cidr $IPADDR1_MASK) + ifconfig eth1 down ifconfig eth1 hw ether $FAKE_HWADDR1 ip addr flush dev eth1 ifconfig eth1 up -vppctl tap connect tap111 hwaddr $HWADDR1 -vppctl set int ip address tap-0 $IPADDR1"/24" -vppctl set int state tap-0 up +vppctl create tap hw-addr $HWADDR1 +vppctl set int ip address tap0 $IPADDR1"/"$IPADDR1_CIDR +vppctl set int state tap0 up +vppctl loop create brctl addbr br0 -brctl addif br0 tap111 +brctl addif br0 tap0 brctl addif br0 eth1 ifconfig br0 up vppctl ip route add $PROTECTED_NET_CIDR via $FW_IPADDR @@ -49,14 +74,19 @@ vppctl exec /opt/pg_streams/stream_fw_udp9 vppctl exec /opt/pg_streams/stream_fw_udp10 sleep 1 +vppctl packet-generator enable +vppctl set int unnumbered pg0 use tap0 +vppctl set int state pg0 up + # Start HoneyComb -VERSION=$(cat /opt/config/artifacts_version.txt) +VERSION=$(cat /opt/config/demo_artifacts_version.txt) +mkdir -p /var/lib/honeycomb/persist/{config,context}/ echo "" > /var/lib/honeycomb/persist/context/data.json echo "" > /var/lib/honeycomb/persist/config/data.json -/opt/honeycomb/sample-distribution-$VERSION/honeycomb &>/dev/null &disown +/opt/honeycomb/honeycomb &>/dev/null &disown sleep 20 # Enable traffic flows cd /opt chmod +x run_traffic_fw_demo.sh -./run_traffic_fw_demo.sh &>/dev/null &disown +./run_traffic_fw_demo.sh &>/dev/null &disown \ No newline at end of file