diff options
author | 2017-08-15 18:08:34 +0000 | |
---|---|---|
committer | 2017-08-15 18:08:34 +0000 | |
commit | 6eb5e72e6cf45445615586a09815fb00ed02c294 (patch) | |
tree | ae23bc23bcfe7aa3340e56b451d20b581455dcd8 /vnfs/vLB/scripts/v_packetgen_for_dns_demo_init.sh | |
parent | b751e0c1e570666d43a825f4807e0ae73100309a (diff) | |
parent | a445ef826ac13e271f89f3e6b221df2d0be3d623 (diff) |
Merge "Update vLB to Ubuntu 1604 and VPP 1707"
Diffstat (limited to 'vnfs/vLB/scripts/v_packetgen_for_dns_demo_init.sh')
-rw-r--r-- | vnfs/vLB/scripts/v_packetgen_for_dns_demo_init.sh | 43 |
1 files changed, 19 insertions, 24 deletions
diff --git a/vnfs/vLB/scripts/v_packetgen_for_dns_demo_init.sh b/vnfs/vLB/scripts/v_packetgen_for_dns_demo_init.sh index 9e7879bc..86f0b00f 100644 --- a/vnfs/vLB/scripts/v_packetgen_for_dns_demo_init.sh +++ b/vnfs/vLB/scripts/v_packetgen_for_dns_demo_init.sh @@ -1,7 +1,7 @@ #!/bin/bash # Start VPP -start vpp +systemctl start vpp sleep 1 # Compute the network CIDR from the Netmask @@ -25,51 +25,45 @@ mask2cidr() { echo "$nbits" } -IPADDR1_MASK=$(ifconfig eth0 | grep "Mask" | awk '{print $4}' | awk -F ":" '{print $2}') +IPADDR1_MASK=$(ifconfig eth1 | grep "Mask" | awk '{print $4}' | awk -F ":" '{print $2}') IPADDR1_CIDR=$(mask2cidr $IPADDR1_MASK) # Configure VPP for vPacketGenerator -IPADDR1=$(ifconfig eth0 | grep "inet addr" | tr -s ' ' | cut -d' ' -f3 | cut -d':' -f2) -HWADDR1=$(ifconfig eth0 | grep HWaddr | tr -s ' ' | cut -d' ' -f5) +IPADDR1=$(ifconfig eth1 | grep "inet addr" | tr -s ' ' | cut -d' ' -f3 | cut -d':' -f2) +HWADDR1=$(ifconfig eth1 | grep HWaddr | tr -s ' ' | cut -d' ' -f5) FAKE_HWADDR1=$(echo -n 00; dd bs=1 count=5 if=/dev/urandom 2>/dev/null | hexdump -v -e '/1 ":%02X"') VLB_IPADDR=$(cat /opt/config/vlb_ipaddr.txt) GW=$(route -n | grep "^0.0.0.0" | awk '{print $2}') -ifconfig eth0 down -ifconfig eth0 hw ether $FAKE_HWADDR1 -ip addr flush dev eth0 -ifconfig eth0 up +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"/"$IPADDR1_CIDR vppctl set int state tap-0 up brctl addbr br0 brctl addif br0 tap111 -brctl addif br0 eth0 +brctl addif br0 eth1 ifconfig br0 up vppctl ip route add 0.0.0.0/0 via $GW sleep 1 - # Set br0 with public IP and valid MAC so that Linux will have public network access ifconfig br0 hw ether $HWADDR1 ifconfig br0 $IPADDR1 netmask $IPADDR1_MASK route add default gw $GW #Adding static arp entry for VPP so that it will be able to send packets to default GW -ping -c 1 $VLB_IPADDR &>/dev/null &disown -sleep 3 +while [ $(ping -c 1 $VLB_IPADDR | grep received | cut -d" " -f4) != 1 ]; +do + echo "Wait"; + sleep 1; +done -GW_MAC=$(arp -n | grep -w $GW | tr -s ' ' | cut -d' ' -f3) +sleep 3 VLB_MAC=$(arp -n | grep -w $VLB_IPADDR | tr -s ' ' | cut -d' ' -f3) - -# If VLB is in our network, we will use its MAC -if [ ! -z "$VLB_MAC" ] -then - vppctl set ip arp tap-0 $VLB_IPADDR $VLB_MAC -fi - -# Add arp entry for default GW -vppctl set ip arp tap-0 $GW $GW_MAC +vppctl set ip arp tap-0 $VLB_IPADDR $VLB_MAC # Install packet streams sed -i -e "0,/UDP/ s/UDP:.*/UDP: "$IPADDR1" -> "$VLB_IPADDR"/" /opt/dns_streams/stream_dns1 @@ -104,6 +98,8 @@ vppctl exec /opt/dns_streams/stream_dns7 vppctl exec /opt/dns_streams/stream_dns8 vppctl exec /opt/dns_streams/stream_dns9 vppctl exec /opt/dns_streams/stream_dns10 + +vppctl set int ip address pg0 $(cat /opt/config/pg_int.txt)"/"$IPADDR1_CIDR sleep 1 # Start HoneyComb @@ -116,5 +112,4 @@ sleep 20 # Enable traffic flows cd /opt chmod +x run_streams_dns.sh -./run_streams_dns.sh &>/dev/null &disown - +./run_streams_dns.sh &>/dev/null &disown
\ No newline at end of file |