为何要写

  • 人生就是一个积累的过程,如果不主动留下点什么,就真的一无所有了。
  • 总是会忘记,也记不住什么东西。
  • 还是得记住一些东西,尽可能地。即使在不远的将来会将它遗忘。
  • 也许自己错了,单纯的依靠数据记录会使自己陷入荒芜,要尽可能地去学,去记忆。

    ddns的实现

    域名

    腾讯云注册域名

    工具

    tccli 和一些用系统公具写出的脚步

    具体实现

    ip address命令输出ipv6地址,将输出处理选择出能用的公网ipv6,再用tccli命令向腾讯云发出更新解析命令,并做成定时任务

    具体脚本

    #!/bin/bash
    /root/.local/bin/tccli dnspod DescribeRecordList --cli-unfold-argument --Domain 'puxiqi.com' > list.txt
    RecordId=($(cat list.txt | grep "RecordId" | cut -d "," -f 1))
    Value=($(cat list.txt | grep "Value"))
    Name=($(cat list.txt | grep "Name"))
    echo ${RecordId[*]}
    echo ${RecordId[7]}
    echo ${Value[*]}
    echo ${Name[*]}
    addr=($(ip address | grep "inet6 2" | tr -s " " | cut -d " " -f 3 | cut -d "/" -f 1))
    
    /root/.local/bin/tccli dnspod ModifyRecord --cli-unfold-argument --Domain 'puxiqi.com' --SubDomain ctl --RecordType AAAA --RecordLine '默认' --Value ${addr[0]} --TTL 600 --RecordId ${RecordId[7]}
    /root/.local/bin/tccli dnspod ModifyRecord --cli-unfold-argument --Domain 'puxiqi.com' --SubDomain ctl --RecordType AAAA --RecordLine '默认' --Value ${addr[1]} --TTL 600 --RecordId ${RecordId[7]}
    /root/.local/bin/tccli dnspod ModifyRecord --cli-unfold-argument --Domain 'puxiqi.com' --SubDomain ctl0 --RecordType AAAA --RecordLine '默认' --Value ${addr[1]} --TTL 600 --RecordId ${RecordId[9]}
    rm list.txt

    ddns.service

    [Unit]
    Description=ddns update
    After=network.target
    
    [Service]
    User=root
    Type=simple
    ExecStart=/usr/local/bin/ddns.sh
    
    [Install]
    WantedBy=multi-user.target

    ddns.timer

    [Unit]
    Description=ipv6 ddns update
    
    [Timer]
    OnCalendar=*-*-* *:15:00
    Persistent=true
    
    [Install]
    WantedBy=timers.target

标签: none

暂无评论

  1. 欢迎加入 Typecho 大家族

添加新评论