Popularity
5.4
Stable
Activity
3.7
Declining
258
9
24

Programming language: Go
License: MIT License
Latest version: v3.0.4

DDNS alternatives and similar packages

Based on the "Other Software" category.
Alternatively, view DDNS alternatives based on common mentions on social networks and blogs.

  • syncthing

    Open Source Continuous File Synchronization
  • hugo

    The world’s fastest framework for building websites.
  • SaaSHub helps you find the best software and product alternatives
    Promo www.saashub.com
    SaaSHub Logo
  • croc

    Easily and securely send things from one computer to another :crocodile: :package:
  • restic

    Fast, secure, efficient backup program
  • Seaweed File System

    DISCONTINUED. SeaweedFS is a fast distributed storage system for blobs, objects, files, and data lake, for billions of files! Blob store has O(1) disk seek, cloud tiering. Filer supports Cloud Drive, cross-DC active-active replication, Kubernetes, POSIX FUSE mount, S3 API, S3 Gateway, Hadoop, WebDAV, encryption, Erasure Coding. [Moved to: https://github.com/seaweedfs/seaweedfs]
  • rkt

    DISCONTINUED. An App Container runtime that integrates with init systems, is compatible with other container formats like Docker, and supports alternative execution engines like KVM.
  • Gor

    GoReplay is an open-source tool for capturing and replaying live HTTP traffic into a test environment in order to continuously test your system with real data. It can be used to increase confidence in code deployments, configuration changes and infrastructure changes.
  • limetext

    Open source API-compatible alternative to the text editor Sublime Text
  • toxiproxy

    :alarm_clock: :fire: A TCP proxy to simulate network and system conditions for chaos and resiliency testing
  • Comcast

    Simulating shitty network connections so you can build better systems.
  • confd

    Manage local application configuration files using templates and data from etcd or consul
  • LiteIDE

    LiteIDE is a simple, open source, cross-platform Go IDE.
  • drive

    Google Drive client for the commandline
  • scc

    Sloc, Cloc and Code: scc is a very fast accurate code counter with complexity calculations and COCOMO estimates written in pure Go
  • nes

    NES emulator written in Go.
  • Duplicacy

    A new generation cloud backup tool
  • heka

    DISCONTINUED. DEPRECATED: Data collection and processing made easy.
  • blocky

    Fast and lightweight DNS proxy as ad-blocker for local network with many features
  • fleet

    DISCONTINUED. A Distributed init System.
  • Docker

    Notary is a project that allows anyone to have trust over arbitrary collections of data
  • Juju

    Orchestration engine that enables the deployment, integration and lifecycle management of applications at any scale, on any infrastructure (Kubernetes or otherwise).
  • myLG

    Network Diagnostic Tool
  • snap

    DISCONTINUED. The open telemetry framework
  • Stack Up

    Super simple deployment tool - think of it like 'make' for a network of servers
  • GoBoy

    Multi-platform Nintendo Game Boy Color emulator written in Go
  • Documize

    Modern Confluence alternative designed for internal & external docs, built with Go + EmberJS
  • lgo

    Interactive Go programming with Jupyter
  • Circuit

    Circuit: Dynamic cloud orchestration http://gocircuit.org
  • GoDNS

    A dynamic DNS client tool that supports AliDNS, Cloudflare, Google Domains, DNSPod, HE.net & DuckDNS & DreamHost, etc, written in Go.
  • Plik

    Plik is a temporary file upload system (Wetransfer like) in Go.
  • vFlow

    Enterprise Network Flow Collector (IPFIX, sFlow, Netflow)
  • borg

    Search and save shell snippets without leaving your terminal
  • Gokapi

    Lightweight selfhosted Firefox Send alternative without public upload. AWS S3 supported.
  • shell2http

    Executing shell commands via HTTP server
  • portal

    Portal is a quick and easy command-line file transfer utility from any computer to another.
  • peg

    Peg, Parsing Expression Grammar, is an implementation of a Packrat parser generator.
  • Go Package Store

    An app that displays updates for the Go packages in your GOPATH.
  • Postman

    CLI tool for batch-sending email via any SMTP server.
  • Guora

    🖖🏻 A self-hosted Quora like web application written in Go 基于 Golang 类似知乎的私有部署问答应用 包含问答、评论、点赞、管理后台等功能
  • Leaps

    A pair programming service using operational transforms
  • gfile

    Direct file transfer over WebRTC
  • GoNB

    GoNB, a Go Notebook Kernel for Jupyter
  • yai

    Your AI powered terminal assistant.
  • gocc

    Parser / Scanner Generator
  • sake

    :robot: sake is a task runner for local and remote hosts
  • mockingjay

    Fake server, Consumer Driven Contracts and help with testing performance from one configuration file with zero system dependencies and no coding whatsoever
  • Gebug

    Debug Dockerized Go applications better
  • ipe

    DISCONTINUED. An open source Pusher server implementation compatible with Pusher client libraries written in GO
  • woke

    Detect non-inclusive language in your source code.
  • hotswap

    A complete solution to reload your go code without restarting your server, interrupting or blocking any ongoing procedure.

Do you think we are missing an alternative of DDNS or a related project?

Add another 'Other Software' Package

README

DDNS

Test Release Go Report Card

Personal DDNS client with Digital Ocean Networking DNS as backend.

Read about it in the Blog

Motivation

There are services like DynDNS, No-IP to access PCs remotely. But do we need them? This is your own DDNS solution which works for free (thanks to Digital Ocean Networking DNS).

What is DDNS

From Wikipedia

Dynamic DNS (DDNS) is a method of automatically updating a name server in the Domain Name System (DNS), often in real time, with the active DDNS configuration of its configured hostnames, addresses or other information.

Installation

Download binary from releases.

And start it as:

ddns

Or you can download Docker image and use it:

docker run \
  -v /path/to/config.yml:/config/ddns.yml \
  skibish/ddns -conf-file /config/ddns.yml

Documentation

Run ddns -h, to see help. It will output:

Usage of ./ddns:
  -conf-file string
        Location of the configuration file. If not provided, searches current directory, then $HOME for ddns.yml file
  -ver
        Show version

You need to setup your domain in Digital Ocean Networks panel.

In your domain name provider configuration point domain to Digital Ocean NS records.

Refer to: How To Point to DigitalOcean Nameservers From Common Domain Registrars

Configuration file ddns.yml:

# DDNS configuration file.

# Mandatory, DigitalOcean API token.
# It can be also set using environment variable DDNS_TOKEN.
token: ""

# By default, IP check occurs every 5 minutes.
# It can be also set using environment variable DDNS_CHECKPERIOD.
checkPeriod: "5m"

# By default, timeout to external resources is set to 10 seconds.
# It can be also set using environment variable DDNS_REQUESTTIMEOUT.
requestTimeout: "10s"

# By default, IPv6 address is not requested.
# IPv6 address can be forced by setting it to `true`.
# It can be also set using environment variable DDNS_IPV6.
ipv6: false

# List of domains and their records to update.
domains:
  example.com:
  # More details about the fields can be found here:
  # https://developers.digitalocean.com/documentation/v2/#create-a-new-domain-record
  - type: "A"
    name: "www"
  - type: "TXT"
    name: "demo"

    # By default, is set to "{{.IP}}" (key .IP is reserved).
    # Supports Go template engine.
    # Additional keys can be set in "params" block below.
    data: "My IP is {{.IP}} and I am {{.mood}}"

    # By default, 1800 seconds (5 minutes).
    ttl: 1800

# By default, params is empty.
params:
  mood: "cool"

# By default, notifications is empty.
notifications:

  # Gotify (https://gotify.net)
- type: "gotify"
  app_url: "https://gotify.example.com"
  app_token: ""
  title: "DDNS" 

  # SMTP
- type: "smtp"
  user: "[email protected]"
  password: "1234"
  host: "localhost"
  port: "468"
  from: "[email protected]"
  to: "[email protected]"
  subject: "My DDNS sending me a message"

  # Telegram (https://telegram.org)
- type: "telegram"
  token: "telegram bot token"
  chat_id: "1234"