**Summary**
Static ARP entries are not synchronized with the VPP dataplane after any changes are made on the VPP side that require the dataplane restart.
**How to reproduce**
Configure VPP with basic settings:
```
set interfaces ethernet eth9 address '192.168.122.5/24'
set system option kernel cpu disable-nmi-watchdog
set system option kernel cpu isolate-cpus '2-3'
set system option kernel cpu nohz-full '2-3'
set system option kernel cpu rcu-no-cbs '2-3'
set system option kernel disable-hpet
set system option kernel disable-mce
set system option kernel disable-mitigations
set system option kernel disable-softlockup
set system option kernel memory hugepage-size 2M hugepage-count '1024'
set vpp settings cpu corelist-workers '3'
set vpp settings cpu main-core '2'
set vpp settings interface eth9 driver 'dpdk'
set vpp settings memory main-heap-size '1G'
set vpp settings unix poll-sleep-usec '1000'
```
Check neighbors:
```
vyos@vyos# sudo vppctl show ip neighbors
Age IP Flags Ethernet Interface
266.8925 192.168.122.1 D 52:54:00:97:31:8f eth9
```
Add static ARP entries:
```
set protocols static arp interface eth9 address 192.168.122.2 mac '00:11:22:33:44:55'
set protocols static arp interface eth9 address 192.168.122.3 mac '00:11:22:33:44:66'
```
Check neighbors again:
```
vyos@vyos# sudo vppctl show ip neighbors
Age IP Flags Ethernet Interface
49.0414 192.168.122.3 S 00:11:22:33:44:66 eth9
49.0425 192.168.122.2 S 00:11:22:33:44:55 eth9
330.6885 192.168.122.1 D 52:54:00:97:31:8f eth9
```
Update VPP settings to trigger a dataplane restart:
```
set vpp settings interface eth8 driver 'dpdk'
```
Check neighbors again:
```
vyos@vyos# sudo vppctl show ip neighbors
Age IP Flags Ethernet Interface
1.6877 192.168.122.1 D 52:54:00:97:31:8f eth9
```
**What is expected / Suggested solution**
It is expected that static ARP entries will not disappear after the VPP restart.
The optimal solution would be to introduce the same logic as we [have with FIB](https://github.com/vyos/vyos-1x/blob/fd8794f36b487ba2102cc50437056e93eb62f7f3/src/conf_mode/vpp.py#L747).
If this is not possible, then we can do the synchronization manually, [using ip_neighbor_add_del()](https://github.com/FDio/vpp/blob/f40fcee5b1b53e62f23db7b4fe509edadfdc65dd/src/vnet/ip-neighbor/ip_neighbor.api#L61C8-L61C27), but netlink/dump -> install seems to be much better.