init
This commit is contained in:
commit
c662972ebb
63
updateCloudDNS.sh
Executable file
63
updateCloudDNS.sh
Executable file
@ -0,0 +1,63 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
#Variable Declaration - Change These
|
||||||
|
HOSTED_ZONE_ID="Z2LZR966I2PUGA"
|
||||||
|
NAME="cloud.xira.co.uk."
|
||||||
|
TYPE="A"
|
||||||
|
TTL=60
|
||||||
|
|
||||||
|
#get current IP address
|
||||||
|
IP=$(curl http://checkip.amazonaws.com/)
|
||||||
|
|
||||||
|
#validate IP address (makes sure Route 53 doesn't get updated with a malformed payload)
|
||||||
|
if [[ ! $IP =~ ^[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}$ ]]; then
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
#get current
|
||||||
|
/usr/local/bin/aws route53 list-resource-record-sets --hosted-zone-id $HOSTED_ZONE_ID | \
|
||||||
|
jq -r '.ResourceRecordSets[] | select (.Name == "'"$NAME"'") | select (.Type == "'"$TYPE"'") | .ResourceRecords[0].Value' > /tmp/current_route53_value
|
||||||
|
|
||||||
|
cat /tmp/current_route53_value
|
||||||
|
|
||||||
|
#check if IP is different from Route 53
|
||||||
|
if grep -Fxq "$IP" /tmp/current_route53_value; then
|
||||||
|
echo "IP Has Not Changed, Exiting"
|
||||||
|
curl -m 10 --retry 5 https://hc-ping.com/8683209a-cf95-48ff-9f57-b7f16b3885ea
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
echo "IP Changed, Updating Records"
|
||||||
|
|
||||||
|
#prepare route 53 payload
|
||||||
|
cat > /tmp/route53_cloud_changes.json << EOF
|
||||||
|
{
|
||||||
|
"Comment":"Updated From DDNS Shell Script",
|
||||||
|
"Changes":[
|
||||||
|
{
|
||||||
|
"Action":"UPSERT",
|
||||||
|
"ResourceRecordSet":{
|
||||||
|
"ResourceRecords":[
|
||||||
|
{
|
||||||
|
"Value":"$IP"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"Name":"$NAME",
|
||||||
|
"Type":"$TYPE",
|
||||||
|
"TTL":$TTL
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
EOF
|
||||||
|
|
||||||
|
#update records
|
||||||
|
/usr/local/bin/aws route53 change-resource-record-sets --hosted-zone-id $HOSTED_ZONE_ID --change-batch file:///tmp/route53_cloud_changes.json >> /dev/null
|
||||||
|
|
||||||
|
|
||||||
|
# if good
|
||||||
|
|
||||||
|
curl -m 10 --retry 5 https://hc-ping.com/8683209a-cf95-48ff-9f57-b7f16b3885ea/99
|
||||||
|
|
||||||
|
|
63
updateGit.sh
Executable file
63
updateGit.sh
Executable file
@ -0,0 +1,63 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
#Variable Declaration - Change These
|
||||||
|
HOSTED_ZONE_ID="Z3KRROJ1JJ2ULP"
|
||||||
|
NAME="git.caliban.io."
|
||||||
|
TYPE="A"
|
||||||
|
TTL=60
|
||||||
|
|
||||||
|
#get current IP address
|
||||||
|
IP=$(curl http://checkip.amazonaws.com/)
|
||||||
|
|
||||||
|
#validate IP address (makes sure Route 53 doesn't get updated with a malformed payload)
|
||||||
|
if [[ ! $IP =~ ^[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}$ ]]; then
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
#get current
|
||||||
|
/usr/local/bin/aws route53 list-resource-record-sets --hosted-zone-id $HOSTED_ZONE_ID | \
|
||||||
|
jq -r '.ResourceRecordSets[] | select (.Name == "'"$NAME"'") | select (.Type == "'"$TYPE"'") | .ResourceRecords[0].Value' > /tmp/current_route53_value
|
||||||
|
|
||||||
|
cat /tmp/current_route53_value
|
||||||
|
|
||||||
|
#check if IP is different from Route 53
|
||||||
|
if grep -Fxq "$IP" /tmp/current_route53_value; then
|
||||||
|
echo "IP Has Not Changed, Exiting"
|
||||||
|
curl -m 10 --retry 5 https://hc-ping.com/0311e1b0-30eb-4503-88e2-b9e99a0b872a
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
echo "IP Changed, Updating Records"
|
||||||
|
|
||||||
|
#prepare route 53 payload
|
||||||
|
cat > /tmp/route53_changes.json << EOF
|
||||||
|
{
|
||||||
|
"Comment":"Updated From DDNS Shell Script",
|
||||||
|
"Changes":[
|
||||||
|
{
|
||||||
|
"Action":"UPSERT",
|
||||||
|
"ResourceRecordSet":{
|
||||||
|
"ResourceRecords":[
|
||||||
|
{
|
||||||
|
"Value":"$IP"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"Name":"$NAME",
|
||||||
|
"Type":"$TYPE",
|
||||||
|
"TTL":$TTL
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
EOF
|
||||||
|
|
||||||
|
#update records
|
||||||
|
/usr/local/bin/aws route53 change-resource-record-sets --hosted-zone-id $HOSTED_ZONE_ID --change-batch file:///tmp/route53_changes.json >> /dev/null
|
||||||
|
|
||||||
|
|
||||||
|
# if good
|
||||||
|
|
||||||
|
curl -m 10 --retry 5 https://hc-ping.com/0311e1b0-30eb-4503-88e2-b9e99a0b872a/99
|
||||||
|
|
||||||
|
|
63
updateGotify.sh
Executable file
63
updateGotify.sh
Executable file
@ -0,0 +1,63 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
#Variable Declaration - Change These
|
||||||
|
HOSTED_ZONE_ID="Z3KRROJ1JJ2ULP"
|
||||||
|
NAME="push.caliban.io."
|
||||||
|
TYPE="A"
|
||||||
|
TTL=60
|
||||||
|
|
||||||
|
#get current IP address
|
||||||
|
IP=$(curl http://checkip.amazonaws.com/)
|
||||||
|
|
||||||
|
#validate IP address (makes sure Route 53 doesn't get updated with a malformed payload)
|
||||||
|
if [[ ! $IP =~ ^[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}$ ]]; then
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
#get current
|
||||||
|
/usr/local/bin/aws route53 list-resource-record-sets --hosted-zone-id $HOSTED_ZONE_ID | \
|
||||||
|
jq -r '.ResourceRecordSets[] | select (.Name == "'"$NAME"'") | select (.Type == "'"$TYPE"'") | .ResourceRecords[0].Value' > /tmp/current_route53_value
|
||||||
|
|
||||||
|
cat /tmp/current_route53_value
|
||||||
|
|
||||||
|
#check if IP is different from Route 53
|
||||||
|
if grep -Fxq "$IP" /tmp/current_route53_value; then
|
||||||
|
echo "IP Has Not Changed, Exiting"
|
||||||
|
curl -m 10 --retry 5 https://hc-ping.com/a89477fc-2660-4bfc-baf4-ef330bcf1df5
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
echo "IP Changed, Updating Records"
|
||||||
|
|
||||||
|
#prepare route 53 payload
|
||||||
|
cat > /tmp/route53_changes.json << EOF
|
||||||
|
{
|
||||||
|
"Comment":"Updated From DDNS Shell Script",
|
||||||
|
"Changes":[
|
||||||
|
{
|
||||||
|
"Action":"UPSERT",
|
||||||
|
"ResourceRecordSet":{
|
||||||
|
"ResourceRecords":[
|
||||||
|
{
|
||||||
|
"Value":"$IP"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"Name":"$NAME",
|
||||||
|
"Type":"$TYPE",
|
||||||
|
"TTL":$TTL
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
EOF
|
||||||
|
|
||||||
|
#update records
|
||||||
|
/usr/local/bin/aws route53 change-resource-record-sets --hosted-zone-id $HOSTED_ZONE_ID --change-batch file:///tmp/route53_changes.json >> /dev/null
|
||||||
|
|
||||||
|
|
||||||
|
# if good
|
||||||
|
|
||||||
|
curl -m 10 --retry 5 https://hc-ping.com/a89477fc-2660-4bfc-baf4-ef330bcf1df5/99
|
||||||
|
|
||||||
|
|
63
updateLinks.sh
Executable file
63
updateLinks.sh
Executable file
@ -0,0 +1,63 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
#Variable Declaration - Change These
|
||||||
|
HOSTED_ZONE_ID="Z2LZR966I2PUGA"
|
||||||
|
NAME="links.xira.co.uk."
|
||||||
|
TYPE="A"
|
||||||
|
TTL=60
|
||||||
|
|
||||||
|
#get current IP address
|
||||||
|
IP=$(curl http://checkip.amazonaws.com/)
|
||||||
|
|
||||||
|
#validate IP address (makes sure Route 53 doesn't get updated with a malformed payload)
|
||||||
|
if [[ ! $IP =~ ^[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}$ ]]; then
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
#get current
|
||||||
|
/usr/local/bin/aws route53 list-resource-record-sets --hosted-zone-id $HOSTED_ZONE_ID | \
|
||||||
|
jq -r '.ResourceRecordSets[] | select (.Name == "'"$NAME"'") | select (.Type == "'"$TYPE"'") | .ResourceRecords[0].Value' > /tmp/current_route53_value
|
||||||
|
|
||||||
|
cat /tmp/current_route53_value
|
||||||
|
|
||||||
|
#check if IP is different from Route 53
|
||||||
|
if grep -Fxq "$IP" /tmp/current_route53_value; then
|
||||||
|
echo "IP Has Not Changed, Exiting"
|
||||||
|
curl -m 10 --retry 5 https://hc-ping.com/db1e44d4-7975-4738-8805-01eba58ec826
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
echo "IP Changed, Updating Records"
|
||||||
|
|
||||||
|
#prepare route 53 payload
|
||||||
|
cat > /tmp/route53_changes.json << EOF
|
||||||
|
{
|
||||||
|
"Comment":"Updated From DDNS Shell Script",
|
||||||
|
"Changes":[
|
||||||
|
{
|
||||||
|
"Action":"UPSERT",
|
||||||
|
"ResourceRecordSet":{
|
||||||
|
"ResourceRecords":[
|
||||||
|
{
|
||||||
|
"Value":"$IP"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"Name":"$NAME",
|
||||||
|
"Type":"$TYPE",
|
||||||
|
"TTL":$TTL
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
EOF
|
||||||
|
|
||||||
|
#update records
|
||||||
|
/usr/local/bin/aws route53 change-resource-record-sets --hosted-zone-id $HOSTED_ZONE_ID --change-batch file:///tmp/route53_changes.json >> /dev/null
|
||||||
|
|
||||||
|
|
||||||
|
# if good
|
||||||
|
|
||||||
|
curl -m 10 --retry 5 https://hc-ping.com/db1e44d4-7975-4738-8805-01eba58ec826/99
|
||||||
|
|
||||||
|
|
63
updateMusic.sh
Executable file
63
updateMusic.sh
Executable file
@ -0,0 +1,63 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
#Variable Declaration - Change These
|
||||||
|
HOSTED_ZONE_ID="Z2LZR966I2PUGA"
|
||||||
|
NAME="music.xira.co.uk."
|
||||||
|
TYPE="A"
|
||||||
|
TTL=60
|
||||||
|
|
||||||
|
#get current IP address
|
||||||
|
IP=$(curl http://checkip.amazonaws.com/)
|
||||||
|
|
||||||
|
#validate IP address (makes sure Route 53 doesn't get updated with a malformed payload)
|
||||||
|
if [[ ! $IP =~ ^[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}$ ]]; then
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
#get current
|
||||||
|
/usr/local/bin/aws route53 list-resource-record-sets --hosted-zone-id $HOSTED_ZONE_ID | \
|
||||||
|
jq -r '.ResourceRecordSets[] | select (.Name == "'"$NAME"'") | select (.Type == "'"$TYPE"'") | .ResourceRecords[0].Value' > /tmp/current_route53_value
|
||||||
|
|
||||||
|
cat /tmp/current_route53_value
|
||||||
|
|
||||||
|
#check if IP is different from Route 53
|
||||||
|
if grep -Fxq "$IP" /tmp/current_route53_value; then
|
||||||
|
echo "IP Has Not Changed, Exiting"
|
||||||
|
curl -m 10 --retry 5 https://hc-ping.com/108bfbe9-3010-41a2-9196-d2bab5859f31
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
echo "IP Changed, Updating Records"
|
||||||
|
|
||||||
|
#prepare route 53 payload
|
||||||
|
cat > /tmp/route53_changes.json << EOF
|
||||||
|
{
|
||||||
|
"Comment":"Updated From DDNS Shell Script",
|
||||||
|
"Changes":[
|
||||||
|
{
|
||||||
|
"Action":"UPSERT",
|
||||||
|
"ResourceRecordSet":{
|
||||||
|
"ResourceRecords":[
|
||||||
|
{
|
||||||
|
"Value":"$IP"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"Name":"$NAME",
|
||||||
|
"Type":"$TYPE",
|
||||||
|
"TTL":$TTL
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
EOF
|
||||||
|
|
||||||
|
#update records
|
||||||
|
/usr/local/bin/aws route53 change-resource-record-sets --hosted-zone-id $HOSTED_ZONE_ID --change-batch file:///tmp/route53_changes.json >> /dev/null
|
||||||
|
|
||||||
|
|
||||||
|
# if good
|
||||||
|
|
||||||
|
curl -m 10 --retry 5 https://hc-ping.com/108bfbe9-3010-41a2-9196-d2bab5859f31/99
|
||||||
|
|
||||||
|
|
62
updatedns.sh
Executable file
62
updatedns.sh
Executable file
@ -0,0 +1,62 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
#Variable Declaration - Change These
|
||||||
|
HOSTED_ZONE_ID="Z2LZR966I2PUGA"
|
||||||
|
NAME="wireguard.xira.co.uk."
|
||||||
|
TYPE="A"
|
||||||
|
TTL=60
|
||||||
|
|
||||||
|
#get current IP address
|
||||||
|
IP=$(curl http://checkip.amazonaws.com/)
|
||||||
|
|
||||||
|
#validate IP address (makes sure Route 53 doesn't get updated with a malformed payload)
|
||||||
|
if [[ ! $IP =~ ^[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}$ ]]; then
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
#get current
|
||||||
|
/usr/local/bin/aws route53 list-resource-record-sets --hosted-zone-id $HOSTED_ZONE_ID | \
|
||||||
|
jq -r '.ResourceRecordSets[] | select (.Name == "'"$NAME"'") | select (.Type == "'"$TYPE"'") | .ResourceRecords[0].Value' > /tmp/current_route53_value
|
||||||
|
|
||||||
|
cat /tmp/current_route53_value
|
||||||
|
|
||||||
|
#check if IP is different from Route 53
|
||||||
|
if grep -Fxq "$IP" /tmp/current_route53_value; then
|
||||||
|
echo "IP Has Not Changed, Exiting"
|
||||||
|
curl -m 10 --retry 5 https://hc-ping.com/b7d69a09-8e30-4685-875a-8fb451d75c1b
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
echo "IP Changed, Updating Records"
|
||||||
|
|
||||||
|
#prepare route 53 payload
|
||||||
|
cat > /tmp/route53_changes.json << EOF
|
||||||
|
{
|
||||||
|
"Comment":"Updated From DDNS Shell Script",
|
||||||
|
"Changes":[
|
||||||
|
{
|
||||||
|
"Action":"UPSERT",
|
||||||
|
"ResourceRecordSet":{
|
||||||
|
"ResourceRecords":[
|
||||||
|
{
|
||||||
|
"Value":"$IP"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"Name":"$NAME",
|
||||||
|
"Type":"$TYPE",
|
||||||
|
"TTL":$TTL
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
EOF
|
||||||
|
|
||||||
|
#update records
|
||||||
|
/usr/local/bin/aws route53 change-resource-record-sets --hosted-zone-id $HOSTED_ZONE_ID --change-batch file:///tmp/route53_changes.json >> /dev/null
|
||||||
|
|
||||||
|
|
||||||
|
# if all good
|
||||||
|
curl -m 10 --retry 5 https://hc-ping.com/b7d69a09-8e30-4685-875a-8fb451d75c1b/99
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue
Block a user