.. | .. |
---|
21 | 21 | [ -z "$CLONE_SKB" ] && CLONE_SKB="0" |
---|
22 | 22 | |
---|
23 | 23 | # Flow variation random source port between min and max |
---|
24 | | -UDP_MIN=9 |
---|
25 | | -UDP_MAX=109 |
---|
| 24 | +UDP_SRC_MIN=9 |
---|
| 25 | +UDP_SRC_MAX=109 |
---|
26 | 26 | |
---|
27 | 27 | # (example of setting default params in your script) |
---|
28 | 28 | if [ -z "$DEST_IP" ]; then |
---|
29 | 29 | [ -z "$IP6" ] && DEST_IP="198.18.0.42" || DEST_IP="FD00::1" |
---|
30 | 30 | fi |
---|
31 | 31 | [ -z "$DST_MAC" ] && DST_MAC="90:e2:ba:ff:ff:ff" |
---|
| 32 | +if [ -n "$DEST_IP" ]; then |
---|
| 33 | + validate_addr${IP6} $DEST_IP |
---|
| 34 | + read -r DST_MIN DST_MAX <<< $(parse_addr${IP6} $DEST_IP) |
---|
| 35 | +fi |
---|
| 36 | +if [ -n "$DST_PORT" ]; then |
---|
| 37 | + read -r UDP_DST_MIN UDP_DST_MAX <<< $(parse_ports $DST_PORT) |
---|
| 38 | + validate_ports $UDP_DST_MIN $UDP_DST_MAX |
---|
| 39 | +fi |
---|
32 | 40 | |
---|
33 | 41 | # General cleanup everything since last run |
---|
34 | 42 | pg_ctrl "reset" |
---|
.. | .. |
---|
58 | 66 | |
---|
59 | 67 | # Destination |
---|
60 | 68 | pg_set $dev "dst_mac $DST_MAC" |
---|
61 | | - pg_set $dev "dst$IP6 $DEST_IP" |
---|
| 69 | + pg_set $dev "dst${IP6}_min $DST_MIN" |
---|
| 70 | + pg_set $dev "dst${IP6}_max $DST_MAX" |
---|
| 71 | + |
---|
| 72 | + if [ -n "$DST_PORT" ]; then |
---|
| 73 | + # Single destination port or random port range |
---|
| 74 | + pg_set $dev "flag UDPDST_RND" |
---|
| 75 | + pg_set $dev "udp_dst_min $UDP_DST_MIN" |
---|
| 76 | + pg_set $dev "udp_dst_max $UDP_DST_MAX" |
---|
| 77 | + fi |
---|
62 | 78 | |
---|
63 | 79 | # Setup random UDP port src range |
---|
64 | 80 | pg_set $dev "flag UDPSRC_RND" |
---|
65 | | - pg_set $dev "udp_src_min $UDP_MIN" |
---|
66 | | - pg_set $dev "udp_src_max $UDP_MAX" |
---|
| 81 | + pg_set $dev "udp_src_min $UDP_SRC_MIN" |
---|
| 82 | + pg_set $dev "udp_src_max $UDP_SRC_MAX" |
---|
67 | 83 | done |
---|
68 | 84 | |
---|
69 | 85 | # start_run |
---|