problem of using packer in x86 host to run arm vm

I try to use packer to modify arch qcow2 in x86 host machine, but following command could not execute successfully, /etc/sysconfig/iptables-config always empty.

provisioner "shell" {
    inline = [
        "echo 'iptables-restore < /etc/sysconfig/iptables-config' >> /etc/rc.local"
    ]
  }

source "qemu" "aarch64" {
  qemu_binary     = "/usr/bin/qemu-system-aarch64"
  iso_url         = "${var.image_url}"
  #iso_checksum    = "${var.image_checksum}"
  iso_checksum    = "none"
  disk_image      = true
  headless        = true

  ssh_host        = "127.0.0.1"
  ssh_port        = 59599
  ssh_username    = "root"
  ssh_password    = "${var.ssh_password}"
  ssh_timeout     = "30m"

  host_port_min   = 2000
  host_port_max   = 2000

  output_directory = "${var.tmp_directory}"
  vm_name          = "${var.vm_name}"

  qemuargs = [
    ["-machine", "virt,accel=tcg,highmem=off"],
    ["-cpu", "cortex-a57"],

    ["-smp", "4"],
    ["-m", "4096"],

    ["-bios", "/usr/share/edk2/aarch64/QEMU_EFI.fd"],

    ["-drive", "if=none,file=${var.image_url},id=hd0,format=qcow2"],
    ["-device", "virtio-blk-device,drive=hd0"],

    ["-netdev", "user,id=net0,hostfwd=tcp::2000-:22"],
    ["-device", "virtio-net-device,netdev=net0"],
  ]
}

I try to launch the arm vm to directly execute this command, it’s ok.
could you please give some hint to that, thanks.

env:
packer-plugin-qemu_v1.1.1_x5.0_linux_amd64
Packer v1.12.0