使用批次檔來更新 cloudflare DDNS

 不熟批次檔(.bat/.cmd),但是家人不可能用 Linux ,還是得客製一下,能動為準

工作環境:
    Windows Home
        .bat
        工作排程器
        curl
        python(沒有的話,輸出的結果會粘在一起)

token varify 確認 apiToken 是正確的
curl "https://api.cloudflare.com/client/v4/user/tokens/verify" -H "Authorization: Bearer tokenHere"

get zoneID 把 zoneID 記下來
curl -X GET "https://api.cloudflare.com/client/v4/zones" -H "Authorization: Bearer tokenHere" -H "Content-Type:application/json"

get dns records 找到你要更新的網址名稱 name(FQDN,不是zone_name),把它的 id(不是zone_id) 記下來
curl -X GET "https://api.cloudflare.com/client/v4/zones/zoneIDHere/dns_records" -H "authorization: Bearer tokenHere" -H "Content-Type:application/json" | c:\somewhere\python -m json.tool

target dns record to update(.bat)************
curl ipinfo.io/ip > ip.txt
set /p IP=<ip.txt
curl -X PUT "https://api.cloudflare.com/client/v4/zones/zoneIDHere/dns_records/recordIDHere" -H "Authorization: Bearer tokenHere" -H "Content-Type: application/json" --data "{\"type\":\"A\", \"name\":\"hostnameOrFqdnHere\",\"content\":\"%IP%\",\"ttl\":1,\"proxied\":false}"

 data 的內容要用 \"

 data 的內容要用 \"

 data 的內容要用 \"



 收工!



===================================

URL rejected: Bad hostname / URL rejected: Bad hostname: 用做 api 的連結位址有錯誤









 

留言

這個網誌中的熱門文章

使用 Excel 計算2個地點之間的直線距離

LINE 儲存的檔案傳到 email 不方便 很不方便 非常不方便 但是有解的筆記

合併列印標籤漏印