Crates.io | route53-ip-update |
lib.rs | route53-ip-update |
version | 0.1.0 |
source | src |
created_at | 2022-12-12 23:51:25.472654 |
updated_at | 2022-12-12 23:51:25.472654 |
description | Update a Route 53 DNS record with your public IPv4 and/or IPv6 address |
homepage | |
repository | |
max_upload_size | |
id | 735338 |
size | 110,471 |
Update an AWS Route 53 DNS record with your IPv4 and/or IPv6 public address
route53-ip-update [OPTIONS] [HOSTNAMES]...
[HOSTNAMES]...
The hostnames to update
-a
, --address-type <ADDRESS_TYPE>
-n
, --allow-nonroutable <ALLOW_NONROUTABLE>
-c
, --config-file <CONFIG_FILE>
-q
, --query-interfaces <QUERY_INTERFACES>
-Q
, --query-ip-service <QUERY_IP_SERVICE>
-I
, --ignore-interfaces <IGNORE_INTERFACES>
-s
, --ip-service <IP_SERVICE>
https://api64.ipify.org
.-t
, --timeout <TIMEOUT>
-T
, --ttl <TTL>
-r
, --route53-zone <ROUTE53_ZONE>
-h
, --help
-V
, --version
The configuration file may be in TOML, YAML, or JSON format. The parser used is deteremined by the extension (.toml
uses TOML; .yaml
, .yml
, and .json
use the YAML parser, which is JSON-compatible).
The format of the configuration file is as follows (YAML):
address-type: ipv4|ipv6|both # Types of addresses to include
allow-nonroutable: false|true # Whether non-routable records should be allowed
query-interfaces: false|true # Whether interfaces should be queried
query-ip-service: false|true # Whether the IP service should be queried
ignore-interfaces: # List of interfaces to ignore while querying
- interface-name
ip-service: https://hostname/ # IP service to query.
timeout: "10 s" # Timeout for the IP service
ttl: 60 # TTL in seconds to default to
route53-zones: # List of Route 53 zones
- zone-id: zone1-id # The Route 53 zone id
ttl: 60 # TTL in seconds to default to
hostnames: # List of hostnames to update
- hostname: host.net # Hostname to update
ttl: 10 # TTL in seconds to use for this record
- zone-id: zone2-id
hostnames: # Simplified way of specifying hostnames without TTL
- host.net