Best practice for binding an IP and MAC address forevermore

I've Googled up disparate posts about how to do this, and I have no idea who's blowing smoke and who knows the best practice. I have a document of different answers that people have given, and I'm hoping that someone authoritative will be able to break the tie for me.

This solution is for an old malfunctioning device (an HP Officejet Pro if you're curious) that doesn't behave well on the network. The only way to keep it accessible with my old router is to have a static ARP entry for its IP and MAC. I'm migrating to OpenWRT and I need to know how to make this stick forever, and more than just that, I want to do it CORRECTLY.

Thank you!

/etc/config/dhcp:

config host
        option name 'foo'
        option mac '01:23:45:67:89:AB'
        option ip '192.168.1.123'
        option dns '1'
1 Like

I have a question about why the option dns '1' is needed? I know it adds this: "Add static forward and reverse DNS entries for this host" but don't exactly understand why. If you don't feel like explaining, I understand, just want to understand the fundamentals more than I do now.

Both name and dns are optional (but personally I'd recommend them). It just helps to address a device with its hostname.

E.g.: ping foo, ssh foo, ping foo.lan.

1 Like

This results in a static DHCP and DNS entry, but are you sure it also results in a static ARP entry as the OP requested?

For arp I would add sth. like:
arp -s IP MAC
into rc.local