🚀 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! 🚀