🚀 Hướng Dẫn Cài Đặt & Sử Dụng Script 🏄‍♂️ Tailscale Tùy Chỉnh

🔥 Giới Thiệu

Tailscale là một VPN 🛡️ dựa trên WireGuard giúp kết nối các thiết bị 📡 một cách an toàn, tiện lợi. Tuy nhiên, do một số hạn chế của MagicDNS ✨, một số trang web 🌍 không thể kết nối được. Vì vậy, script này giúp bạn:

  • Dễ dàng bật/tắt Tailscale và cập nhật /etc/hosts tương ứng.
  • Chuyển đổi nhanh giữa IP Private 🔒 và IP Tailscale 🌐.
  • 📜 Cung cấp menu tương tác để quản lý danh sách IP alias.

🔢 1. Nội Dung Script

Dưới đây là nội dung script tailscale_script.sh mà bạn sẽ sử dụng:

#!/bin/bash
# 🎩 tailscale_script.sh - Custom Tailscale script

# 🚀 Đường dẫn binary chính thức của Tailscale
OFFICIAL_TAILSCALE="/Applications/Tailscale.app/Contents/MacOS/Tailscale"

# 📝 File chứa danh sách IP alias
TAILSCALE_FILE="/Users/kiennt/WorkZone/IP_Autochange/IP_Tailscale.txt"
PRIVATE_FILE="/Users/kiennt/WorkZone/IP_Autochange/IP_Private.txt"

# ✍️ Hàm cập nhật /etc/hosts dựa theo danh sách IP alias từ file
changehosts() {
    if "$OFFICIAL_TAILSCALE" status | grep -q "stopped"; then
        CURRENT_HOSTS=$(cat "$PRIVATE_FILE")
    else
        CURRENT_HOSTS=$(cat "$TAILSCALE_FILE")
    fi
    sudo cp /etc/hosts /etc/hosts.bak
    while IFS= read -r line; do
        hostname=$(echo "$line" | awk '{print $2}')
        new_ip=$(echo "$line" | awk '{print $1}')
        if [[ -n "$hostname" ]]; then
            sudo sed -E -i '' "s/^[0-9\.]+[[:space:]]+$hostname\$/$new_ip $hostname/" /etc/hosts 2>/dev/null
        fi
    done <<< "$CURRENT_HOSTS"
    echo "✅ Đã cập nhật hosts thành công!"
}

# 🎮 Hàm xử lý các lệnh up, down
tailscale_cmd() {
    if [[ "$1" == "up" ]]; then
        "$OFFICIAL_TAILSCALE" up "${@:2}" && sleep 1 && changehosts
    elif [[ "$1" == "down" ]]; then
        "$OFFICIAL_TAILSCALE" down "${@:2}" && sleep 1 && changehosts
    else
        "$OFFICIAL_TAILSCALE" "$@"
    fi
}

# 🔥 Thực thi lệnh
tailscale_cmd "$@"

🔧 2. Cài Đặt

🏗️ Bước 1: Sao Chép Script

Sao chép nội dung trên vào một file và lưu dưới tên tailscale_script.sh.

nano ~/tailscale_script.sh

📌 Dán nội dung vào rồi lưu lại (Ctrl + X, nhấn Y, rồi Enter).

🔓 Bước 2: Cấp Quyền Thực Thi

chmod +x ~/tailscale_script.sh

📂 Bước 3: Đưa Script vào /usr/local/bin

sudo cp ~/tailscale_script.sh /usr/local/bin/tailscale

🏎️ Bước 4: Tạo Alias Hoặc Symlink (Tùy Chọn)

Nếu muốn gọi nhanh các lệnh tsup, tsdown, tsmenu, hãy tạo symlink:

sudo ln -s /usr/local/bin/tailscale /usr/local/bin/tsup
sudo ln -s /usr/local/bin/tailscale /usr/local/bin/tsdown

Hoặc thêm alias vào ~/.zshrc hoặc ~/.bashrc:

echo 'alias tsup="tailscale up"' >> ~/.zshrc
echo 'alias tsdown="tailscale down"' >> ~/.zshrc
source ~/.zshrc

🛠️ 3. Sử Dụng

  • 🚀 Bật Tailscale:
  tsup
  • 🛑 Tắt Tailscale:
  tsdown
  • 🔍 Kiểm tra trạng thái Tailscale:
  tailscale status

🎯 Kết Luận

Với script này, bạn có thể dễ dàng bật/tắt Tailscale ⚡ và tự động chuyển đổi giữa IP Private 🔒 và IP Tailscale 🌐. Nếu có lỗi, kiểm tra lại đường dẫn binary của Tailscale hoặc danh sách IP alias.

💡 Chúc bạn thành công! 🚀

Similar Posts

Để lại một bình luận

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *