create packet-generator interface pg0
create packet-generator interface pg1

packet-generator new {
  name f1
  limit 1000000
  node ip4-input
  size 64-64
  no-recycle
  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
  no-recycle
  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
nat44 add load-balancing static mapping protocol udp external 172.16.1.3:3000 local 10.0.0.10:30000 probability 25 local 10.0.0.11:30000 probability 25 local 10.0.0.12:30000 probability 25 local 10.0.0.13:30000 probability 25
set int ip address pg0 10.0.0.1/24
set int ip address pg1 172.16.1.1/24
set int state pg0 up
set int state pg1 up
set ip arp static pg0 10.0.0.10 abcd.abcd.abcd
set ip arp static pg0 10.0.0.11 abcd.abcd.abce
set ip arp static pg0 10.0.0.12 abce.abcd.abcd
set ip arp static pg0 10.0.0.13 abce.abcd.abce
set ip arp static pg1 172.16.1.10 cdef.abcd.abcd
set ip arp static pg1 172.16.1.11 cdef.abcd.abce
set int nat44 in pg0 out pg1
trace add pg-input 10