Devices from AVM are very popular in Germany. Several ISPs are happy to sell you a Fitz!Box device to connect your home to their network.
The FRITZ!Box is a Linux-based device, that allows for easy configuration through its Web interface. It runs a DHCP server that will automatically assign IP addresses to newly connected devices.
If you want to make sure that a device will always have the same IP addresses, you can configure that through the web interface. Connect to your interface at http://fritz.box and log in. I don’t have the international version of the FRITZ!Box available. hence, all my screen shots will have the German version of the menu entries. Navigate to Heimnetz (Home Network), where you will find a list of connected devices. Each device will be shown with its hostname (if advertised) and its IP address:
You can then click the edit button to configure additional properties for this device:
If you select the checkbox Diesem Netzwergerät immer die gleiche IPv4-Adresse zuweisen (Always assign this IP address to this device), then your device will always obtain the same IP address upon connecting to the network.
The device is now available via static IP address. But is not yet accessible via a DNS entry. This is because the FRITZ!Box has a default setting that does not allow DNS names to be resolved, if they point to an local address in your home network. This feature is enabled to protect you from DNS rebinding attacks. You need to explicitly define a list of host names, that are allowed to be resolved.
In order to do this, you need to go back to your Heimnetz (Home Network) and select the Tab Netzwerkeinstellungen (Network Settings)
and scroll down to the bottom of the page. There you will find a section that says DNS-Rebinding Schutz (DNS Rebinding Protection):
You can add the names of the devices that you want to be resolved.
After that you should be able to make DNS requests to resolve the IP address of your local device:
Of course, if you are able resolve the host via DNS queries, you do not have to assign a static IP address to the device. But that is up to you!