1.7 KiB
1.7 KiB
peach-dyndns-host
a dynamic DNS server to host the names of guests with changing IP addresses by providing an http API for updating bind9 configurations.
Setup
The code in this repo assumes the existence of an installed and running bind9 server on the same server as is running peach-dyndns-server. Documentation for setting up bind9 can be found here.
The peach-dyndns-server code can be compiled with
cargo deb; sudo dpkg -i target/debian/peach-dyndns-server_0.1.0_amd64.deb
Development
sudo su peach-dyndns; ./target/release/main -vv
Prod Deployment
prod is deployed to /srv/peachcloud/peach-dyndns-server/prod-peach-dyndns
Staging Deployment
staging is deployed to /srv/peachcloud/peach-dyndns-server/dev-peach-dyndns
Test
ping
curl -X POST -H "Content-Type: application/json" -d '{"jsonrpc": "2.0", "method": "ping", "id":1 }' 127.0.0.1:3002
register_domain
curl -X POST -H "Content-Type: application/json" -d '{"jsonrpc": "2.0", "method": "register_domain", "params" : {"domain": "mirage.dyn.peachcloud.org" }, "id":1 }' 127.0.0.1:3002
is_domain_available
curl -X POST -H "Content-Type: application/json" -d '{"jsonrpc": "2.0", "method": "is_domain_available", "params" : {"domain": "mirage.dyn.peachcloud.org" }, "id":1 }' 127.0.0.1:3002
test peach-bind9 is running,
# this returns version of bind running
dig -t txt -c chaos VERSION.BIND @IP_ADDRESS_OF_SERVER
# this returns records for blue.dyn.peachcloud.org
nslookup blue.dyn.peachcloud.org YOUR_SERVER_IP_ADDRESS
# this returns records for blue.dyn.peachcloud.org
nslookup blue.dyn.peachcloud.org ns.peachcloud.org