ip adj add может сделать это:
Например:
root@refactor:~# ip neigh show
192.168.1.1 dev wlan0 lladdr 00:1b:da:29:3a:87 REACHABLE
root@refactor:~# ip neigh add 192.168.1.2 dev wlan0 lladdr 00:1b:da:29:3a:89
root@refactor:~# ip neigh show
192.168.1.2 dev wlan0 lladdr 00:1b:da:29:3a:89 PERMANENT
192.168.1.1 dev wlan0 lladdr 00:1b:da:29:3a:87 REACHABLE
Это то, что вы хотите сделать?
Если вы хотите сделать это непосредственно в C, посмотрите на источник инструмента ip
, который является частью пакета iproute2
.