summaryrefslogtreecommitdiff
path: root/README.md
blob: 90db6b5a7a6933047dde0f4327772ca79f22d4c8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
# he-dyndns
This code is a shell-based dynamic DNS client for Hurricane Electric's
dns.he.net service. This code is designed to be maximally portable
using common Linux/BSD commands and avoid Perl, Python, etc. In its
default mode, it updates one or more FQDNs with the IP address that
dns.he.net detects as the source request.

# Installation
There is really nothing to install. Copy he-dyndns somewhere useful
such as /usr/local/bin.

# Configuration
The only configuration file/item is if you want to use the file
/etc/he-dns-secret to contain the key for authenticating to
dns.he.net. Otherwise, you can provide it on the command line with the
**-s** option.

# Runtime Options
**he-dyndns** takes the following options:

## Requied Options
- **-4**: Update the IPv4 "A" record for the FQDN(s)
- **-6**: Update the IPv6 "AAAA" record for the FQDN(s).
- **-d**: One or more fully-qualified host entries for the domain separated by commas

Note that one or both of -4 and -6 must be specified for the script to
actually do anything. 

## Optional Options
- **-s**: The secret key for updating the entries

Any other unsupported option or no options will print a usage message

# Return Values
Returns 0 on success or 1 on failure. Failure message returns the exact error
from dyn.dns.he.net, no more and no less.

# Usage
This script is designed to be called from a Cron entry or another script. An
example usage:

```
# /usr/local/bin/he-dyndns -46 -s SECRETKEY -d foo.example.com,bar.example.com
```