Dynamic DNS cho RPi

Các dịch vụ cung cấp DDNS miễn phí như noip.com, changeip.com, dnsexit, freedns.afraid.org… không chỉ cung cấp dịch vụ thay đổi ip cho một tên miền mà còn cung cấp tên miền phụ.

changeip.com đăng ký tài khoản dễ dàng, có nhiều tên miền dễ nhớ như ddns.info, ddns.me, ddns.mobi, ddns.name, ddns.us … Một tài khoản có thể đăng ký đến 8 tên miền phụ, cập nhật ip theo nhóm. Giao diện web dễ thao tác hơn các dịch vụ khác.

Đoạn mã sau đây dùng cập nhật ip cho tên miền phụ changeip.com

#Ghi nội dung sau đây thành file Bash /root/chgip
#!/bin/bash
#thay usr, pwd theo tài khoản changeip.com
usr=user_chageip.com
pwd=mật_khẩu
tmp=/var/tmp/tmpIP
#lấy ip internet của RPi
newIP=$(curl -s myip.dnsomatic.com)
#đọc ip cũ
if [ -f $tmp ]; then
        oldIP=$(<$tmp)
else
        oldIP=""
fi
#nếu có thay đổi thì cập nhật ip
if [ "$oldIP" != "$newIP" ]; then
        printf $newIP > $tmp
        #cập nhật ip cho tất cả tên miền thuộc nhóm 1
        curl -s -u "$usr:$pwd" https://nic.changeip.com/nic/update?set=1
fi

 

Cấp quyền thực thi cho file Bash

chmod +x /root/chgip

Tạo cronjob kiểm tra và cập nhật ip 3 phút lần

crontab -e

*/3 * * * * /root/chgip

Leave a Comment

Filed under Software

Leave a Reply