Sitat av
JuiceGutten
Jeg fant et på GitHub, vet ikke hvordan det er med linker her på forumet(?) så om jeg poster noe som ikke blir verdsatt beklager jeg dette.
https://github.com/hyecheol123/Cloud...amic-IP-Update
Her skal det endres e-post, og disse API- zone og id feltene i config-filen. Etter dette kjørte jeg det chmod -x blabla.bash - siden ikke min router har endret IP i dag, eller etter jeg nettopp slo deg av og på - hvordan vet jeg da om den fungerte?
Logg på cloudflare.com og sett dns-recorden til en annen IP med vilje, kjør scriptet, sjekk at det er oppdatert til riktig IP på cloudflare.com
Det scriptet så forresten temmelig bloaty og uleselig ut.
Jeg brukte Ansible (
https://ansible.com) for å lage akkurat samme greia:
Kode
---
- hosts: localhost
gather_facts: no
connection: local
vars:
cf_zone: 'example.com'
cf_record: 'home'
cf_email: 'email-for-cloudflare-login'
cf_api_token: 'your-api-token-from-cloudflare'
tasks:
- name: Get current public IP address
uri:
url: 'https://ipinfo.io/ip'
return_content: yes
register: public_ip
- name: Update DNS record
cloudflare_dns:
zone: '{{ cf_zone }}'
record: '{{ cf_record }}'
type: A
value: '{{ public_ip.content | trim }}'
state: present
account_email: '{{ cf_email }}'
account_api_token: '{{ cf_api_token }}'
- name: Create Cron job
cron:
name: Update DNS record
minute: '15'
job: '/path/to/ansible/playbook.yml'