That requires running it on the router/device which gets the public IP address. By using the service you can update your DNS IP address on a system that is behind the router.
I have a router connected to the internet, it gets the public IP address.
The router is connected to the internal network in my home and has the IP address of 192.168.1.1.
Behind the router is my computer which has a non-public IP address, for example 192.168.1.2. My computer is the one I want to run the program to update the DNS entry. My computer does not know what the public IP address is by looking at its interfaces.
Every device gets a public ipv6 (usually).