I've never heard of .lan before, so I don't know whether it has any special meaning over .local. However, I would like to have all my devices use .local for their hostnames.
I'm confused by the "Resolve these locally" field in the DHCP settings.
.local is reserved for mDNS so I would highly suggest that you avoid using it.
.lan is just a made up TLD that is deliberately invalid. You can use anything in its place as long as it isn't a valid TLD. You could just as well set it to something like .mycrazyhome or .tabicat
I was able to point my browser at octopi.local, so I guess mDNS is already working. I'm not at home now so I can't test it, but what is octopi.lan supposed to do? Also resolve to the same address as octopi.local?
.lan uses the local DNS server on your OpenWRT device. The difference is that it is a central source of truth which is going to be a lot more reliable than mDNS. The problem with mDNS is that it doesn't allow for a way to restrict which devices can just self declare. mDNS is also a little bit noisy network wise although it really isn't bad when you are dealing with fast connections.
Where mDNS really shines is p2p and service discovery. Things like printers and TV's will often advertise there services on the network.
I have like 14 local networks and each has its own domain under home.arpa. like guest.clients.home.arpa. and I personally don't want to depend on mdns and its local....
I have for each vlan a domain and i.e. my PC lives in admin.clients.home.apra and with a second interface in user.clients.home.arpa.
If the search option is configured properly in resolve conf everything is smooth