summaryrefslogtreecommitdiffstats
path: root/kud/tests/cFW/packetgen/init.sh
diff options
context:
space:
mode:
Diffstat (limited to 'kud/tests/cFW/packetgen/init.sh')
-rwxr-xr-xkud/tests/cFW/packetgen/init.sh58
1 files changed, 58 insertions, 0 deletions
diff --git a/kud/tests/cFW/packetgen/init.sh b/kud/tests/cFW/packetgen/init.sh
new file mode 100755
index 00000000..1df98424
--- /dev/null
+++ b/kud/tests/cFW/packetgen/init.sh
@@ -0,0 +1,58 @@
+#!/bin/bash
+# SPDX-license-identifier: Apache-2.0
+##############################################################################
+# Copyright (c) 2020
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+
+set -o pipefail
+set -o xtrace
+set -o errexit
+set -o nounset
+
+echo 'start... vpp'
+/usr/bin/vpp -c /etc/vpp/startup.conf
+echo 'wait vpp be up ...'
+until vppctl show ver; do
+ sleep 1;
+done
+
+# Configure VPP for vPacketGenerator
+nic=eth0
+ip_addr=$(ip addr show $nic | grep inet | awk '{print $2}')
+
+vppctl create host-interface name "$nic"
+vppctl set int state "host-$nic" up
+vppctl set int ip address "host-$nic" "$ip_addr"
+vppctl ip route add "$PROTECTED_NET_CIDR" via "$FW_IPADDR"
+
+vppctl loop create
+vppctl set int ip address loop0 11.22.33.1/24
+vppctl set int state loop0 up
+
+# Install packet streams
+for i in $(seq 1 10); do
+ cat <<EOL > "/opt/pg_streams/stream_fw_udp"
+packet-generator new {
+ name fw_udp$i
+ rate 10
+ node ip4-input
+ size 64-64
+ no-recycle
+ interface loop0
+ data {
+ UDP: ${ip_addr%/*} -> $SINK_IPADDR
+ UDP: 15320 -> 8080
+ length 128 checksum 0 incrementing 1
+ }
+}
+EOL
+ vppctl exec "/opt/pg_streams/stream_fw_udp"
+done
+vppctl packet-generator enable
+
+# Start HoneyComb
+/opt/honeycomb/honeycomb