First I'd say there are two things referred by this name, DCHP can update a local DNS. But you probably want to update a DNS server to point some name to your dynamic IP.
DynDNS does this but it is no longer free. Also Namecheap offers this. You will find more free alternatives to dyndns by searching a bit.
These systems work with a client that runs on your computer and that connects to a webpage, this webpage returns your ip address. Then the client will contact a server with some usename password combination to update the A record in a DNS server, until your public ip changes. The client that you run repeats checking your public ip via this webpage and when your ip changes it contacts again to the server.
A quick search and I found duckdns.org as such a server, the client can be a simple perl script like ddclient. With the right client any OS can support this.
In case your computer is behind a masquerading firewall make sure to forward the relevant port to your computer.