Proxmox VE LXC Tag isnt working on pve 9.0.3 #1655

Closed
opened 2025-11-20 05:14:17 -05:00 by saavagebueno · 6 comments
Owner

Originally created by @Kaputtnique on GitHub (Aug 8, 2025).

Have you read and understood the above guidelines?

yes

📜 What is the name of the script you are using?

Proxmox VE LXC Tag

📂 What was the exact command used to execute the script?

bash -c "$(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/tools/pve/add-iptag.sh)"

⚙️ What settings are you using?

  • Default Settings
  • Advanced Settings

🖥️ Which Linux distribution are you using?

No response

📝 Provide a clear and concise description of the issue.

✖️ This version of Proxmox Virtual Environment is not supported
✖️ ⚠️ Requires Proxmox Virtual Environment Version 8.0 or later.
✖️ Exiting...

🔄 Steps to reproduce the issue.

Tested on PVE 9.0.3 fresh install (and updated + net-tools and ipcalc Installed

Paste the full error output (if available).

✖️ This version of Proxmox Virtual Environment is not supported
✖️ ⚠️ Requires Proxmox Virtual Environment Version 8.0 or later.
✖️ Exiting...

🖼️ Additional context (optional).

No response

Originally created by @Kaputtnique on GitHub (Aug 8, 2025). ### ✅ Have you read and understood the above guidelines? yes ### 📜 What is the name of the script you are using? Proxmox VE LXC Tag ### 📂 What was the exact command used to execute the script? bash -c "$(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/tools/pve/add-iptag.sh)" ### ⚙️ What settings are you using? - [x] Default Settings - [ ] Advanced Settings ### 🖥️ Which Linux distribution are you using? _No response_ ### 📝 Provide a clear and concise description of the issue. ✖️ This version of Proxmox Virtual Environment is not supported ✖️ ⚠️ Requires Proxmox Virtual Environment Version 8.0 or later. ✖️ Exiting... ### 🔄 Steps to reproduce the issue. Tested on PVE 9.0.3 fresh install (and updated + net-tools and ipcalc Installed ### ❌ Paste the full error output (if available). ✖️ This version of Proxmox Virtual Environment is not supported ✖️ ⚠️ Requires Proxmox Virtual Environment Version 8.0 or later. ✖️ Exiting... ### 🖼️ Additional context (optional). _No response_
saavagebueno added the bug label 2025-11-20 05:14:17 -05:00
Author
Owner

@webhdx commented on GitHub (Aug 8, 2025):

@Kaputtnique Should be working fine now :)

@webhdx commented on GitHub (Aug 8, 2025): @Kaputtnique Should be working fine now :)
Author
Owner

@Kaputtnique commented on GitHub (Aug 8, 2025):

umm, it worked.. but .. i only see 2 octets? i mean "192.168.1.1" is the ip .. and i see only "1.1" ? is that normal? :-D

@Kaputtnique commented on GitHub (Aug 8, 2025): umm, it worked.. but .. i only see 2 octets? i mean "192.168.1.1" is the ip .. and i see only "1.1" ? is that normal? :-D
Author
Owner

@MickLesk commented on GitHub (Aug 8, 2025):

Read Guide in Discussions

@MickLesk commented on GitHub (Aug 8, 2025): Read Guide in Discussions
Author
Owner

@webhdx commented on GitHub (Aug 8, 2025):

Yes, read the docs, it's configurable.

@webhdx commented on GitHub (Aug 8, 2025): Yes, read the docs, it's configurable.
Author
Owner

@Kaputtnique commented on GitHub (Aug 8, 2025):

oh sorry :-D i see.. wonderful, i think its closed <3 thanks

@Kaputtnique commented on GitHub (Aug 8, 2025): oh sorry :-D i see.. wonderful, i think its closed <3 thanks
Author
Owner

@tuxpowered commented on GitHub (Nov 18, 2025):

Seems like it actually is removing tags, I have some vms where the tags are all stripped from them, and nothing is added even though the script says it is. Heres the output


root@pve-02:~# pvesh get /cluster/resources --type vm --output-format json | jq -r 'map(select(.type == "qemu" and .node == "pve-02" and .tags ))'
[
  {
    "cpu": 0.0387644156982111,
    "disk": 0,
    "diskread": 16384,
    "diskwrite": 21162496,
    "hastate": "started",
    "id": "qemu/101",
    "maxcpu": 4,
    "maxdisk": 21474836480,
    "maxmem": 4294967296,
    "mem": 2514018304,
    "memhost": 3594272768,
    "name": "vm1.com",
    "netin": 296718,
    "netout": 427653,
    "node": "pve-02",
    "status": "running",
    "tags": "switchvox",
    "template": 0,
    "type": "qemu",
    "uptime": 2124,
    "vmid": 101
  },
  {
    "cpu": 0.0943829251782531,
    "disk": 0,
    "diskread": 163840,
    "diskwrite": 27054080,
    "hastate": "started",
    "id": "qemu/103",
    "maxcpu": 4,
    "maxdisk": 21474836480,
    "maxmem": 8589934592,
    "mem": 2695524352,
    "memhost": 4103361536,
    "name": "vm2.com",
    "netin": 45490307,
    "netout": 45829903,
    "node": "pve-02",
    "status": "running",
    "tags": "10.0.100.102;switchvox",
    "template": 0,
    "type": "qemu",
    "uptime": 2114,
    "vmid": 103
  },
  {
    "cpu": 0.0378013246249636,
    "disk": 0,
    "diskread": 0,
    "diskwrite": 48111104,
    "hastate": "started",
    "id": "qemu/104",
    "maxcpu": 4,
    "maxdisk": 21474836480,
    "maxmem": 8589934592,
    "mem": 3042852864,
    "memhost": 4271351808,
    "name": "vm3.com",
    "netin": 2564614,
    "netout": 3112610,
    "node": "pve-02",
    "status": "running",
    "tags": "10.0.100.101;switchvox",
    "template": 0,
    "type": "qemu",
    "uptime": 2114,
    "vmid": 104
  }
]

running iptag-run we can see that it detects the IP for all the vms, and says it has created the new tags, but it insteads actually clears them all

root@pve-02:~# iptag-run 

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
✓ IP-Tag service started successfully
ℹ Loop interval: 600 seconds
ℹ Debug mode: true
ℹ Tag format: full
ℹ Allowed CIDRs: 192.168.0.0/16 10.0.0.0/8 100.64.0.0/10
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

ℹ Starting periodic check
ℹ Processing 3 virtual machine(s) sequentially
[DEBUG] vm 101: starting IP detection
[DEBUG] vm 101: found MACs: BC:24:11:F9:63:FC
BC:24:11:F9:63:FC
[DEBUG] vm 101: trying qm guest agent first
[DEBUG] vm 101: found IP 10.0.100.100 via qm guest cmd
[DEBUG] vm 101: refreshing ARP table and checking
[DEBUG] vm 101: final IPs: ' 10.0.100.100'
[DEBUG] vm 101 current_ips_full: ' 10.0.100.100'
[DEBUG] vm 101 CIDR_LIST: 192.168.0.0/16 10.0.0.0/8 100.64.0.0/10
[DEBUG] vm 101 processing IP: '10.0.100.100'
[DEBUG] vm 101 IP '10.0.100.100' is valid
[DEBUG] Checking IP '10.0.100.100' against CIDRs: '192.168.0.0/16 10.0.0.0/8 100.64.0.0/10'
[DEBUG] Testing IP '10.0.100.100' against CIDR '192.168.0.0/16'
[DEBUG] ip_in_cidr: checking '10.0.100.100' against '192.168.0.0/16'
[DEBUG] ip_in_cidr: using manual check (bypassing ipcalc)
[DEBUG] ip_in_cidr: IP=10.0.100.100 (167797860), Network=192.168.0.0 (3232235520), Prefix=16
[DEBUG] ip_in_cidr: Mask=281474976645120 (hex: 0xffffffff0000)
[DEBUG] ip_in_cidr: IP&Mask=167772160 (10.0.0.0)
[DEBUG] ip_in_cidr: Net&Mask=3232235520 (192.168.0.0)
[DEBUG] ip_in_cidr: manual check FAILED - IP is NOT in CIDR
[DEBUG] IP '10.0.100.100' does not match CIDR '192.168.0.0/16'
[DEBUG] Testing IP '10.0.100.100' against CIDR '10.0.0.0/8'
[DEBUG] ip_in_cidr: checking '10.0.100.100' against '10.0.0.0/8'
[DEBUG] ip_in_cidr: using manual check (bypassing ipcalc)
[DEBUG] ip_in_cidr: IP=10.0.100.100 (167797860), Network=10.0.0.0 (167772160), Prefix=8
[DEBUG] ip_in_cidr: Mask=72057594021150720 (hex: 0xffffffff000000)
[DEBUG] ip_in_cidr: IP&Mask=167772160 (10.0.0.0)
[DEBUG] ip_in_cidr: Net&Mask=167772160 (10.0.0.0)
[DEBUG] ip_in_cidr: manual check PASSED - IP is in CIDR
[DEBUG] IP '10.0.100.100' matches CIDR '10.0.0.0/8' - PASSED
[DEBUG] vm 101 IP '10.0.100.100' passed CIDR check
[DEBUG] vm 101 formatted '10.0.100.100' -> '10.0.100.100'
[DEBUG] vm 101 final formatted_ips: 10.0.100.100
[DEBUG] vm 101 old_tags: '10.0.100.100;switchvox;switchvox;switchvox;switchvox'
[DEBUG] vm 101 new_tags: '10.0.100.100;switchvox;switchvox;switchvox;switchvox'
[DEBUG] vm 101 tags_equal: true
= VM 101: IP tag [10.0.100.100] unchanged
[DEBUG] vm 103: starting IP detection
[DEBUG] vm 103: found MACs: BC:24:11:3D:D7:EE
[DEBUG] vm 103: trying qm guest agent first
[DEBUG] vm 103: found IP 10.0.100.102 via qm guest cmd
[DEBUG] vm 103: refreshing ARP table and checking
[DEBUG] vm 103: final IPs: ' 10.0.100.102'
[DEBUG] vm 103 current_ips_full: ' 10.0.100.102'
[DEBUG] vm 103 CIDR_LIST: 192.168.0.0/16 10.0.0.0/8 100.64.0.0/10
[DEBUG] vm 103 processing IP: '10.0.100.102'
[DEBUG] vm 103 IP '10.0.100.102' is valid
[DEBUG] Checking IP '10.0.100.102' against CIDRs: '192.168.0.0/16 10.0.0.0/8 100.64.0.0/10'
[DEBUG] Testing IP '10.0.100.102' against CIDR '192.168.0.0/16'
[DEBUG] ip_in_cidr: checking '10.0.100.102' against '192.168.0.0/16'
[DEBUG] ip_in_cidr: using manual check (bypassing ipcalc)
[DEBUG] ip_in_cidr: IP=10.0.100.102 (167797862), Network=192.168.0.0 (3232235520), Prefix=16
[DEBUG] ip_in_cidr: Mask=281474976645120 (hex: 0xffffffff0000)
[DEBUG] ip_in_cidr: IP&Mask=167772160 (10.0.0.0)
[DEBUG] ip_in_cidr: Net&Mask=3232235520 (192.168.0.0)
[DEBUG] ip_in_cidr: manual check FAILED - IP is NOT in CIDR
[DEBUG] IP '10.0.100.102' does not match CIDR '192.168.0.0/16'
[DEBUG] Testing IP '10.0.100.102' against CIDR '10.0.0.0/8'
[DEBUG] ip_in_cidr: checking '10.0.100.102' against '10.0.0.0/8'
[DEBUG] ip_in_cidr: using manual check (bypassing ipcalc)
[DEBUG] ip_in_cidr: IP=10.0.100.102 (167797862), Network=10.0.0.0 (167772160), Prefix=8
[DEBUG] ip_in_cidr: Mask=72057594021150720 (hex: 0xffffffff000000)
[DEBUG] ip_in_cidr: IP&Mask=167772160 (10.0.0.0)
[DEBUG] ip_in_cidr: Net&Mask=167772160 (10.0.0.0)
[DEBUG] ip_in_cidr: manual check PASSED - IP is in CIDR
[DEBUG] IP '10.0.100.102' matches CIDR '10.0.0.0/8' - PASSED
[DEBUG] vm 103 IP '10.0.100.102' passed CIDR check
[DEBUG] vm 103 formatted '10.0.100.102' -> '10.0.100.102'
[DEBUG] vm 103 final formatted_ips: 10.0.100.102
[DEBUG] vm 103 old_tags: '10.0.100.102;switchvox'
[DEBUG] vm 103 new_tags: '10.0.100.102;switchvox'
[DEBUG] vm 103 tags_equal: true
= VM 103: IP tag [10.0.100.102] unchanged
[DEBUG] vm 104: starting IP detection
[DEBUG] vm 104: found MACs: 02:67:45:77:01:7f
[DEBUG] vm 104: trying qm guest agent first
[DEBUG] vm 104: found IP 10.0.100.101 via qm guest cmd
[DEBUG] vm 104: refreshing ARP table and checking
[DEBUG] vm 104: final IPs: ' 10.0.100.101'
[DEBUG] vm 104 current_ips_full: ' 10.0.100.101'
[DEBUG] vm 104 CIDR_LIST: 192.168.0.0/16 10.0.0.0/8 100.64.0.0/10
[DEBUG] vm 104 processing IP: '10.0.100.101'
[DEBUG] vm 104 IP '10.0.100.101' is valid
[DEBUG] Checking IP '10.0.100.101' against CIDRs: '192.168.0.0/16 10.0.0.0/8 100.64.0.0/10'
[DEBUG] Testing IP '10.0.100.101' against CIDR '192.168.0.0/16'
[DEBUG] ip_in_cidr: checking '10.0.100.101' against '192.168.0.0/16'
[DEBUG] ip_in_cidr: using manual check (bypassing ipcalc)
[DEBUG] ip_in_cidr: IP=10.0.100.101 (167797861), Network=192.168.0.0 (3232235520), Prefix=16
[DEBUG] ip_in_cidr: Mask=281474976645120 (hex: 0xffffffff0000)
[DEBUG] ip_in_cidr: IP&Mask=167772160 (10.0.0.0)
[DEBUG] ip_in_cidr: Net&Mask=3232235520 (192.168.0.0)
[DEBUG] ip_in_cidr: manual check FAILED - IP is NOT in CIDR
[DEBUG] IP '10.0.100.101' does not match CIDR '192.168.0.0/16'
[DEBUG] Testing IP '10.0.100.101' against CIDR '10.0.0.0/8'
[DEBUG] ip_in_cidr: checking '10.0.100.101' against '10.0.0.0/8'
[DEBUG] ip_in_cidr: using manual check (bypassing ipcalc)
[DEBUG] ip_in_cidr: IP=10.0.100.101 (167797861), Network=10.0.0.0 (167772160), Prefix=8
[DEBUG] ip_in_cidr: Mask=72057594021150720 (hex: 0xffffffff000000)
[DEBUG] ip_in_cidr: IP&Mask=167772160 (10.0.0.0)
[DEBUG] ip_in_cidr: Net&Mask=167772160 (10.0.0.0)
[DEBUG] ip_in_cidr: manual check PASSED - IP is in CIDR
[DEBUG] IP '10.0.100.101' matches CIDR '10.0.0.0/8' - PASSED
[DEBUG] vm 104 IP '10.0.100.101' passed CIDR check
[DEBUG] vm 104 formatted '10.0.100.101' -> '10.0.100.101'
[DEBUG] vm 104 final formatted_ips: 10.0.100.101
[DEBUG] vm 104 old_tags: '10.0.100.101;switchvox'
[DEBUG] vm 104 new_tags: '10.0.100.101;switchvox'
[DEBUG] vm 104 tags_equal: true
= VM 104: IP tag [10.0.100.101] unchanged
✓ Completed processing virtual machines
 Completed processing virtual machines
root@pve-02:~# pvesh get /cluster/resources --type vm --output-format json | jq -r 'map(select(.type == "qemu" and .node == "pve-02" and .tags ))'
[
  {
    "cpu": 0.0330003779120459,
    "disk": 0,
    "diskread": 163840,
    "diskwrite": 30223872,
    "hastate": "started",
    "id": "qemu/103",
    "maxcpu": 4,
    "maxdisk": 21474836480,
    "maxmem": 8589934592,
    "mem": 2872643584,
    "memhost": 4283708416,
    "name": "vm2.com",
    "netin": 45643705,
    "netout": 46007591,
    "node": "pve-02",
    "status": "running",
    "tags": "10.0.100.102;switchvox",
    "template": 0,
    "type": "qemu",
    "uptime": 2404,
    "vmid": 103
  },
  {
    "cpu": 0.0395041020260988,
    "disk": 0,
    "diskread": 0,
    "diskwrite": 55434752,
    "hastate": "started",
    "id": "qemu/104",
    "maxcpu": 4,
    "maxdisk": 21474836480,
    "maxmem": 8589934592,
    "mem": 2908229632,
    "memhost": 4116155392,
    "name": "vm3.com",
    "netin": 4293945,
    "netout": 4920905,
    "node": "pve-02",
    "status": "running",
    "tags": "10.0.100.101;switchvox",
    "template": 0,
    "type": "qemu",
    "uptime": 2404,
    "vmid": 104
  }
]

VM1 is removed from the output because all tags were removed. including those manually added.

I first noticed this when VM's ort LXCs were migrated between nodes.

And yes this happens on both LXC as well as VMs...

@tuxpowered commented on GitHub (Nov 18, 2025): Seems like it actually is removing tags, I have some vms where the tags are all stripped from them, and nothing is added even though the script says it is. Heres the output ```json root@pve-02:~# pvesh get /cluster/resources --type vm --output-format json | jq -r 'map(select(.type == "qemu" and .node == "pve-02" and .tags ))' [ { "cpu": 0.0387644156982111, "disk": 0, "diskread": 16384, "diskwrite": 21162496, "hastate": "started", "id": "qemu/101", "maxcpu": 4, "maxdisk": 21474836480, "maxmem": 4294967296, "mem": 2514018304, "memhost": 3594272768, "name": "vm1.com", "netin": 296718, "netout": 427653, "node": "pve-02", "status": "running", "tags": "switchvox", "template": 0, "type": "qemu", "uptime": 2124, "vmid": 101 }, { "cpu": 0.0943829251782531, "disk": 0, "diskread": 163840, "diskwrite": 27054080, "hastate": "started", "id": "qemu/103", "maxcpu": 4, "maxdisk": 21474836480, "maxmem": 8589934592, "mem": 2695524352, "memhost": 4103361536, "name": "vm2.com", "netin": 45490307, "netout": 45829903, "node": "pve-02", "status": "running", "tags": "10.0.100.102;switchvox", "template": 0, "type": "qemu", "uptime": 2114, "vmid": 103 }, { "cpu": 0.0378013246249636, "disk": 0, "diskread": 0, "diskwrite": 48111104, "hastate": "started", "id": "qemu/104", "maxcpu": 4, "maxdisk": 21474836480, "maxmem": 8589934592, "mem": 3042852864, "memhost": 4271351808, "name": "vm3.com", "netin": 2564614, "netout": 3112610, "node": "pve-02", "status": "running", "tags": "10.0.100.101;switchvox", "template": 0, "type": "qemu", "uptime": 2114, "vmid": 104 } ] ``` running `iptag-run` we can see that it detects the IP for all the vms, and says it has created the new tags, but it insteads actually clears them all ```bash root@pve-02:~# iptag-run ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ✓ IP-Tag service started successfully ℹ Loop interval: 600 seconds ℹ Debug mode: true ℹ Tag format: full ℹ Allowed CIDRs: 192.168.0.0/16 10.0.0.0/8 100.64.0.0/10 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ℹ Starting periodic check ℹ Processing 3 virtual machine(s) sequentially [DEBUG] vm 101: starting IP detection [DEBUG] vm 101: found MACs: BC:24:11:F9:63:FC BC:24:11:F9:63:FC [DEBUG] vm 101: trying qm guest agent first [DEBUG] vm 101: found IP 10.0.100.100 via qm guest cmd [DEBUG] vm 101: refreshing ARP table and checking [DEBUG] vm 101: final IPs: ' 10.0.100.100' [DEBUG] vm 101 current_ips_full: ' 10.0.100.100' [DEBUG] vm 101 CIDR_LIST: 192.168.0.0/16 10.0.0.0/8 100.64.0.0/10 [DEBUG] vm 101 processing IP: '10.0.100.100' [DEBUG] vm 101 IP '10.0.100.100' is valid [DEBUG] Checking IP '10.0.100.100' against CIDRs: '192.168.0.0/16 10.0.0.0/8 100.64.0.0/10' [DEBUG] Testing IP '10.0.100.100' against CIDR '192.168.0.0/16' [DEBUG] ip_in_cidr: checking '10.0.100.100' against '192.168.0.0/16' [DEBUG] ip_in_cidr: using manual check (bypassing ipcalc) [DEBUG] ip_in_cidr: IP=10.0.100.100 (167797860), Network=192.168.0.0 (3232235520), Prefix=16 [DEBUG] ip_in_cidr: Mask=281474976645120 (hex: 0xffffffff0000) [DEBUG] ip_in_cidr: IP&Mask=167772160 (10.0.0.0) [DEBUG] ip_in_cidr: Net&Mask=3232235520 (192.168.0.0) [DEBUG] ip_in_cidr: manual check FAILED - IP is NOT in CIDR [DEBUG] IP '10.0.100.100' does not match CIDR '192.168.0.0/16' [DEBUG] Testing IP '10.0.100.100' against CIDR '10.0.0.0/8' [DEBUG] ip_in_cidr: checking '10.0.100.100' against '10.0.0.0/8' [DEBUG] ip_in_cidr: using manual check (bypassing ipcalc) [DEBUG] ip_in_cidr: IP=10.0.100.100 (167797860), Network=10.0.0.0 (167772160), Prefix=8 [DEBUG] ip_in_cidr: Mask=72057594021150720 (hex: 0xffffffff000000) [DEBUG] ip_in_cidr: IP&Mask=167772160 (10.0.0.0) [DEBUG] ip_in_cidr: Net&Mask=167772160 (10.0.0.0) [DEBUG] ip_in_cidr: manual check PASSED - IP is in CIDR [DEBUG] IP '10.0.100.100' matches CIDR '10.0.0.0/8' - PASSED [DEBUG] vm 101 IP '10.0.100.100' passed CIDR check [DEBUG] vm 101 formatted '10.0.100.100' -> '10.0.100.100' [DEBUG] vm 101 final formatted_ips: 10.0.100.100 [DEBUG] vm 101 old_tags: '10.0.100.100;switchvox;switchvox;switchvox;switchvox' [DEBUG] vm 101 new_tags: '10.0.100.100;switchvox;switchvox;switchvox;switchvox' [DEBUG] vm 101 tags_equal: true = VM 101: IP tag [10.0.100.100] unchanged [DEBUG] vm 103: starting IP detection [DEBUG] vm 103: found MACs: BC:24:11:3D:D7:EE [DEBUG] vm 103: trying qm guest agent first [DEBUG] vm 103: found IP 10.0.100.102 via qm guest cmd [DEBUG] vm 103: refreshing ARP table and checking [DEBUG] vm 103: final IPs: ' 10.0.100.102' [DEBUG] vm 103 current_ips_full: ' 10.0.100.102' [DEBUG] vm 103 CIDR_LIST: 192.168.0.0/16 10.0.0.0/8 100.64.0.0/10 [DEBUG] vm 103 processing IP: '10.0.100.102' [DEBUG] vm 103 IP '10.0.100.102' is valid [DEBUG] Checking IP '10.0.100.102' against CIDRs: '192.168.0.0/16 10.0.0.0/8 100.64.0.0/10' [DEBUG] Testing IP '10.0.100.102' against CIDR '192.168.0.0/16' [DEBUG] ip_in_cidr: checking '10.0.100.102' against '192.168.0.0/16' [DEBUG] ip_in_cidr: using manual check (bypassing ipcalc) [DEBUG] ip_in_cidr: IP=10.0.100.102 (167797862), Network=192.168.0.0 (3232235520), Prefix=16 [DEBUG] ip_in_cidr: Mask=281474976645120 (hex: 0xffffffff0000) [DEBUG] ip_in_cidr: IP&Mask=167772160 (10.0.0.0) [DEBUG] ip_in_cidr: Net&Mask=3232235520 (192.168.0.0) [DEBUG] ip_in_cidr: manual check FAILED - IP is NOT in CIDR [DEBUG] IP '10.0.100.102' does not match CIDR '192.168.0.0/16' [DEBUG] Testing IP '10.0.100.102' against CIDR '10.0.0.0/8' [DEBUG] ip_in_cidr: checking '10.0.100.102' against '10.0.0.0/8' [DEBUG] ip_in_cidr: using manual check (bypassing ipcalc) [DEBUG] ip_in_cidr: IP=10.0.100.102 (167797862), Network=10.0.0.0 (167772160), Prefix=8 [DEBUG] ip_in_cidr: Mask=72057594021150720 (hex: 0xffffffff000000) [DEBUG] ip_in_cidr: IP&Mask=167772160 (10.0.0.0) [DEBUG] ip_in_cidr: Net&Mask=167772160 (10.0.0.0) [DEBUG] ip_in_cidr: manual check PASSED - IP is in CIDR [DEBUG] IP '10.0.100.102' matches CIDR '10.0.0.0/8' - PASSED [DEBUG] vm 103 IP '10.0.100.102' passed CIDR check [DEBUG] vm 103 formatted '10.0.100.102' -> '10.0.100.102' [DEBUG] vm 103 final formatted_ips: 10.0.100.102 [DEBUG] vm 103 old_tags: '10.0.100.102;switchvox' [DEBUG] vm 103 new_tags: '10.0.100.102;switchvox' [DEBUG] vm 103 tags_equal: true = VM 103: IP tag [10.0.100.102] unchanged [DEBUG] vm 104: starting IP detection [DEBUG] vm 104: found MACs: 02:67:45:77:01:7f [DEBUG] vm 104: trying qm guest agent first [DEBUG] vm 104: found IP 10.0.100.101 via qm guest cmd [DEBUG] vm 104: refreshing ARP table and checking [DEBUG] vm 104: final IPs: ' 10.0.100.101' [DEBUG] vm 104 current_ips_full: ' 10.0.100.101' [DEBUG] vm 104 CIDR_LIST: 192.168.0.0/16 10.0.0.0/8 100.64.0.0/10 [DEBUG] vm 104 processing IP: '10.0.100.101' [DEBUG] vm 104 IP '10.0.100.101' is valid [DEBUG] Checking IP '10.0.100.101' against CIDRs: '192.168.0.0/16 10.0.0.0/8 100.64.0.0/10' [DEBUG] Testing IP '10.0.100.101' against CIDR '192.168.0.0/16' [DEBUG] ip_in_cidr: checking '10.0.100.101' against '192.168.0.0/16' [DEBUG] ip_in_cidr: using manual check (bypassing ipcalc) [DEBUG] ip_in_cidr: IP=10.0.100.101 (167797861), Network=192.168.0.0 (3232235520), Prefix=16 [DEBUG] ip_in_cidr: Mask=281474976645120 (hex: 0xffffffff0000) [DEBUG] ip_in_cidr: IP&Mask=167772160 (10.0.0.0) [DEBUG] ip_in_cidr: Net&Mask=3232235520 (192.168.0.0) [DEBUG] ip_in_cidr: manual check FAILED - IP is NOT in CIDR [DEBUG] IP '10.0.100.101' does not match CIDR '192.168.0.0/16' [DEBUG] Testing IP '10.0.100.101' against CIDR '10.0.0.0/8' [DEBUG] ip_in_cidr: checking '10.0.100.101' against '10.0.0.0/8' [DEBUG] ip_in_cidr: using manual check (bypassing ipcalc) [DEBUG] ip_in_cidr: IP=10.0.100.101 (167797861), Network=10.0.0.0 (167772160), Prefix=8 [DEBUG] ip_in_cidr: Mask=72057594021150720 (hex: 0xffffffff000000) [DEBUG] ip_in_cidr: IP&Mask=167772160 (10.0.0.0) [DEBUG] ip_in_cidr: Net&Mask=167772160 (10.0.0.0) [DEBUG] ip_in_cidr: manual check PASSED - IP is in CIDR [DEBUG] IP '10.0.100.101' matches CIDR '10.0.0.0/8' - PASSED [DEBUG] vm 104 IP '10.0.100.101' passed CIDR check [DEBUG] vm 104 formatted '10.0.100.101' -> '10.0.100.101' [DEBUG] vm 104 final formatted_ips: 10.0.100.101 [DEBUG] vm 104 old_tags: '10.0.100.101;switchvox' [DEBUG] vm 104 new_tags: '10.0.100.101;switchvox' [DEBUG] vm 104 tags_equal: true = VM 104: IP tag [10.0.100.101] unchanged ✓ Completed processing virtual machines ``` ```json ✓ Completed processing virtual machines root@pve-02:~# pvesh get /cluster/resources --type vm --output-format json | jq -r 'map(select(.type == "qemu" and .node == "pve-02" and .tags ))' [ { "cpu": 0.0330003779120459, "disk": 0, "diskread": 163840, "diskwrite": 30223872, "hastate": "started", "id": "qemu/103", "maxcpu": 4, "maxdisk": 21474836480, "maxmem": 8589934592, "mem": 2872643584, "memhost": 4283708416, "name": "vm2.com", "netin": 45643705, "netout": 46007591, "node": "pve-02", "status": "running", "tags": "10.0.100.102;switchvox", "template": 0, "type": "qemu", "uptime": 2404, "vmid": 103 }, { "cpu": 0.0395041020260988, "disk": 0, "diskread": 0, "diskwrite": 55434752, "hastate": "started", "id": "qemu/104", "maxcpu": 4, "maxdisk": 21474836480, "maxmem": 8589934592, "mem": 2908229632, "memhost": 4116155392, "name": "vm3.com", "netin": 4293945, "netout": 4920905, "node": "pve-02", "status": "running", "tags": "10.0.100.101;switchvox", "template": 0, "type": "qemu", "uptime": 2404, "vmid": 104 } ] ``` _VM1 is removed from the output because all tags were removed. including those manually added._ I first noticed this when VM's ort LXCs were migrated between nodes. And yes this happens on both LXC as well as VMs...
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: SVI/ProxmoxVE#1655