Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/mrjacob12/cloudflare-dynamic-dns
This Python script allows you to update CloudFlare DNS records with the current public IP address. It supports multiple zones and records within each zone.
https://github.com/mrjacob12/cloudflare-dynamic-dns
cloudflare-dns ddns ddns-updater
Last synced: 14 days ago
JSON representation
This Python script allows you to update CloudFlare DNS records with the current public IP address. It supports multiple zones and records within each zone.
- Host: GitHub
- URL: https://github.com/mrjacob12/cloudflare-dynamic-dns
- Owner: MrJacob12
- License: mit
- Created: 2023-11-09T13:26:28.000Z (about 1 year ago)
- Default Branch: master
- Last Pushed: 2024-03-28T14:51:30.000Z (9 months ago)
- Last Synced: 2024-12-18T00:44:08.350Z (16 days ago)
- Topics: cloudflare-dns, ddns, ddns-updater
- Language: Python
- Homepage:
- Size: 5.86 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# CloudFlare Dynamic DNS Updater
This Python script allows you to update CloudFlare DNS records with the current public IP address. It supports multiple zones and records within each zone.
## Getting Started
### Prerequisites
Before running the script, you'll need:
- Python 3.x installed on your system
- Access to the CloudFlare API with a valid API key and email
- A configuration file (`config.json`) with your CloudFlare account information and the zones/records you want to update### Installation
1. Clone the repository to your local machine:
```bash
git clone https://github.com/MrJacob12/CloudFlare-Dynamic-DNS.git
```2. Install the required Python packages:
```bash
pip install -r requirements.txt
```3. Create .env file in the project directory and populate it with your CloudFlare account information and the zones/records you want to update. Use the provided template in the example below:
```
CF_API_KEY="KEY"
```4. Create a config.json file in the project directory and populate it with your CloudFlare account information and the zones/records you want to update. Use the provided template in the example below:
```json
{
"email": "[email protected]",
"key": "your-cloudflare-api-key",
"zones": [
{
"zone": "example.com",
"zone_id": "your-zone-id",
"records": [
{
"type": "A",
"rec_id": "your-record-id",
"name": "api",
"proxied": true,
"ttl": 1
}
]
}
]
}
```### Contributing
If you'd like to contribute to this project, please open an issue or submit a pull request with your proposed changes.
### License
This project is licensed under the [MIT](/LICENSE) License - see the LICENSE file for details.