# Example /etc/inadyn.conf
#
# Remember to change this file to match your provider and credentials
# Username and password can be included from another file.  For more
# info, see https://man.troglobit.com/man5/inadyn.conf.5.html

# Use IP address of interface instead of external checkip server.
# Useful when you want to register internal IP addresses
#iface    = eth0

# IP address change check interval
period   = 300

# Remove of change to match your Dyn account
provider dyndns.org {
	username    = test
	password    = test
	hostname    = { "my.example.com", "other.example.org" }
}

# Remove or change to match your FreeDNS account
provider freedns {
     username   = lower-case-username
     password   = case-sensitive-pwd
     hostname   = some.example.com
}
