set int ip address loop0 2001:db01::1/64
set int state loop0 up
-packet-generator new {
- name ip4
- limit 100
- rate 0
- size 128-128
- interface loop0
- node adl-input
- data { IP4: 1.2.40 -> 3cfd.fed0.b6c8
- UDP: 192.168.1.2-192.168.1.10 -> 192.168.2.1
- UDP: 1234 -> 2345
- incrementing 114
- }
+packet-generator new { \
+ name ip4 \
+ limit 100 \
+ rate 0 \
+ size 128-128 \
+ interface loop0 \
+ node adl-input \
+ data { IP4: 1.2.40 -> 3cfd.fed0.b6c8 \
+ UDP: 192.168.1.2-192.168.1.10 -> 192.168.2.1 \
+ UDP: 1234 -> 2345 \
+ incrementing 114 \
+ } \
}
-packet-generator new {
- name ip6-allow
- limit 50
- rate 0
- size 128-128
- interface loop0
- node adl-input
- data { IP6: 1.2.40 -> 3cfd.fed0.b6c8
- UDP: 2001:db01::2 -> 2001:db01::1
- UDP: 1234 -> 2345
- incrementing 80
- }
+packet-generator new { \
+ name ip6-allow \
+ limit 50 \
+ rate 0 \
+ size 128-128 \
+ interface loop0 \
+ node adl-input \
+ data { IP6: 1.2.40 -> 3cfd.fed0.b6c8 \
+ UDP: 2001:db01::2 -> 2001:db01::1 \
+ UDP: 1234 -> 2345 \
+ incrementing 80 \
+ } \
}
-packet-generator new {
- name ip6-drop
- limit 50
- rate 0
- size 128-128
- interface loop0
- node adl-input
- data { IP6: 1.2.40 -> 3cfd.fed0.b6c8
- UDP: 2001:db01::3 -> 2001:db01::1
- UDP: 1234 -> 2345
- incrementing 80
- }
+packet-generator new { \
+ name ip6-drop \
+ limit 50 \
+ rate 0 \
+ size 128-128 \
+ interface loop0 \
+ node adl-input \
+ data { IP6: 1.2.40 -> 3cfd.fed0.b6c8 \
+ UDP: 2001:db01::3 -> 2001:db01::1 \
+ UDP: 1234 -> 2345 \
+ incrementing 80 \
+ } \
}
ip table 1
-packet-generator new {
- name cdp
- limit 1
- node cdp-input
- size 374-374
- data { hex 0x02b46b96000100096978676265000500bf436973636f20494f5320536f6674776172652c2043333735304520536f66747761726520284333373530452d554e4956455253414c2d4d292c2056657273696f6e2031322e32283335295345352c2052454c4541534520534f4654574152452028666331290a436f707972696768742028632920313938362d3230303720627920436973636f2053797374656d732c20496e632e0a436f6d70696c6564205468752031392d4a756c2d30372031363a3137206279206e616368656e00060018636973636f2057532d4333373530452d3234544400020011000000010101cc0004000000000003001b54656e4769676162697445746865726e6574312f302f3100040008000000280008002400000c011200000000ffffffff010221ff000000000000001e7a50f000ff000000090004000a00060001000b0005010012000500001300050000160011000000010101cc000400000000001a00100000000100000000ffffffff }
+packet-generator new { \
+ name cdp \
+ limit 1 \
+ node cdp-input \
+ size 374-374 \
+ data { hex 0x02b46b96000100096978676265000500bf436973636f20494f5320536f6674776172652c2043333735304520536f66747761726520284333373530452d554e4956455253414c2d4d292c2056657273696f6e2031322e32283335295345352c2052454c4541534520534f4654574152452028666331290a436f707972696768742028632920313938362d3230303720627920436973636f2053797374656d732c20496e632e0a436f6d70696c6564205468752031392d4a756c2d30372031363a3137206279206e616368656e00060018636973636f2057532d4333373530452d3234544400020011000000010101cc0004000000000003001b54656e4769676162697445746865726e6574312f302f3100040008000000280008002400000c011200000000ffffffff010221ff000000000000001e7a50f000ff000000090004000a00060001000b0005010012000500001300050000160011000000010101cc000400000000001a00100000000100000000ffffffff } \
}
set term pag off
-packet-generator new {
- name worker0
- worker 0
- limit 12
- rate 1.2e7
- size 128-128
- interface local0
- node ethernet-input
- data { IP4: 1.2.40 -> 3cfd.fed0.b6c8
- UDP: 192.168.40.1 - 192.168.40.100 -> 192.168.50.10
- UDP: 1234 -> 2345
- incrementing 114
- }
+packet-generator new { \
+ name worker0 \
+ worker 0 \
+ limit 12 \
+ rate 1.2e7 \
+ size 128-128 \
+ interface local0 \
+ node ethernet-input \
+ data { IP4: 1.2.40 -> 3cfd.fed0.b6c8 \
+ UDP: 192.168.40.1 - 192.168.40.100 -> 192.168.50.10 \
+ UDP: 1234 -> 2345 \
+ incrementing 114 \
+ } \
}
-packet-generator new {
- name worker1
- worker 1
- limit 12
- rate 1.2e7
- size 128-128
- interface local0
- node ethernet-input
- data { IP4: 1.2.4 -> 3cfd.fed0.b6c9
- UDP: 192.168.41.1 - 192.168.41.100 -> 192.168.51.10
- UDP: 1234 -> 2345
- incrementing 114
- }
+packet-generator new { \
+ name worker1 \
+ worker 1 \
+ limit 12 \
+ rate 1.2e7 \
+ size 128-128 \
+ interface local0 \
+ node ethernet-input \
+ data { IP4: 1.2.4 -> 3cfd.fed0.b6c9 \
+ UDP: 192.168.41.1 - 192.168.41.100 -> 192.168.51.10 \
+ UDP: 1234 -> 2345 \
+ incrementing 114 \
+ } \
}
trace add pg-input 20
comment { Packet generator script. Src MAC 00:de:ad:be:ef:01 }
comment { Dst mac 01:ba:db:ab:be:01 ethtype 0800 }
-packet-generator new {
- name simple
- limit 1
- size 128-128
- interface loop0
- node vrrp
- data {
- hex 0x00deadbeef0001badbabbe010800
- incrementing 30
- }
+packet-generator new { \
+ name simple \
+ limit 1 \
+ size 128-128 \
+ interface loop0 \
+ node vrrp \
+ data { \
+ hex 0x00deadbeef0001badbabbe010800 \
+ incrementing 30 \
+ } \
}
-packet-generator new {
- name x
- limit 1
- node ip4-input
- size 64-64
- data {
- ICMP: 1.0.0.2 -> 2.0.0.2
- ICMP echo_request
- incrementing 100
- }
+packet-generator new { \
+ name x \
+ limit 1 \
+ node ip4-input \
+ size 64-64 \
+ data { \
+ ICMP: 1.0.0.2 -> 2.0.0.2 \
+ ICMP echo_request \
+ incrementing 100 \
+ } \
}
trace add pg-input 100
-packet-generator new {
- name x
- limit 1
- node ip4-input
- size 64-64
- data {
- ICMP: 1.0.0.2 -> 2.2.2.2
- ICMP echo_request
- incrementing 100
- }
+packet-generator new { \
+ name x \
+ limit 1 \
+ node ip4-input \
+ size 64-64 \
+ data { \
+ ICMP: 1.0.0.2 -> 2.2.2.2 \
+ ICMP echo_request \
+ incrementing 100 \
+ } \
}
loop create
-packet-generator new {
- name x
- limit 1
- node ip6-input
- size 64-64
- data {
- ICMP6: 2000::2 -> 2001::2
- ICMP echo_request
- incrementing 100
- }
+packet-generator new { \
+ name x \
+ limit 1 \
+ node ip6-input \
+ size 64-64 \
+ data { \
+ ICMP6: 2000::2 -> 2001::2 \
+ ICMP echo_request \
+ incrementing 100 \
+ } \
}
tr add pg-input 100
set int state tuntap-0 down
set int ip address GigabitEthernet2/1/0 1.2.3.4/24
-set int state GigabitEthernet2/1/0 up
-cre sub GigabitEthernet2/1/0 1 dot1q 7
+set int state GigabitEthernet2/1/0 up
+cre sub GigabitEthernet2/1/0 1 dot1q 7
set int state GigabitEthernet2/1/0.1 up
set int state GigabitEthernet2/2/0 up
-cre sub GigabitEthernet2/2/0 1 dot1q 9
+cre sub GigabitEthernet2/2/0 1 dot1q 9
set int state GigabitEthernet2/2/0.1 up
set int l2 bridge GigabitEthernet2/2/0.1 0
set int l2 tag-rewrite GigabitEthernet2/1/0.1 pop 1
-set int l2 tag-rewrite GigabitEthernet2/2/0.1 pop 1
+set int l2 tag-rewrite GigabitEthernet2/2/0.1 pop 1
l2fib add 00:22:44:06:08:0a 0 GigabitEthernet2/1/0.1 static
l2fib add 00:02:04:06:08:0a 0 GigabitEthernet2/2/0.1 static
cle int
cle run
-packet-generator new {
- name bvi_to_l2
- limit 100
- node ethernet-input
- interface GigabitEthernet2/1/0
- data {
- IP4: 0050.56b7.7c83 -> 0050.56b7.296d
- GRE: 1.2.3.3 -> 8.0.0.1 mpls_unicast
+packet-generator new { \
+ name bvi_to_l2 \
+ limit 100 \
+ node ethernet-input \
+ interface GigabitEthernet2/1/0 \
+ data { \
+ IP4: 0050.56b7.7c83 -> 0050.56b7.296d \
+ GRE: 1.2.3.3 -> 8.0.0.1 mpls_unicast \
}
}
-packet-generator new {
- name l2_to_bvi
- limit 50
- node ethernet-input
- interface GigabitEthernet2/2/0
- data {
- IP4: 0050.56b7.7c83 -> dead.0000.0000 vlan 9
- GRE: 8.0.0.1 -> 1.2.3.3 mpls_unicast
- }
+packet-generator new { \
+ name l2_to_bvi \
+ limit 50 \
+ node ethernet-input \
+ interface GigabitEthernet2/2/0 \
+ data { \
+ IP4: 0050.56b7.7c83 -> dead.0000.0000 vlan 9 \
+ GRE: 8.0.0.1 -> 1.2.3.3 mpls_unicast \
+ } \
}
-packet-generator new {
- name l2_to_bvi_via_flood
- limit 25
- node ethernet-input
- interface GigabitEthernet2/2/0
- data {
- IP4: 0050.56b7.7c83 -> ffff.ffff.ffff vlan 9
- GRE: 8.0.0.1 -> 1.2.3.3 mpls_unicast
- }
+packet-generator new { \
+ name l2_to_bvi_via_flood \
+ limit 25 \
+ node ethernet-input \
+ interface GigabitEthernet2/2/0 \
+ data { \
+ IP4: 0050.56b7.7c83 -> ffff.ffff.ffff vlan 9 \
+ GRE: 8.0.0.1 -> 1.2.3.3 mpls_unicast \
+ } \
}
ip route add 192:168:3::0/64 via gre1
set int state gre1 up
-packet-generator new {
- name gre4-tx
- limit -1
- node ip4-input
- size 64-64
- interface pg0
- data {
- UDP: 192.168.1.2 -> 192.168.3.1
- UDP: 4321 -> 1234
- length 128 checksum 0 incrementing 1
- }
+packet-generator new { \
+ name gre4-tx \
+ limit -1 \
+ node ip4-input \
+ size 64-64 \
+ interface pg0 \
+ data { \
+ UDP: 192.168.1.2 -> 192.168.3.1 \
+ UDP: 4321 -> 1234 \
+ length 128 checksum 0 incrementing 1 \
+ } \
}
-packet-generator new {
- name gre4-rx
- limit -1
- node ip6-input
- size 72-72
- interface pg1
- data {
- GRE: 192:168:2::2 -> 192:168:2::1
- ip4
- UDP: 192.168.3.1 -> 192.168.1.2
- UDP: 1234 -> 4321
- length 128 checksum 0 incrementing 1
- }
+packet-generator new { \
+ name gre4-rx \
+ limit -1 \
+ node ip6-input \
+ size 72-72 \
+ interface pg1 \
+ data { \
+ GRE: 192:168:2::2 -> 192:168:2::1 \
+ ip4 \
+ UDP: 192.168.3.1 -> 192.168.1.2 \
+ UDP: 1234 -> 4321 \
+ length 128 checksum 0 incrementing 1 \
+ } \
}
-packet-generator new {
- name gre6-tx
- limit -1
- node ip6-input
- size 64-64
- interface pg0
- data {
- UDP: 192:168:1::2 -> 192:168:3::1
- UDP: 4321 -> 1234
- length 128 checksum 0 incrementing 1
- }
+packet-generator new { \
+ name gre6-tx \
+ limit -1 \
+ node ip6-input \
+ size 64-64 \
+ interface pg0 \
+ data { \
+ UDP: 192:168:1::2 -> 192:168:3::1 \
+ UDP: 4321 -> 1234 \
+ length 128 checksum 0 incrementing 1 \
+ } \
}
-packet-generator new {
- name gre6-rx
- limit -1
- node ip4-input
- size 72-72
- interface pg1
- data {
- GRE: 192.168.2.2 -> 192.168.2.1
- ip6
- UDP: 192:168:3::1 -> 192:168:1::2
- UDP: 1234 -> 4321
- length 128 checksum 0 incrementing 1
- }
+packet-generator new { \
+ name gre6-rx \
+ limit -1 \
+ node ip4-input \
+ size 72-72 \
+ interface pg1 \
+ data { \
+ GRE: 192.168.2.2 -> 192.168.2.1 \
+ ip6 \
+ UDP: 192:168:3::1 -> 192:168:1::2 \
+ UDP: 1234 -> 4321 \
+ length 128 checksum 0 incrementing 1 \
+ } \
}
packet-generator enable
set int l2 xconnect pg0 gre0
set int l2 xconnect gre0 pg0
-packet-generator new {
- name tx
- limit -1
- node ethernet-input
- size 64-64
- interface pg0
- data {
- 0x8881: 4:4:4:4:4:4 -> 5:5:5:5:5:5
- incrementing 100
- }
+packet-generator new { \
+ name tx \
+ limit -1 \
+ node ethernet-input \
+ size 64-64 \
+ interface pg0 \
+ data { \
+ 0x8881: 4:4:4:4:4:4 -> 5:5:5:5:5:5 \
+ incrementing 100 \
+ } \
}
-packet-generator new {
- name rx
- limit -1
- node ip4-input
- size 72-72
- interface pg1
- data {
- GRE: 192.168.2.2 -> 192.168.2.1
- teb
- 0x8881: 4:4:4:4:4:4 -> 5:5:5:5:5:5
- incrementing 100
- }
+packet-generator new { \
+ name rx \
+ limit -1 \
+ node ip4-input \
+ size 72-72 \
+ interface pg1 \
+ data { \
+ GRE: 192.168.2.2 -> 192.168.2.1 \
+ teb \
+ 0x8881: 4:4:4:4:4:4 -> 5:5:5:5:5:5 \
+ incrementing 100 \
+ } \
}
packet-generator enable
-packet-generator new {
- name x
- limit 1
- node ip4-input
- size 64-64
- data {
- ICMP: 1.2.3.4 -> 5.6.7.8
- ICMP echo_request
- incrementing 100
- }
+packet-generator new { \
+ name x \
+ limit 1 \
+ node ip4-input \
+ size 64-64 \
+ data { \
+ ICMP: 1.2.3.4 -> 5.6.7.8 \
+ ICMP echo_request \
+ incrementing 100 \
+ } \
}
tr add pg-input 100
-packet-generator new {
- name x
- limit 1
- node ip6-input
- size 64-64
- data {
- ICMP6: ::1 -> ::2
- ICMP echo_request
- incrementing 100
- }
+packet-generator new { \
+ name x \
+ limit 1 \
+ node ip6-input \
+ size 64-64 \
+ data { \
+ ICMP6: ::1 -> ::2 \
+ ICMP echo_request \
+ incrementing 100 \
+ } \
}
tr add pg-input 100
-packet-generator new {
- name x
- limit 1
- node ip4-lookup
- size 50-50
- data {
- ICMP: 1.0.0.1 -> 1.0.0.3 ttl 1
- incrementing 30
- }
+packet-generator new { \
+ name x \
+ limit 1 \
+ node ip4-lookup \
+ size 50-50 \
+ data { \
+ ICMP: 1.0.0.1 -> 1.0.0.3 ttl 1 \
+ incrementing 30 \
+ } \
}
comment { tr add pg-input 100 }
-packet-generator new {
- name x
- limit 1
- node ethernet-input
- size 64-64
- data {
- IP6: 1.2.3 -> 4.5.6
- ICMP: 3002::2 -> 3001::2
- ICMP echo_request
- incrementing 100
- }
+packet-generator new { \
+ name x \
+ limit 1 \
+ node ethernet-input \
+ size 64-64 \
+ data { \
+ IP6: 1.2.3 -> 4.5.6 \
+ ICMP: 3002::2 -> 3001::2 \
+ ICMP echo_request \
+ incrementing 100 \
+ } \
}
tap connect tap0
set int state tap-0 up
set int ip address tap-0 1::1/64
-packet-generator new {
- name hbh1
- limit 1
- node ip6-input
- size 48-48
- data {
- IP6_HOP_BY_HOP_OPTIONS: 1::2 -> 1::2
- hex 0x3B00010403040506
- incrementing 100
- }
+packet-generator new { \
+ name hbh1 \
+ limit 1 \
+ node ip6-input \
+ size 48-48 \
+ data { \
+ IP6_HOP_BY_HOP_OPTIONS: 1::2 -> 1::2 \
+ hex 0x3B00010403040506 \
+ incrementing 100 \
+ } \
}
-packet-generator new {
- name hbh2
- limit 1
- node ip6-input
- size 48-48
- data {
- IP6_HOP_BY_HOP_OPTIONS: 1::2 -> 1::2
- hex 0x3B00C10403040506
- incrementing 100
- }
+packet-generator new { \
+ name hbh2 \
+ limit 1 \
+ node ip6-input \
+ size 48-48 \
+ data { \
+ IP6_HOP_BY_HOP_OPTIONS: 1::2 -> 1::2 \
+ hex 0x3B00C10403040506 \
+ incrementing 100 \
+ } \
}
-packet-generator new {
- name hbh3
- limit 1
- node ip6-input
- size 48-48
- data {
- IP6_HOP_BY_HOP_OPTIONS: 1::2 -> 1::2
- hex 0x3BffC10403040506
- incrementing 100
- }
+packet-generator new { \
+ name hbh3 \
+ limit 1 \
+ node ip6-input \
+ size 48-48 \
+ data { \
+ IP6_HOP_BY_HOP_OPTIONS: 1::2 -> 1::2 \
+ hex 0x3BffC10403040506 \
+ incrementing 100 \
+ } \
}
-packet-generator new {
- name hbh4
- limit 1
- node ip6-input
- size 64-64
- data {
- IP6_HOP_BY_HOP_OPTIONS: 1::2 -> 1::2
- hex 0x3BffC10403040506
- incrementing 100
- }
+packet-generator new { \
+ name hbh4 \
+ limit 1 \
+ node ip6-input \
+ size 64-64 \
+ data { \
+ IP6_HOP_BY_HOP_OPTIONS: 1::2 -> 1::2 \
+ hex 0x3BffC10403040506 \
+ incrementing 100 \
+ } \
}
-packet-generator new {
- name hbh5
- limit 1
- node ip6-input
- size 56-56
- data {
- IP6_HOP_BY_HOP_OPTIONS: 1::2 -> 1::2
- length 16
- hex 0x3B010104030405060106030405060708
- incrementing 100
- }
+packet-generator new { \
+ name hbh5 \
+ limit 1 \
+ node ip6-input \
+ size 56-56 \
+ data { \
+ IP6_HOP_BY_HOP_OPTIONS: 1::2 -> 1::2 \
+ length 16 \
+ hex 0x3B010104030405060106030405060708 \
+ incrementing 100 \
+ } \
}
-packet-generator new {
- name hbh6
- limit 1
- node ip6-input
- size 56-56
- data {
- IP6_HOP_BY_HOP_OPTIONS: 1::2 -> 1::2
- length 16
- hex 0x3a00050200000100
- ICMP echo_request
- incrementing 100
- }
+packet-generator new { \
+ name hbh6 \
+ limit 1 \
+ node ip6-input \
+ size 56-56 \
+ data { \
+ IP6_HOP_BY_HOP_OPTIONS: 1::2 -> 1::2 \
+ length 16 \
+ hex 0x3a00050200000100 \
+ ICMP echo_request \
+ incrementing 100 \
+ } \
}
tr add pg-input 100
trace add pg-input 100
-packet-generator new {
- name ipsec1
- limit 1
- rate 1e4
- node ip4-input
- interface pg0
- size 100-100
- data {
- UDP: 192.168.0.2 -> 192.168.1.2
- UDP: 4321 -> 1234
- length 72
- incrementing 100
- }
+packet-generator new { \
+ name ipsec1 \
+ limit 1 \
+ rate 1e4 \
+ node ip4-input \
+ interface pg0 \
+ size 100-100 \
+ data { \
+ UDP: 192.168.0.2 -> 192.168.1.2 \
+ UDP: 4321 -> 1234 \
+ length 72 \
+ incrementing 100 \
+ } \
}
-packet-generator new {
- name ipsec2
- limit 1
- rate 1e4
- node ip4-input
- interface pg1
- size 100-100
- data {
- UDP: 192.168.1.2 -> 192.168.0.2
- UDP: 4321 -> 1234
- length 72
- incrementing 100
- }
+packet-generator new { \
+ name ipsec2 \
+ limit 1 \
+ rate 1e4 \
+ node ip4-input \
+ interface pg1 \
+ size 100-100 \
+ data { \
+ UDP: 192.168.1.2 -> 192.168.0.2 \
+ UDP: 4321 -> 1234 \
+ length 72 \
+ incrementing 100 \
+ } \
}
trace add pg-input 100
-packet-generator new {
- name ipsec1
- limit 1
- rate 1e4
- node ip4-input
- interface pg0
- size 100-100
- data {
- UDP: 192.168.0.2 -> 10.6.0.1
- UDP: 4321 -> 1234
- length 72
- incrementing 100
- }
+packet-generator new { \
+ name ipsec1 \
+ limit 1 \
+ rate 1e4 \
+ node ip4-input \
+ interface pg0 \
+ size 100-100 \
+ data { \
+ UDP: 192.168.0.2 -> 10.6.0.1 \
+ UDP: 4321 -> 1234 \
+ length 72 \
+ incrementing 100 \
+ } \
}
trace add pg-input 100
-packet-generator new {
- name ipsec2
- limit 1
- rate 1e4
- node ethernet-input
- interface pg0
- size 100-100
- data {
- IP4: 1.2.3 -> 4.5.6 vlan 1
- UDP: 10.5.0.1 -> 10.6.0.1
- UDP: 4321 -> 1234
- length 72
- incrementing 100
- }
+packet-generator new { \
+ name ipsec2 \
+ limit 1 \
+ rate 1e4 \
+ node ethernet-input \
+ interface pg0 \
+ size 100-100 \
+ data { \
+ IP4: 1.2.3 -> 4.5.6 vlan 1 \
+ UDP: 10.5.0.1 -> 10.6.0.1 \
+ UDP: 4321 -> 1234 \
+ length 72 \
+ incrementing 100 \
+ } \
}
-packet-generator new {
- name ipsec3
- limit 1
- rate 1e4
- node ethernet-input
- interface pg0
- size 100-100
- data {
- IP4: 1.2.3 -> 4.5.6 vlan 1
- UDP: 10.5.0.1 -> 10.6.0.22
- UDP: 4321 -> 1234
- length 72
- incrementing 100
- }
+packet-generator new { \
+ name ipsec3 \
+ limit 1 \
+ rate 1e4 \
+ node ethernet-input \
+ interface pg0 \
+ size 100-100 \
+ data { \
+ IP4: 1.2.3 -> 4.5.6 vlan 1 \
+ UDP: 10.5.0.1 -> 10.6.0.22 \
+ UDP: 4321 -> 1234 \
+ length 72 \
+ incrementing 100 \
+ } \
}
+++ /dev/null
-packet-generator new {
- name x
- limit 1
- node ip4-lookup
- size 50-50
- data {
- ICMP: 1.0.0.1 -> 1.0.0.3 ttl 1
- incrementing 30
- }
-}
-
-comment { tr add pg-input 100 }
-set int ip address TenGigabitEthernet5/0/0 33.0.1.1/8
-set int state TenGigabitEthernet5/0/0 up
-
clear run
clear int
-packet-generator new {
- name pre_vtr_fail
- limit 10
- node ethernet-input
- interface GigabitEthernet2/1/0
- data {
- IP4: 0050.56b7.7c83 -> 00:00:00:00:00:11 vlan 1
- GRE: 8.0.0.1 -> 1.2.3.3 mpls_unicast
- }
+packet-generator new { \
+ name pre_vtr_fail \
+ limit 10 \
+ node ethernet-input \
+ interface GigabitEthernet2/1/0 \
+ data { \
+ IP4: 0050.56b7.7c83 -> 00:00:00:00:00:11 vlan 1 \
+ GRE: 8.0.0.1 -> 1.2.3.3 mpls_unicast \
+ } \
}
-packet-generator new {
- name post_vtr_pass
- limit 20
- node ethernet-input
- interface GigabitEthernet2/1/0
- data {
- IP4: 0050.56b7.7c83 -> 00:00:00:00:00:22 vlan 2
- GRE: 8.0.0.1 -> 1.2.3.3 mpls_unicast
- }
+packet-generator new { \
+ name post_vtr_pass \
+ limit 20 \
+ node ethernet-input \
+ interface GigabitEthernet2/1/0 \
+ data { \
+ IP4: 0050.56b7.7c83 -> 00:00:00:00:00:22 vlan 2 \
+ GRE: 8.0.0.1 -> 1.2.3.3 mpls_unicast \
+ } \
}
-packet-generator new {
- name post_vtr_fail
- limit 50
- node ethernet-input
- interface GigabitEthernet2/1/0
- data {
- IP4: 0050.56b7.7c83 -> 00:00:00:00:00:22 vlan 3
- GRE: 8.0.0.1 -> 1.2.3.3 mpls_unicast
- }
+packet-generator new { \
+ name post_vtr_fail \
+ limit 50 \
+ node ethernet-input \
+ interface GigabitEthernet2/1/0 \
+ data { \
+ IP4: 0050.56b7.7c83 -> 00:00:00:00:00:22 vlan 3 \
+ GRE: 8.0.0.1 -> 1.2.3.3 mpls_unicast \
+ } \
}
clear run
clear int
-packet-generator new {
- name post_vtr_pass
- limit 9111003
- node ethernet-input
- interface GigabitEthernet2/1/0
- data {
- IP4: 0050.56b7.7c83 -> 00:00:00:00:00:22 vlan 2
- GRE: 8.0.0.1 -> 1.2.3.3 mpls_unicast
- }
+packet-generator new { \
+ name post_vtr_pass \
+ limit 9111003 \
+ node ethernet-input \
+ interface GigabitEthernet2/1/0 \
+ data { \
+ IP4: 0050.56b7.7c83 -> 00:00:00:00:00:22 vlan 2 \
+ GRE: 8.0.0.1 -> 1.2.3.3 mpls_unicast \
+ } \
}
clear run
clear int
-packet-generator new {
- name new_input_if_index_mac_move
- limit 4
- node ethernet-input
- interface GigabitEthernet2/1/0
- size 98-98
- data { hex 0x00010203040500020406080a080045006402b46b96000100096978676265000500bf436973636f20494f5320536f6674776172652c2040160011000000010101cc000400000000001a00100000000100000000ffffffff }
+packet-generator new { \
+ name new_input_if_index_mac_move \
+ limit 4 \
+ node ethernet-input \
+ interface GigabitEthernet2/1/0 \
+ size 98-98 \
+ data { hex 0x00010203040500020406080a080045006402b46b96000100096978676265000500bf436973636f20494f5320536f6674776172652c2040160011000000010101cc000400000000001a00100000000100000000ffffffff } \
}
-packet-generator new {
- name dmac_hit
- limit 7
- node ethernet-input
- interface GigabitEthernet2/2/0
- size 98-98
- data { hex 0x00020406080a00224406080a8100000981000011080045006402b46b96000100096978676265000500bf436973636f20494f5320536f6674776172652c2040160011000000010101cc000400000000001a00100000000100000000ffffffff }
+packet-generator new { \
+ name dmac_hit \
+ limit 7 \
+ node ethernet-input \
+ interface GigabitEthernet2/2/0 \
+ size 98-98 \
+ data { hex 0x00020406080a00224406080a8100000981000011080045006402b46b96000100096978676265000500bf436973636f20494f5320536f6674776172652c2040160011000000010101cc000400000000001a00100000000100000000ffffffff } \
}
cle int
cle run
-packet-generator new {
- name perf
- limit 9111003
- node ethernet-input
- interface GigabitEthernet2/2/0.1
- size 98-98
- data { hex 0x00224406080a00020406080a81000009080045006402b46b96000100096978676265000500bf436973636f20494f5320536f6674776172652c2040160011000000010101cc000400000000001a00100000000100000000ffffffff }
+packet-generator new { \
+ name perf \
+ limit 9111003 \
+ node ethernet-input \
+ interface GigabitEthernet2/2/0.1 \
+ size 98-98 \
+ data { hex 0x00224406080a00020406080a81000009080045006402b46b96000100096978676265000500bf436973636f20494f5320536f6674776172652c2040160011000000010101cc000400000000001a00100000000100000000ffffffff } \
}
clear run
clear int
-packet-generator new {
- name xc
- limit 11
- node ethernet-input
- interface GigabitEthernet2/1/0
- size 98-98
- data { hex 0x00010203040500020406080a080045006402b46b96000100096978676265000500bf436973636f20494f5320536f6674776172652c2040160011000000010101cc000400000000001a00100000000100000000ffffffff }
+packet-generator new { \
+ name xc \
+ limit 11 \
+ node ethernet-input \
+ interface GigabitEthernet2/1/0 \
+ size 98-98 \
+ data { hex 0x00010203040500020406080a080045006402b46b96000100096978676265000500bf436973636f20494f5320536f6674776172652c2040160011000000010101cc000400000000001a00100000000100000000ffffffff } \
}
clear run
clear int
-packet-generator new {
- name flood
- limit 1
- node ethernet-input
- interface GigabitEthernet2/1/0
- data {
- IP4: 0050.56b7.7c83 -> ffff.ffff.ffff vlan 1
- GRE: 8.0.0.1 -> 1.2.3.3 mpls_unicast
- }
-
+packet-generator new { \
+ name flood \
+ limit 1 \
+ node ethernet-input \
+ interface GigabitEthernet2/1/0 \
+ data { \
+ IP4: 0050.56b7.7c83 -> ffff.ffff.ffff vlan 1 \
+ GRE: 8.0.0.1 -> 1.2.3.3 mpls_unicast \
+ } \
}
clear run
clear int
-packet-generator new {
- name decap
- limit 10
- size 200-200
- node ethernet-input
- interface GigabitEthernet2/2/0
- data {
- IP6: 00:50:00:00:00:01 -> 00:50:56:b7:29:7a
- L2TP: 11::1 -> 22::2
- L2TP: session_id 1 cookie 0xffffffffffffffff
- IP4: 00:55:55:55:00:01 -> 00:dd:dd:dd:00:01
- UDP: 1.2.3.4 -> 5.6.7.8
- incrementing 8
- }
+packet-generator new { \
+ name decap \
+ limit 10 \
+ size 200-200 \
+ node ethernet-input \
+ interface GigabitEthernet2/2/0 \
+ data { \
+ IP6: 00:50:00:00:00:01 -> 00:50:56:b7:29:7a \
+ L2TP: 11::1 -> 22::2 \
+ L2TP: session_id 1 cookie 0xffffffffffffffff \
+ IP4: 00:55:55:55:00:01 -> 00:dd:dd:dd:00:01 \
+ UDP: 1.2.3.4 -> 5.6.7.8 \
+ incrementing 8 \
+ } \
}
-packet-generator new {
- name decap_bad_sid
- limit 30
- size 200-200
- node ethernet-input
- interface GigabitEthernet2/2/0
- data {
- IP6: 00:50:00:00:00:01 -> 00:50:56:b7:29:7a
- L2TP: 11::1 -> 22::2
- L2TP: session_id 0x999 cookie 0xffffffffffffffff
- IP4: 00:55:55:55:00:01 -> 00:dd:dd:dd:00:01
- UDP: 1.2.3.4 -> 5.6.7.8
- incrementing 8
- }
+packet-generator new { \
+ name decap_bad_sid \
+ limit 30 \
+ size 200-200 \
+ node ethernet-input \
+ interface GigabitEthernet2/2/0 \
+ data { \
+ IP6: 00:50:00:00:00:01 -> 00:50:56:b7:29:7a \
+ L2TP: 11::1 -> 22::2 \
+ L2TP: session_id 0x999 cookie 0xffffffffffffffff \
+ IP4: 00:55:55:55:00:01 -> 00:dd:dd:dd:00:01 \
+ UDP: 1.2.3.4 -> 5.6.7.8 \
+ incrementing 8 \
+ } \
}
-packet-generator new {
- name decap_bad_cookie
- limit 50
- size 200-200
- node ethernet-input
- interface GigabitEthernet2/2/0
- data {
- IP6: 00:50:00:00:00:01 -> 00:50:56:b7:29:7a
- L2TP: 11::1 -> 22::2
- L2TP: session_id 1 cookie 0x3333ffffffffffff
- IP4: 00:55:55:55:00:01 -> 00:dd:dd:dd:00:01
- UDP: 1.2.3.4 -> 5.6.7.8
- incrementing 8
- }
+packet-generator new { \
+ name decap_bad_cookie \
+ limit 50 \
+ size 200-200 \
+ node ethernet-input \
+ interface GigabitEthernet2/2/0 \
+ data { \
+ IP6: 00:50:00:00:00:01 -> 00:50:56:b7:29:7a \
+ L2TP: 11::1 -> 22::2 \
+ L2TP: session_id 1 cookie 0x3333ffffffffffff \
+ IP4: 00:55:55:55:00:01 -> 00:dd:dd:dd:00:01 \
+ UDP: 1.2.3.4 -> 5.6.7.8 \
+ incrementing 8 \
+ } \
}
-packet-generator new {
- name encap
- limit 100
- node ethernet-input
- interface GigabitEthernet2/1/0
- data {
- IP4: 0000.5555.0002 -> 00:00:dd:dd:00:02 vlan 1
- UDP: 1.2.3.4 -> 5.6.7.8
- incrementing 8
- }
+packet-generator new { \
+ name encap \
+ limit 100 \
+ node ethernet-input \
+ interface GigabitEthernet2/1/0 \
+ data { \
+ IP4: 0000.5555.0002 -> 00:00:dd:dd:00:02 vlan 1 \
+ UDP: 1.2.3.4 -> 5.6.7.8 \
+ incrementing 8 \
+ } \
}
-packet-generator new {
- name decap_sublayer
- limit 300
- size 200-200
- node ethernet-input
- interface GigabitEthernet2/2/0
- data {
- IP6: 00:50:00:00:00:01 -> 00:50:56:b7:29:7a
- L2TP: 11::1 -> 22::3
- L2TP: session_id 2 cookie 0xffffffffffffffff l2_sublayer 0
- IP4: 00:55:55:55:00:01 -> 00:dd:dd:dd:00:01
- UDP: 1.2.3.4 -> 5.6.7.8
- incrementing 8
- }
+packet-generator new { \
+ name decap_sublayer \
+ limit 300 \
+ size 200-200 \
+ node ethernet-input \
+ interface GigabitEthernet2/2/0 \
+ data { \
+ IP6: 00:50:00:00:00:01 -> 00:50:56:b7:29:7a \
+ L2TP: 11::1 -> 22::3 \
+ L2TP: session_id 2 cookie 0xffffffffffffffff l2_sublayer 0 \
+ IP4: 00:55:55:55:00:01 -> 00:dd:dd:dd:00:01 \
+ UDP: 1.2.3.4 -> 5.6.7.8 \
+ incrementing 8 \
+ } \
}
-packet-generator new {
- name encap_sublayer
- limit 700
- node ethernet-input
- interface GigabitEthernet2/1/0
- data {
- IP4: 0000.5555.0002 -> 00:00:dd:dd:00:02 vlan 2
- UDP: 1.2.3.4 -> 5.6.7.8
- incrementing 8
- }
+packet-generator new { \
+ name encap_sublayer \
+ limit 700 \
+ node ethernet-input \
+ interface GigabitEthernet2/1/0 \
+ data { \
+ IP4: 0000.5555.0002 -> 00:00:dd:dd:00:02 vlan 2 \
+ UDP: 1.2.3.4 -> 5.6.7.8 \
+ incrementing 8 \
+ } \
}
set ip neighbor pg1 192:168:2::2 6:5:4:3:2:1 static
set int state pg1 up
-packet-generator new {
- name v4-1-to-2
- limit -1
- node ip4-input
- size 64-64
- interface pg0
- data {
- UDP: 192.168.1.2 -> 192.168.2.2
- UDP: 4321 -> 1234
- length 128 checksum 0 incrementing 1
- }
+packet-generator new { \
+ name v4-1-to-2 \
+ limit -1 \
+ node ip4-input \
+ size 64-64 \
+ interface pg0 \
+ data { \
+ UDP: 192.168.1.2 -> 192.168.2.2 \
+ UDP: 4321 -> 1234 \
+ length 128 checksum 0 incrementing 1 \
+ } \
}
-packet-generator new {
- name v4-2-to-1
- limit -1
- node ip4-input
- size 64-64
- interface pg0
- data {
- UDP: 192.168.2.2 -> 192.168.1.2
- UDP: 1234 -> 4321
- length 128 checksum 0 incrementing 1
- }
+packet-generator new { \
+ name v4-2-to-1 \
+ limit -1 \
+ node ip4-input \
+ size 64-64 \
+ interface pg0 \
+ data { \
+ UDP: 192.168.2.2 -> 192.168.1.2 \
+ UDP: 1234 -> 4321 \
+ length 128 checksum 0 incrementing 1 \
+ } \
}
-packet-generator new {
- name v6-1-to-2
- limit -1
- node ip6-input
- size 64-64
- interface pg0
- data {
- UDP: 192:168:1::2 -> 192:168:2::2
- UDP: 4321 -> 1234
- length 128 checksum 0 incrementing 1
- }
+packet-generator new { \
+ name v6-1-to-2 \
+ limit -1 \
+ node ip6-input \
+ size 64-64 \
+ interface pg0 \
+ data { \
+ UDP: 192:168:1::2 -> 192:168:2::2 \
+ UDP: 4321 -> 1234 \
+ length 128 checksum 0 incrementing 1 \
+ } \
}
-packet-generator new {
- name v6-2-to-1
- limit -1
- node ip6-input
- size 64-64
- interface pg0
- data {
- UDP: 192:168:2::2 -> 192:168:1::2
- UDP: 1234 -> 4321
- length 128 checksum 0 incrementing 1
- }
+packet-generator new { \
+ name v6-2-to-1 \
+ limit -1 \
+ node ip6-input \
+ size 64-64 \
+ interface pg0 \
+ data { \
+ UDP: 192:168:2::2 -> 192:168:1::2 \
+ UDP: 1234 -> 4321 \
+ length 128 checksum 0 incrementing 1 \
+ } \
}
packet-generator enable
-packet-generator new {
- name x
- limit 1
- node ip4-input
- size 64-64
- data {
- ICMP: 1.0.0.2 -> 2.2.2.2
- ICMP echo_request
- incrementing 100
- }
+packet-generator new { \
+ name x \
+ limit 1 \
+ node ip4-input \
+ size 64-64 \
+ data { \
+ ICMP: 1.0.0.2 -> 2.2.2.2 \
+ ICMP echo_request \
+ incrementing 100 \
+ } \
}
loop create
-packet-generator new {
- name x
- limit 1
- node mpls-input
- size 72-72
- data {
- hex 0x0001e0ff0001f1ff4500004000000000400177ba010000020202020208007a6e000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f2021222324252627
- }
+packet-generator new { \
+ name x \
+ limit 1 \
+ node mpls-input \
+ size 72-72 \
+ data { \
+ hex 0x0001e0ff0001f1ff4500004000000000400177ba010000020202020208007a6e000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f2021222324252627 \
+ } \
}
loop create
-packet-generator new {
- name x
- limit 1
- node mpls-input
- size 68-68
- data {
- hex 0x0001e1ff4500004000000000400177ba010000020202020208007a6e000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f2021222324252627
- }
+packet-generator new { \
+ name x \
+ limit 1 \
+ node mpls-input \
+ size 68-68 \
+ data { \
+ hex 0x0001e1ff4500004000000000400177ba010000020202020208007a6e000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f2021222324252627 \
+ } \
}
loop create
-packet-generator new {
- name x
- limit 1
- node mpls-input
- size 68-68
- data {
- hex 0x0001e1ff4500004000000000400177ba010000020200000208007a6e000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f2021222324252627
- }
+packet-generator new { \
+ name x \
+ limit 1 \
+ node mpls-input \
+ size 68-68 \
+ data { \
+ hex 0x0001e1ff4500004000000000400177ba010000020200000208007a6e000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f2021222324252627 \
+ } \
}
loop create
-packet-generator new {
- name x
- limit 1
- node ip4-input
- size 512-512
- data {
- ICMP: 1.0.0.2 -> 232.1.1.1
- ICMP echo_request
- incrementing 100
- }
+packet-generator new { \
+ name x \
+ limit 1 \
+ node ip4-input \
+ size 512-512 \
+ data { \
+ ICMP: 1.0.0.2 -> 232.1.1.1 \
+ ICMP echo_request \
+ incrementing 100 \
+ } \
}
create packet-generator interface pg1
-packet-generator new {
- name x
- limit 1
- node mpls-ethernet-input
- size 68-68
- data {
- hex 0x0001e1ff4500004000000000400177ba010000020200000208007a6e000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f2021222324252627
- }
-}
\ No newline at end of file
+packet-generator new { \
+ name x \
+ limit 1 \
+ node mpls-ethernet-input \
+ size 68-68 \
+ data { \
+ hex 0x0001e1ff4500004000000000400177ba010000020200000208007a6e000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f2021222324252627 \
+ } \
+}
trace add pg-input 100
-packet-generator new {
- name g2v
- limit 1
- node ip4-input
- interface pg0
- data {
- hex 0x4500002000000000fe2f3b5bc0a80002c0a800010000884700021140000000000011005056b77c83010203040506
- }
+packet-generator new { \
+ name g2v \
+ limit 1 \
+ node ip4-input \
+ interface pg0 \
+ data { \
+ hex 0x4500002000000000fe2f3b5bc0a80002c0a800010000884700021140000000000011005056b77c83010203040506 \
+ } \
}
-packet-generator new {
- name v2g
- limit 1
- node ethernet-input
- interface pg1
- data {
- hex 0x000000000011005056b77c8388a80020810000210102030405060708
- }
+packet-generator new { \
+ name v2g \
+ limit 1 \
+ node ethernet-input \
+ interface pg1 \
+ data { \
+ hex 0x000000000011005056b77c8388a80020810000210102030405060708 \
+ } \
}
pack en g2v
-packet-generator new {
- name x0
- limit 1
- node ip4-input
- size 64-64
- data {
- ICMP: 1.0.0.2 -> 2.0.0.2
- ICMP echo_request
- incrementing 100
- }
+packet-generator new { \
+ name x0 \
+ limit 1 \
+ node ip4-input \
+ size 64-64 \
+ data { \
+ ICMP: 1.0.0.2 -> 2.0.0.2 \
+ ICMP echo_request \
+ incrementing 100 \
+ } \
}
-packet-generator new {
- name x1
- limit 1
- node ip4-input
- size 64-64
- data {
- ICMP: 1.0.0.2 -> 2.0.1.2
- ICMP echo_request
- incrementing 100
- }
+packet-generator new { \
+ name x1 \
+ limit 1 \
+ node ip4-input \
+ size 64-64 \
+ data { \
+ ICMP: 1.0.0.2 -> 2.0.1.2 \
+ ICMP echo_request \
+ incrementing 100 \
+ } \
}
-packet-generator new {
- name x2
- limit 1
- node ip4-input
- size 64-64
- data {
- ICMP: 1.0.0.2 -> 2.0.2.2
- ICMP echo_request
- incrementing 100
- }
+packet-generator new { \
+ name x2 \
+ limit 1 \
+ node ip4-input \
+ size 64-64 \
+ data { \
+ ICMP: 1.0.0.2 -> 2.0.2.2 \
+ ICMP echo_request \
+ incrementing 100 \
+ } \
}
-packet-generator new {
- name x3
- limit 1
- node ip4-input
- size 64-64
- data {
- ICMP: 1.0.0.2 -> 2.0.3.2
- ICMP echo_request
- incrementing 100
- }
+packet-generator new { \
+ name x3 \
+ limit 1 \
+ node ip4-input \
+ size 64-64 \
+ data { \
+ ICMP: 1.0.0.2 -> 2.0.3.2 \
+ ICMP echo_request \
+ incrementing 100 \
+ } \
}
create packet-generator interface pg0
create packet-generator interface pg1
-packet-generator new {
- name f1
- limit 1000000
- node ip4-input
- size 64-64
- interface pg0
- data {
- UDP: 10.0.0.3 -> 172.16.1.2
- UDP: 3000 -> 3001
- length 128 checksum 0 incrementing 1
- }
+packet-generator new { \
+ name f1 \
+ limit 1000000 \
+ node ip4-input \
+ size 64-64 \
+ interface pg0 \
+ data { \
+ UDP: 10.0.0.3 -> 172.16.1.2 \
+ UDP: 3000 -> 3001 \
+ length 128 checksum 0 incrementing 1 \
+ } \
}
-packet-generator new {
- name f2
- limit 1000000
- node ip4-input
- size 64-64
- interface pg0
- data {
- UDP: 10.0.0.3 -> 172.16.1.2
- UDP: 3005 -> 3006
- length 128 checksum 0 incrementing 1
- }
+packet-generator new { \
+ name f2 \
+ limit 1000000 \
+ node ip4-input \
+ size 64-64 \
+ interface pg0 \
+ data { \
+ UDP: 10.0.0.3 -> 172.16.1.2 \
+ UDP: 3005 -> 3006 \
+ length 128 checksum 0 incrementing 1 \
+ } \
}
nat44 add address 172.16.1.3
create packet-generator interface pg0
create packet-generator interface pg1
-packet-generator new {
- name f1
- limit 1000000
- node ip4-input
- size 64-64
- worker 0
- interface pg0
- data {
- UDP: 10.0.0.3 -> 172.16.1.2
- UDP: 3000 -> 3001
- length 128 checksum 0 incrementing 1
- }
+packet-generator new { \
+ name f1 \
+ limit 1000000 \
+ node ip4-input \
+ size 64-64 \
+ worker 0 \
+ interface pg0 \
+ data { \
+ UDP: 10.0.0.3 -> 172.16.1.2 \
+ UDP: 3000 -> 3001 \
+ length 128 checksum 0 incrementing 1 \
+ } \
}
-packet-generator new {
- name f2
- limit 1000000
- node ip4-input
- size 64-64
- worker 1
- interface pg0
- data {
- UDP: 10.0.0.3 -> 172.16.1.2
- UDP: 3005 -> 3006
- length 128 checksum 0 incrementing 1
- }
+packet-generator new { \
+ name f2 \
+ limit 1000000 \
+ node ip4-input \
+ size 64-64 \
+ worker 1 \
+ interface pg0 \
+ data { \
+ UDP: 10.0.0.3 -> 172.16.1.2 \
+ UDP: 3005 -> 3006 \
+ length 128 checksum 0 incrementing 1 \
+ } \
}
-packet-generator new {
- name f3
- limit 1000000
- node ip4-input
- size 64-64
- worker 0
- interface pg1
- data {
- UDP: 172.16.1.2 -> 1.1.1.2
- UDP: 3001 -> 1141
- length 128 checksum 0 incrementing 1
- }
+packet-generator new { \
+ name f3 \
+ limit 1000000 \
+ node ip4-input \
+ size 64-64 \
+ worker 0 \
+ interface pg1 \
+ data { \
+ UDP: 172.16.1.2 -> 1.1.1.2 \
+ UDP: 3001 -> 1141 \
+ length 128 checksum 0 incrementing 1 \
+ } \
}
-packet-generator new {
- name f4
- limit 1000000
- node ip4-input
- size 64-64
- worker 1
- interface pg1
- data {
- UDP: 172.16.1.2 -> 1.1.1.2
- UDP: 3006 -> 1146
- length 128 checksum 0 incrementing 1
- }
+packet-generator new { \
+ name f4 \
+ limit 1000000 \
+ node ip4-input \
+ size 64-64 \
+ worker 1 \
+ interface pg1 \
+ data { \
+ UDP: 172.16.1.2 -> 1.1.1.2 \
+ UDP: 3006 -> 1146 \
+ length 128 checksum 0 incrementing 1 \
+ } \
}
-packet-generator new {
- name f5
- limit 1000000
- node ip4-input
- size 64-64
- worker 2
- interface pg0
- data {
- UDP: 10.0.0.4 -> 172.16.1.2
- UDP: 3005 -> 3006
- length 128 checksum 0 incrementing 1
- }
+packet-generator new { \
+ name f5 \
+ limit 1000000 \
+ node ip4-input \
+ size 64-64 \
+ worker 2 \
+ interface pg0 \
+ data { \
+ UDP: 10.0.0.4 -> 172.16.1.2 \
+ UDP: 3005 -> 3006 \
+ length 128 checksum 0 incrementing 1 \
+ } \
}
-packet-generator new {
- name f6
- limit 1000000
- node ip4-input
- size 64-64
- worker 1
- interface pg1
- data {
- UDP: 172.16.1.2 -> 1.1.1.2
- UDP: 3006 -> 1177
- length 128 checksum 0 incrementing 1
- }
+packet-generator new { \
+ name f6 \
+ limit 1000000 \
+ node ip4-input \
+ size 64-64 \
+ worker 1 \
+ interface pg1 \
+ data { \
+ UDP: 172.16.1.2 -> 1.1.1.2 \
+ UDP: 3006 -> 1177 \
+ length 128 checksum 0 incrementing 1 \
+ } \
}
nat44 deterministic add in 10.0.0.0/21 out 1.1.1.2/32
create packet-generator interface pg0
create packet-generator interface pg1
-packet-generator new {
- name f1
- limit 1000000
- node ip4-input
- size 64-64
- worker 0
- interface pg1
- data {
- UDP: 172.16.1.11 -> 172.16.1.3
- UDP: 3001 -> 3000
- length 128 checksum 0 incrementing 1
- }
+packet-generator new { \
+ name f1 \
+ limit 1000000 \
+ node ip4-input \
+ size 64-64 \
+ worker 0 \
+ interface pg1 \
+ data { \
+ UDP: 172.16.1.11 -> 172.16.1.3 \
+ UDP: 3001 -> 3000 \
+ length 128 checksum 0 incrementing 1 \
+ } \
}
-packet-generator new {
- name f2
- limit 1000000
- node ip4-input
- size 64-64
- worker 1
- interface pg1
- data {
- UDP: 172.16.1.10 -> 172.16.1.3
- UDP: 3001 -> 3000
- length 128 checksum 0 incrementing 1
- }
+packet-generator new { \
+ name f2 \
+ limit 1000000 \
+ node ip4-input \
+ size 64-64 \
+ worker 1 \
+ interface pg1 \
+ data { \
+ UDP: 172.16.1.10 -> 172.16.1.3 \
+ UDP: 3001 -> 3000 \
+ length 128 checksum 0 incrementing 1 \
+ } \
}
nat44 add address 172.16.1.3
create packet-generator interface pg0
create packet-generator interface pg1
-packet-generator new {
- name f1
- limit 1000000
- node ip4-input
- size 64-64
- worker 0
- interface pg0
- data {
- UDP: 10.0.0.3 -> 172.16.1.2
- UDP: 3000 -> 3001
- length 128 checksum 0 incrementing 1
- }
+packet-generator new { \
+ name f1 \
+ limit 1000000 \
+ node ip4-input \
+ size 64-64 \
+ worker 0 \
+ interface pg0 \
+ data { \
+ UDP: 10.0.0.3 -> 172.16.1.2 \
+ UDP: 3000 -> 3001 \
+ length 128 checksum 0 incrementing 1 \
+ } \
}
-packet-generator new {
- name f2
- limit 1000000
- node ip4-input
- size 64-64
- worker 1
- interface pg1
- data {
- UDP: 172.16.1.2 -> 172.16.1.3
- UDP: 3001 -> 3000
- length 128 checksum 0 incrementing 1
- }
+packet-generator new { \
+ name f2 \
+ limit 1000000 \
+ node ip4-input \
+ size 64-64 \
+ worker 1 \
+ interface pg1 \
+ data { \
+ UDP: 172.16.1.2 -> 172.16.1.3 \
+ UDP: 3001 -> 3000 \
+ length 128 checksum 0 incrementing 1 \
+ } \
}
nat44 add address 172.16.1.3
create packet-generator interface pg0
create packet-generator interface pg1
-packet-generator new {
- name f1
- limit 1000000
- node ip4-input
- size 64-64
- worker 0
- interface pg0
- data {
- UDP: 10.0.0.3 -> 172.16.1.2
- UDP: 3000 -> 3001
- length 128 checksum 0 incrementing 1
- }
+packet-generator new { \
+ name f1 \
+ limit 1000000 \
+ node ip4-input \
+ size 64-64 \
+ worker 0 \
+ interface pg0 \
+ data { \
+ UDP: 10.0.0.3 -> 172.16.1.2 \
+ UDP: 3000 -> 3001 \
+ length 128 checksum 0 incrementing 1 \
+ } \
}
-packet-generator new {
- name f2
- limit 1000000
- node ip4-input
- size 64-64
- worker 1
- interface pg1
- data {
- UDP: 172.16.1.2 -> 172.16.1.3
- UDP: 3001 -> 3000
- length 128 checksum 0 incrementing 1
- }
+packet-generator new { \
+ name f2 \
+ limit 1000000 \
+ node ip4-input \
+ size 64-64 \
+ worker 1 \
+ interface pg1 \
+ data { \
+ UDP: 172.16.1.2 -> 172.16.1.3 \
+ UDP: 3001 -> 3000 \
+ length 128 checksum 0 incrementing 1 \
+ } \
}
nat44 add address 172.16.1.3
create packet-generator interface pg0
create packet-generator interface pg1
-packet-generator new {
- name f1
- limit 10
- node ip6-input
- size 64-64
- worker 0
- interface pg0
- data {
- UDP: 2000::3 -> 64:ff9b::ac10:102
- UDP: 3000 -> 3001
- length 128 checksum 0 incrementing 1
- }
+packet-generator new { \
+ name f1 \
+ limit 10 \
+ node ip6-input \
+ size 64-64 \
+ worker 0 \
+ interface pg0 \
+ data { \
+ UDP: 2000::3 -> 64:ff9b::ac10:102 \
+ UDP: 3000 -> 3001 \
+ length 128 checksum 0 incrementing 1 \
+ } \
}
-packet-generator new {
- name f2
- limit 10
- node ip6-input
- size 64-64
- interface pg0
- worker 1
- data {
- UDP: 2000::3 -> 64:ff9b::ac10:102
- UDP: 3005 -> 3006
- length 128 checksum 0 incrementing 1
- }
+packet-generator new { \
+ name f2 \
+ limit 10 \
+ node ip6-input \
+ size 64-64 \
+ interface pg0 \
+ worker 1 \
+ data { \
+ UDP: 2000::3 -> 64:ff9b::ac10:102 \
+ UDP: 3005 -> 3006 \
+ length 128 checksum 0 incrementing 1 \
+ } \
}
nat64 add pool address 172.16.1.3
create packet-generator interface pg0
create packet-generator interface pg1
-packet-generator new {
- name f1
- limit 10
- node ip4-input
- size 64-64
- worker 0
- interface pg1
- data {
- UDP: 172.16.1.2 -> 172.16.1.3
- UDP: 3000 -> 37678
- length 128 checksum 0 incrementing 1
- }
+packet-generator new { \
+ name f1 \
+ limit 10 \
+ node ip4-input \
+ size 64-64 \
+ worker 0 \
+ interface pg1 \
+ data { \
+ UDP: 172.16.1.2 -> 172.16.1.3 \
+ UDP: 3000 -> 37678 \
+ length 128 checksum 0 incrementing 1 \
+ } \
}
-packet-generator new {
- name f2
- limit 10
- node ip4-input
- size 64-64
- interface pg1
- worker 1
- data {
- UDP: 172.16.1.2 -> 172.16.1.3
- UDP: 3005 -> 38678
- length 128 checksum 0 incrementing 1
- }
+packet-generator new { \
+ name f2 \
+ limit 10 \
+ node ip4-input \
+ size 64-64 \
+ interface pg1 \
+ worker 1 \
+ data { \
+ UDP: 172.16.1.2 -> 172.16.1.3 \
+ UDP: 3005 -> 38678 \
+ length 128 checksum 0 incrementing 1 \
+ } \
}
nat64 add pool address 172.16.1.3
-packet-generator new {
- name x
- limit 1
- node ethernet-input
- pcap /home/eliot/pcap-data/ISIS_level1_adjacency.cap
+packet-generator new { \
+ name x \
+ limit 1 \
+ node ethernet-input \
+ pcap /home/eliot/pcap-data/ISIS_level1_adjacency.cap \
}
-packet-generator new {
- name y
- limit 1
- node hdlc-input
- pcap /home/eliot/pcap-data/ISIS_p2p_adjacency.cap
+packet-generator new { \
+ name y \
+ limit 1 \
+ node hdlc-input \
+ pcap /home/eliot/pcap-data/ISIS_p2p_adjacency.cap \
}
tr add pg-input 10
cle int
cle run
-packet-generator new {
- name toport
- limit 2
- node ethernet-input
- interface GigabitEthernet2/1/0
- data {
- IP4: 0050.56b7.7c83 -> 0050.56b7.296d
- GRE: 8.0.0.1 -> 1.2.5.6 mpls_unicast
- }
+packet-generator new { \
+ name toport \
+ limit 2 \
+ node ethernet-input \
+ interface GigabitEthernet2/1/0 \
+ data { \
+ IP4: 0050.56b7.7c83 -> 0050.56b7.296d \
+ GRE: 8.0.0.1 -> 1.2.5.6 mpls_unicast \
+ } \
}
-packet-generator new {
- name tovlan
- limit 2
- node ethernet-input
- interface GigabitEthernet2/1/0
- data {
- IP4: 0050.56b7.7c83 -> 0050.56b7.296d
- GRE: 8.0.0.1 -> 1.2.6.6 mpls_unicast
- }
+packet-generator new { \
+ name tovlan \
+ limit 2 \
+ node ethernet-input \
+ interface GigabitEthernet2/1/0 \
+ data { \
+ IP4: 0050.56b7.7c83 -> 0050.56b7.296d \
+ GRE: 8.0.0.1 -> 1.2.6.6 mpls_unicast \
+ } \
}
-packet-generator new {
- name toqinq
- limit 2
- node ethernet-input
- interface GigabitEthernet2/1/0
- data {
- IP4: 0050.56b7.7c83 -> 0050.56b7.296d
- GRE: 8.0.0.1 -> 1.2.7.6 mpls_unicast
- }
+packet-generator new { \
+ name toqinq \
+ limit 2 \
+ node ethernet-input \
+ interface GigabitEthernet2/1/0 \
+ data { \
+ IP4: 0050.56b7.7c83 -> 0050.56b7.296d \
+ GRE: 8.0.0.1 -> 1.2.7.6 mpls_unicast \
+ } \
}
-packet-generator new {
- name x
- limit 1
- node ip4-input
- size 64-64
- data {
- ICMP: 1.2.3.4 -> 5.6.7.8
- ICMP echo_request
- incrementing 100
- }
+packet-generator new { \
+ name x \
+ limit 1 \
+ node ip4-input \
+ size 64-64 \
+ data { \
+ ICMP: 1.2.3.4 -> 5.6.7.8 \
+ ICMP echo_request \
+ incrementing 100 \
+ } \
}
tr add pg-input 100
comment { trace add ixge-input 100 }
comment { te rtt { 1.0.0.2 -> 2.0.0.2 count 1e4 rate 1e9 size 100 histogram-time 1e-5 } }
-packet-generator new {
- name x
- limit 1
- node ip4-input
- size 170-170
- data {
- ICMP: 1.0.0.2 -> 2.0.0.2
- ICMP echo_request
- incrementing 100
- }
+packet-generator new { \
+ name x \
+ limit 1 \
+ node ip4-input \
+ size 170-170 \
+ data { \
+ ICMP: 1.0.0.2 -> 2.0.0.2 \
+ ICMP echo_request \
+ incrementing 100 \
+ } \
}
set int state loop0 up
set int ip addr loop0 10.10.10.10/32
-packet-generator new {
- name deny-from-default-route
- limit 1
- node ip4-input
- size 64-64
- data {
- UDP: 1.2.3.4 -> 5.6.7.8
- UDP: 3000 -> 3001
- length 128 checksum 0 incrementing 1
- }
+packet-generator new { \
+ name deny-from-default-route \
+ limit 1 \
+ node ip4-input \
+ size 64-64 \
+ data { \
+ UDP: 1.2.3.4 -> 5.6.7.8 \
+ UDP: 3000 -> 3001 \
+ length 128 checksum 0 incrementing 1 \
+ } \
}
-packet-generator new {
- name allow
- limit 1
- node ip4-input
- size 64-64
- data {
- UDP: 1.1.1.1 -> 5.6.7.8
- UDP: 3000 -> 3001
- length 128 checksum 0 incrementing 1
- }
+packet-generator new { \
+ name allow \
+ limit 1 \
+ node ip4-input \
+ size 64-64 \
+ data { \
+ UDP: 1.1.1.1 -> 5.6.7.8 \
+ UDP: 3000 -> 3001 \
+ length 128 checksum 0 incrementing 1 \
+ } \
}
-packet-generator new {
- name deny-from-port-range
- limit 1
- node ip4-input
- size 64-64
- data {
- UDP: 1.1.1.1 -> 5.6.7.8
- UDP: 6000 -> 6001
- length 128 checksum 0 incrementing 1
- }
+packet-generator new { \
+ name deny-from-port-range \
+ limit 1 \
+ node ip4-input \
+ size 64-64 \
+ data { \
+ UDP: 1.1.1.1 -> 5.6.7.8 \
+ UDP: 6000 -> 6001 \
+ length 128 checksum 0 incrementing 1 \
+ } \
}
set ip source-and-port-range-check 1.1.1.0/24 range 2000 - 3000 vrf 99
-packet-generator new {
- name x
- limit 1
- node ip4-input
- size 50-50
- data {
- ICMP: 1.2.3.4 -> 5.6.7.8
- ICMP echo_request
- incrementing 100
- }
+packet-generator new { \
+ name x \
+ limit 1 \
+ node ip4-input \
+ size 50-50 \
+ data { \
+ ICMP: 1.2.3.4 -> 5.6.7.8 \
+ ICMP echo_request \
+ incrementing 100 \
+ } \
}
tr add pg-input 100
set int hw-class fake-srp0 srp
set int hw-class fake-srp1 srp
-packet-generator new {
- name x
- limit 1
- node ip4-input
- size 64-64
- data {
- ICMP: 1.0.0.2 -> 2.0.0.2
- ICMP echo_request
- incrementing 100
- }
+packet-generator new { \
+ name x \
+ limit 1 \
+ node ip4-input \
+ size 64-64 \
+ data { \
+ ICMP: 1.0.0.2 -> 2.0.0.2 \
+ ICMP echo_request \
+ incrementing 100 \
+ } \
}
tr add pg-input 100
set int ip address loop0 192.168.1.1/8
set int state loop0 up
-packet-generator new {
- name x
- limit 2048
- node ip4-input
- size 100-100
- interface loop0
- data {
- TCP: 192.168.1.2 -> 192.168.1.1
- TCP: 32415 -> 80
- SYN
- incrementing 100
- }
+packet-generator new { \
+ name x \
+ limit 2048 \
+ node ip4-input \
+ size 100-100 \
+ interface loop0 \
+ data { \
+ TCP: 192.168.1.2 -> 192.168.1.1 \
+ TCP: 32415 -> 80 \
+ SYN \
+ incrementing 100 \
+ } \
}
set int ip address loop0 192.168.1.1/8
set int state loop0 up
-packet-generator new {
- name udp
- limit 512
- rate 1e4
- node ip4-input
- size 100-100
- interface loop0
- data {
- UDP: 192.168.1.2 - 192.168.2.255 -> 192.168.1.1
- UDP: 4321 -> 1234
- length 72
- incrementing 100
- }
+packet-generator new { \
+ name udp \
+ limit 512 \
+ rate 1e4 \
+ node ip4-input \
+ size 100-100 \
+ interface loop0 \
+ data { \
+ UDP: 192.168.1.2 - 192.168.2.255 -> 192.168.1.1 \
+ UDP: 4321 -> 1234 \
+ length 72 \
+ incrementing 100 \
+ } \
}
set int state host-vpp1 up
set int ip address host-vpp1 6.0.1.1/24
-packet-generator new {
- name udp
- limit 512
- rate 1e4
- node ip4-input
- size 100-100
- interface loop0
- data {
- UDP: 192.168.1.2 - 192.168.2.255 -> 192.168.1.1
- UDP: 4321 -> 1234
- length 72
- incrementing 100
- }
+packet-generator new { \
+ name udp \
+ limit 512 \
+ rate 1e4 \
+ node ip4-input \
+ size 100-100 \
+ interface loop0 \
+ data { \
+ UDP: 192.168.1.2 - 192.168.2.255 -> 192.168.1.1 \
+ UDP: 4321 -> 1234 \
+ length 72 \
+ incrementing 100 \
+ } \
}
session enable
set int state loop0 up
set int ip addr loop0 10.10.10.10/24
-packet-generator new {
- name transit-deny
- limit 1
- node ip4-input
- size 64-64
- data {
- UDP: 1.2.3.4 -> 2.2.2.2
- UDP: 3000 -> 3001
- length 128 checksum 0 incrementing 1
- }
+packet-generator new { \
+ name transit-deny \
+ limit 1 \
+ node ip4-input \
+ size 64-64 \
+ data { \
+ UDP: 1.2.3.4 -> 2.2.2.2 \
+ UDP: 3000 -> 3001 \
+ length 128 checksum 0 incrementing 1 \
+ } \
}
-packet-generator new {
- name transit-allow
- limit 1
- node ip4-input
- size 64-64
- data {
- UDP: 1.1.1.1 -> 2.2.2.2
- UDP: 3000 -> 3001
- length 128 checksum 0 incrementing 1
- }
+packet-generator new { \
+ name transit-allow \
+ limit 1 \
+ node ip4-input \
+ size 64-64 \
+ data { \
+ UDP: 1.1.1.1 -> 2.2.2.2 \
+ UDP: 3000 -> 3001 \
+ length 128 checksum 0 incrementing 1 \
+ } \
}
-packet-generator new {
- name transit-allow-from-excemption
- limit 1
- node ip4-input
- size 64-64
- data {
- UDP: 11.11.12.13 -> 2.2.2.2
- UDP: 6000 -> 6001
- length 128 checksum 0 incrementing 1
- }
+packet-generator new { \
+ name transit-allow-from-excemption \
+ limit 1 \
+ node ip4-input \
+ size 64-64 \
+ data { \
+ UDP: 11.11.12.13 -> 2.2.2.2 \
+ UDP: 6000 -> 6001 \
+ length 128 checksum 0 incrementing 1 \
+ } \
}
-packet-generator new {
- name for-us-allow-from-excemption
- limit 1
- node ip4-input
- size 64-64
- data {
- UDP: 11.11.12.13 -> 10.10.10.10
- UDP: 6000 -> 6001
- length 128 checksum 0 incrementing 1
- }
+packet-generator new { \
+ name for-us-allow-from-excemption \
+ limit 1 \
+ node ip4-input \
+ size 64-64 \
+ data { \
+ UDP: 11.11.12.13 -> 10.10.10.10 \
+ UDP: 6000 -> 6001 \
+ length 128 checksum 0 incrementing 1 \
+ } \
}
-packet-generator new {
- name for-us-allow
- limit 1
- node ip4-input
- size 64-64
- data {
- UDP: 1.1.1.1 -> 10.10.10.10
- UDP: 3000 -> 3001
- length 128 checksum 0 incrementing 1
- }
+packet-generator new { \
+ name for-us-allow \
+ limit 1 \
+ node ip4-input \
+ size 64-64 \
+ data { \
+ UDP: 1.1.1.1 -> 10.10.10.10 \
+ UDP: 3000 -> 3001 \
+ length 128 checksum 0 incrementing 1 \
+ } \
}
tr add pg-input 100
set int state fake-eth0 up
set int state fake-eth0.1 up
-packet-generator new {
- name x
- limit 1
- node ethernet-input
- interface fake-eth0
- size 64-64
- data {
- IP4: 1.2.3 -> 4.5.6 vlan 1
- ICMP: 1.2.3.4 -> 5.6.7.8
- ICMP echo_request
- incrementing 100
- }
+packet-generator new { \
+ name x \
+ limit 1 \
+ node ethernet-input \
+ interface fake-eth0 \
+ size 64-64 \
+ data { \
+ IP4: 1.2.3 -> 4.5.6 vlan 1 \
+ ICMP: 1.2.3.4 -> 5.6.7.8 \
+ ICMP echo_request \
+ incrementing 100 \
+ } \
}
tr add pg-input 100
unformat_input_t * input, vlib_cli_command_t * cmd)
{
char *file_name;
- int fd;
- unformat_input_t sub_input;
+ int fd, rv = 0;
+ unformat_input_t sub_input, in;
clib_error_t *error;
+ clib_macro_main_t *mm = 0;
unix_cli_main_t *cm = &unix_cli_main;
unix_cli_file_t *cf;
u8 *file_data = 0;
goto done;
}
+ if (s.st_size < 1)
+ {
+ error = clib_error_return (0, "empty file `%s'", file_name);
+ goto done;
+ }
+
/* Read the file */
- vec_validate (file_data, s.st_size);
+ vec_validate (file_data, s.st_size - 1);
if (read (fd, file_data, s.st_size) != s.st_size)
{
goto done;
}
- /* The macro expander expects a c string... */
- vec_add1 (file_data, 0);
-
unformat_init_vector (&sub_input, file_data);
- /* Run the file contents through the macro processor */
- if (vec_len (sub_input.buffer) > 1)
+ /* Initial config process? Use the global macro table. */
+ if (pool_is_free_index (cm->cli_file_pool, cm->current_input_file_index))
+ mm = &cm->macro_main;
+ else
{
- u8 *expanded;
- clib_macro_main_t *mm = 0;
+ /* Otherwise, use the per-cli-process macro table */
+ cf = pool_elt_at_index (cm->cli_file_pool, cm->current_input_file_index);
+ mm = &cf->macro_main;
+ }
- /* Initial config process? Use the global macro table. */
- if (pool_is_free_index
- (cm->cli_file_pool, cm->current_input_file_index))
- mm = &cm->macro_main;
- else
+ while (rv == 0 && unformat_user (&sub_input, unformat_vlib_cli_line, &in))
+ {
+ /* Run the file contents through the macro processor */
+ if (vec_len (in.buffer) > 1)
{
- /* Otherwise, use the per-cli-process macro table */
- cf = pool_elt_at_index (cm->cli_file_pool,
- cm->current_input_file_index);
- mm = &cf->macro_main;
+ u8 *expanded;
+
+ /* The macro expander expects a c string... */
+ vec_add1 (in.buffer, 0);
+
+ expanded =
+ (u8 *) clib_macro_eval (mm, (i8 *) in.buffer, 1 /* complain */,
+ 0 /* level */, 8 /* max_level */);
+ /* Macro processor NULL terminates the return */
+ vec_dec_len (expanded, 1);
+ vec_reset_length (in.buffer);
+ vec_append (in.buffer, expanded);
+ vec_free (expanded);
}
- expanded = (u8 *) clib_macro_eval (mm,
- (i8 *) sub_input.buffer,
- 1 /* complain */ ,
- 0 /* level */ ,
- 8 /* max_level */ );
- /* Macro processor NULL terminates the return */
- vec_dec_len (expanded, 1);
- vec_reset_length (sub_input.buffer);
- vec_append (sub_input.buffer, expanded);
- vec_free (expanded);
+ if ((rv = vlib_cli_input (vm, &in, 0, 0)) != 0)
+ error = clib_error_return (0, "CLI line error: %U",
+ format_unformat_error, &in);
+ unformat_free (&in);
}
-
- vlib_cli_input (vm, &sub_input, 0, 0);
unformat_free (&sub_input);
done:
-packet-generator new {
- name x
- limit 1
- node ethernet-input
- data { IP: 1.2.3 -> 4.5.6 incrementing 100 }
+packet-generator new { \
+ name x \
+ limit 1 \
+ node ethernet-input \
+ data { IP: 1.2.3 -> 4.5.6 incrementing 100 } \
}