whatisgithub

What is d2c.sh?

ddries/d2c.sh — explained in plain English

Analysis updated 2026-07-17 · repo last pushed 2026-01-24

228ShellAudience · ops devopsComplexity · 2/5MaintainedSetup · easy

In one sentence

A lightweight Bash script that automatically updates your Cloudflare DNS records when your home or cloud server's dynamic IP address changes.

Mindmap

mindmap
  root((repo))
    What it does
      Detects IP changes
      Updates Cloudflare DNS
      Supports IPv4 and IPv6
    Tech stack
      Shell
      Cloudflare API
      Cron
    Use cases
      Home media servers
      Self-hosted game servers
      Small business infra
      No static IP needed
    Audience
      Self hosters
      Ops devops
    Setup
      Add Cloudflare credentials
      Run via cron
      Optional Docker

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Keep a domain pointed at a home server automatically when the ISP-assigned IP address changes.

USE CASE 2

Run a self-hosted media server accessible by domain name without paying for a static IP.

USE CASE 3

Monitor multiple domains and Cloudflare zones at once using separate configuration files.

USE CASE 4

Get a Telegram or Gotify notification every time d2c.sh updates a DNS record.

What is it built with?

ShellCloudflare APICronDocker

How does it compare?

ddries/d2c.shn8n-io/skillsheygen-com/skills
Stars228231236
LanguageShellShellShell
Last pushed2026-01-242026-06-23
MaintenanceMaintainedActive
Setup difficultyeasyeasyeasy
Complexity2/52/52/5
Audienceops devopspm foundervibe coder

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · easy Time to first run · 30min

Requires a Cloudflare API token and domains managed through Cloudflare DNS.

Not specified in the explanation.

Copy-paste prompts

Prompt 1
Set up d2c.sh with my Cloudflare API token and configure it to update my home server's A record on a cron schedule.
Prompt 2
How do I configure d2c.sh to monitor multiple domains across different Cloudflare zones at once?
Prompt 3
Add Telegram notifications to d2c.sh so I get alerted whenever my dynamic IP changes and DNS is updated.
Prompt 4
Run d2c.sh in Docker on my home server instead of installing it directly on the host.

Frequently asked questions

What is d2c.sh?

A lightweight Bash script that automatically updates your Cloudflare DNS records when your home or cloud server's dynamic IP address changes.

What language is d2c.sh written in?

Mainly Shell. The stack also includes Shell, Cloudflare API, Cron.

Is d2c.sh actively maintained?

Maintained — commit in last 6 months (last push 2026-01-24).

What license does d2c.sh use?

Not specified in the explanation.

How hard is d2c.sh to set up?

Setup difficulty is rated easy, with roughly 30min to a first successful run.

Who is d2c.sh for?

Mainly ops devops.

Open on GitHub → Ask about another repo

This repo across BitVibe Labs

Verify against the repo before relying on details.