[GH-ISSUE #10704] openwrt - fails to install with USB NICs (USB -> Ethernet Adapter) due to forced LAN VLAN #2306

Closed
opened 2026-02-26 12:51:59 +03:00 by kerem · 2 comments
Owner

Originally created by @Sewer56 on GitHub (Jan 11, 2026).
Original GitHub issue: https://github.com/community-scripts/ProxmoxVE/issues/10704

Have you read and understood the above guidelines?

yes

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

OpenWrt

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

bash -c "$(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/vm/openwrt-vm.sh)"

⚙️ What settings are you using?

  • Default Settings
  • Advanced Settings

🖥️ Which Linux distribution are you using?

No response

📈 Which Proxmox version are you on?

pve-manager/9.1.4/5ac30304265fbd8e (running kernel: 6.17.4-2-pve)

📝 Provide a clear and concise description of the issue.

When I connect USB Ethernet adapter I get devices named like

  • enx00e04c6cfdc9
  • enx6c1ff768f7fe

As opposed to say , nic0, nic1

When you use the advanced install, the script always sets the VLAN tags for LAN (not WAN)

  if VLAN2=$(whiptail --backtitle "Proxmox VE Helper Scripts" --inputbox "Set a LAN Vlan" 8 58 999 --title "LAN VLAN" --cancel-button Exit-Script 3>&1 1>&2 2>&3); then
    if [ -z $VLAN2 ]; then
      VLAN2="999"
      LAN_VLAN=",tag=$VLAN2"
    else
      LAN_VLAN=",tag=$VLAN2"
    fi
    echo -e "${DGN}Using LAN Vlan: ${BGN}$VLAN2${CL}"
  else
    exit-script
  fi

i.e. if blank, set to 999 , otherwise user's input.

Consequently, when the VM boots, a QEMU error is encountered (see below), because the interface name is too long.
After boot fails, it's assumed the script failed. So, the VM then is immediately deleted, leaving nothing behind.

🔄 Steps to reproduce the issue.

See above.

Paste the full error output (if available).

   ✔️   Network interfaces configured in OpenWrt
   ✔️   OpenWrt has shut down
   ✔️   Bridge interfaces added
   Starting OpenWrt VM...can't add vlan tag 999 to interface enx6c1ff768f7fe - the interface name enx6c1ff768f7fe.999 is too long at /usr/share/perl5/PVE/Network.pm line 180.
kvm: -netdev type=tap,id=net0,ifname=tap100i0,script=/usr/libexec/qemu-server/pve-bridge,downscript=/usr/libexec/qemu-server/pve-bridgedown,vhost=on: network script /usr/libexec/qemu-server/pve-bridge failed with status 512
start failed: QEMU exited with code 1
[ERROR] in line 646: exit code qm start $VMID: while executing command qm start $VMID

qemu error on proxmox' end.

🖼️ Additional context (optional).

You can work around it by setting Start VM when completed? -> false.
Then manually removing the 'tag' from the VM.
Took a bit to figure out.

By all means, issue is on proxmox' end, but the defaults, and even advanced settings will lend the user in a situation where the VM is deleted due to failure.

Originally created by @Sewer56 on GitHub (Jan 11, 2026). Original GitHub issue: https://github.com/community-scripts/ProxmoxVE/issues/10704 ### ✅ Have you read and understood the above guidelines? yes ### 📜 What is the name of the script you are using? OpenWrt ### 📂 What was the exact command used to execute the script? bash -c "$(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/vm/openwrt-vm.sh)" ### ⚙️ What settings are you using? - [ ] Default Settings - [x] Advanced Settings ### 🖥️ Which Linux distribution are you using? _No response_ ### 📈 Which Proxmox version are you on? pve-manager/9.1.4/5ac30304265fbd8e (running kernel: 6.17.4-2-pve) ### 📝 Provide a clear and concise description of the issue. When I connect USB Ethernet adapter I get devices named like - enx00e04c6cfdc9 - enx6c1ff768f7fe As opposed to say , `nic0`, `nic1` When you use the advanced install, the script always sets the VLAN tags for LAN (not WAN) ```bash if VLAN2=$(whiptail --backtitle "Proxmox VE Helper Scripts" --inputbox "Set a LAN Vlan" 8 58 999 --title "LAN VLAN" --cancel-button Exit-Script 3>&1 1>&2 2>&3); then if [ -z $VLAN2 ]; then VLAN2="999" LAN_VLAN=",tag=$VLAN2" else LAN_VLAN=",tag=$VLAN2" fi echo -e "${DGN}Using LAN Vlan: ${BGN}$VLAN2${CL}" else exit-script fi ``` i.e. if blank, set to 999 , otherwise user's input. Consequently, when the VM boots, a QEMU error is encountered (see below), because the interface name is too long. After boot fails, it's assumed the script failed. So, the VM then is immediately deleted, leaving nothing behind. ### 🔄 Steps to reproduce the issue. See above. ### ❌ Paste the full error output (if available). ``` ✔️ Network interfaces configured in OpenWrt ✔️ OpenWrt has shut down ✔️ Bridge interfaces added Starting OpenWrt VM...can't add vlan tag 999 to interface enx6c1ff768f7fe - the interface name enx6c1ff768f7fe.999 is too long at /usr/share/perl5/PVE/Network.pm line 180. kvm: -netdev type=tap,id=net0,ifname=tap100i0,script=/usr/libexec/qemu-server/pve-bridge,downscript=/usr/libexec/qemu-server/pve-bridgedown,vhost=on: network script /usr/libexec/qemu-server/pve-bridge failed with status 512 start failed: QEMU exited with code 1 [ERROR] in line 646: exit code qm start $VMID: while executing command qm start $VMID ``` qemu error on proxmox' end. ### 🖼️ Additional context (optional). You can work around it by setting `Start VM when completed?` -> `false`. Then manually removing the 'tag' from the VM. Took a bit to figure out. By all means, issue is on proxmox' end, but the defaults, and even advanced settings will lend the user in a situation where the VM is deleted due to failure.
kerem 2026-02-26 12:51:59 +03:00
  • closed this issue
  • added the
    bug
    label
Author
Owner

@MickLesk commented on GitHub (Jan 11, 2026):

Try to make an PR. Nobody from us can test such Special cases. Its Not an Script issue per se, its an very very special config

<!-- gh-comment-id:3734777456 --> @MickLesk commented on GitHub (Jan 11, 2026): Try to make an PR. Nobody from us can test such Special cases. Its Not an Script issue per se, its an very very special config
Author
Owner

@Sewer56 commented on GitHub (Jan 13, 2026):

I forgot to reply, oops- 2 days late.

That's the thing, it's not a script issue per-se.
The caveat here is, the script is always adding a setting which is incompatible with this setup. i.e. it always sets a VLAN for LAN, regardless of whether the field is empty or not

  if VLAN2=$(whiptail --backtitle "Proxmox VE Helper Scripts" --inputbox "Set a LAN Vlan" 8 58 999 --title "LAN VLAN" --cancel-button Exit-Script 3>&1 1>&2 2>&3); then
    if [ -z $VLAN2 ]; then
      VLAN2="999"
      LAN_VLAN=",tag=$VLAN2"
    else
      LAN_VLAN=",tag=$VLAN2"
    fi
    echo -e "${DGN}Using LAN Vlan: ${BGN}$VLAN2${CL}"
  else
    exit-script
  fi

It does not do that for WAN however

  if VLAN1=$(whiptail --backtitle "Proxmox VE Helper Scripts" --inputbox "Set a WAN Vlan (leave blank for default)" 8 58 --title "WAN VLAN" --cancel-button Exit-Script 3>&1 1>&2 2>&3); then
    if [ -z $VLAN1 ]; then
      VLAN1="Default"
      VLAN=""
    else
      VLAN=",tag=$VLAN1"
    fi
    echo -e "${DGN}Using WAN Vlan: ${BGN}$VLAN1${CL}"
  else
    exit-script
  fi

Leaving blank for WAN makes it empty.

The only actionable thing here is to make it so LAN works in the same way as WAN, by allowing you to set no VLAN when the field is left blank.

But that's a breaking change, in the sense that a user leaving the field empty for default may now get a different behaviour. Whether that's ok- is more up to the masses to decide.

<!-- gh-comment-id:3741829161 --> @Sewer56 commented on GitHub (Jan 13, 2026): I forgot to reply, oops- 2 days late. That's the thing, it's not a script issue per-se. The caveat here is, the script is always adding a setting which is incompatible with this setup. i.e. it always sets a VLAN for LAN, regardless of whether the field is empty or not ``` if VLAN2=$(whiptail --backtitle "Proxmox VE Helper Scripts" --inputbox "Set a LAN Vlan" 8 58 999 --title "LAN VLAN" --cancel-button Exit-Script 3>&1 1>&2 2>&3); then if [ -z $VLAN2 ]; then VLAN2="999" LAN_VLAN=",tag=$VLAN2" else LAN_VLAN=",tag=$VLAN2" fi echo -e "${DGN}Using LAN Vlan: ${BGN}$VLAN2${CL}" else exit-script fi ``` It does not do that for WAN however ``` if VLAN1=$(whiptail --backtitle "Proxmox VE Helper Scripts" --inputbox "Set a WAN Vlan (leave blank for default)" 8 58 --title "WAN VLAN" --cancel-button Exit-Script 3>&1 1>&2 2>&3); then if [ -z $VLAN1 ]; then VLAN1="Default" VLAN="" else VLAN=",tag=$VLAN1" fi echo -e "${DGN}Using WAN Vlan: ${BGN}$VLAN1${CL}" else exit-script fi ``` Leaving blank for WAN makes it empty. The only actionable thing here is to make it so LAN works in the same way as WAN, by allowing you to set no VLAN when the field is left blank. But that's a breaking change, in the sense that a user leaving the field empty for default may now get a different behaviour. Whether that's ok- is more up to the masses to decide.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/ProxmoxVE#2306
No description provided.