From 31046758da1e0d2c8bbbc4e89aeb2793bb3db4ed Mon Sep 17 00:00:00 2001 From: sang Date: Fri, 19 Jul 2024 16:33:58 +0800 Subject: [PATCH] feat: add script --- README.md | 12 +++++++++- img/pve-lxc-iptag.png | Bin 0 -> 65040 bytes install.sh | 5 ++++ lxc-iptag | 53 ++++++++++++++++++++++++++++++++++++++++++ lxc-iptag.service | 11 +++++++++ 5 files changed, 80 insertions(+), 1 deletion(-) create mode 100644 img/pve-lxc-iptag.png create mode 100644 install.sh create mode 100755 lxc-iptag create mode 100644 lxc-iptag.service diff --git a/README.md b/README.md index d97ddd9..3d78282 100644 --- a/README.md +++ b/README.md @@ -1 +1,11 @@ -# lxc-iptag \ No newline at end of file +# lxc-iptag + +lxc-iptag is a simple script to add ip tags to LXC containers. + +![](./img/pve-lxc-iptag.png) + +## Installation + +```sh +curl -sL https://github.com/gitsang/lxc-iptag/raw/main/install.sh | sudo bash +``` diff --git a/img/pve-lxc-iptag.png b/img/pve-lxc-iptag.png new file mode 100644 index 0000000000000000000000000000000000000000..4b06b2a41552120f795c4777684db1bc4dfa5830 GIT binary patch literal 65040 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 255)); then + return 1 + fi + done + return 0 + else + return 1 + fi +} + +main() { + while true; do + # Set the IP tags for all LXC containers + lxc_name_list=$(pct list 2>/dev/null | grep -v VMID | awk '{print $1}') + for lxc_name in ${lxc_name_list}; do + new_tags=() + + # Get tags + old_tags=$(pct config ${lxc_name} | grep tags | awk '{print $2}' | sed 's/;/ /g') + for old_tag in ${old_tags}; do + if is_valid_ipv4 ${old_tag}; then + continue + fi + new_tags+=("${old_tag}") + done + + # Get the valid IPv4s + ips=$(lxc-info -n ${lxc_name} -i | awk '{print $2}') + for ip in ${ips}; do + if is_valid_ipv4 ${ip}; then + new_tags+=("${ip}") + fi + done + + # Set the tags + joined_tags=$(IFS=';'; echo "${new_tags[*]}") + echo "Setting ${lxc_name} tags to ${joined_tags}" + pct set ${lxc_name} -tags "${joined_tags}" + done + sleep 60 + done +} + +main diff --git a/lxc-iptag.service b/lxc-iptag.service new file mode 100644 index 0000000..08b0c5a --- /dev/null +++ b/lxc-iptag.service @@ -0,0 +1,11 @@ +[Unit] +Description=Start lxc-iptag service +After=network.target + +[Service] +Type=simple +ExecStart=/usr/local/bin/lxc-iptag +Restart=always + +[Install] +WantedBy=multi-user.target