[GH-ISSUE #4760] virtual_net: init virtual network controller error: device or resource busy #3761

Closed
opened 2026-05-05 14:24:35 -06:00 by gitea-mirror · 1 comment
Owner

Originally created by @synclab-srl on GitHub (Apr 18, 2025).
Original GitHub issue: https://github.com/fatedier/frp/issues/4760

Bug Description

Hi @fatedier

I am testing the functionality of virtual_network.

I have the following use case:

I have started two clients on two different remote machines.

When I try to start two visitors on my local laptop machine, I get the following error:

2025-04-18 14:45:47.985 [E] [client/service.go:180] init virtual network controller error: device or resource busy

This happens because the utun interface is busy with one of the two visitors.

It would be necessary for each visitors to open a different interface (utun0, utun1, utun2, utunN)

In this way from the same host it is possible to connect to different remote clients:

example:

100.85. 0.0/24 -> utun0
100.86. 1.0/24 -> utun1,
etc.

Thank you very much.

frpc Version

0.62.0

frps Version

0.62.0

System Architecture

linux/amd64

Configurations

VISITORS 1

serverAddr = "mydomain.net"

serverPort = 7835

auth.method = "token"
auth.token = "zzzzzz"

transport.protocol = "tcp"
transport.tls.enable = false

featureGates = { VirtualNet = true }
virtualNet.address = "100.90.0.2/24"

[[visitors]]
name = "vnet-t100ta-visitor"
type = "stcp"
serverName = "vnet01"
secretKey = "zzzzzz"
bindPort = -1
[visitors.plugin]
type = "virtual_net"
destinationIP = "100.90.0.1"

VISITORS 2

serverAddr = "mydomain.net"

serverPort = 7835

auth.method = "token"
auth.token = "zzzzzz"

transport.protocol = "tcp"
transport.tls.enable = false

featureGates = { VirtualNet = true }
virtualNet.address = "100.85.0.2/24"

[[visitors]]
name = "vnet-adiprint-visitor"
type = "stcp"
serverName = "vnet02"
secretKey = "zzzzzz"
bindPort = -1
[visitors.plugin]
type = "virtual_net"
destinationIP = "100.85.0.1"

Logs

2025-04-18 14:45:48.651 [E] [client/service.go:180] init virtual network controller error: device or resource busy

Steps to reproduce

...

Affected area

  • Docs
  • Installation
  • Performance and Scalability
  • Security
  • User Experience
  • Test and Release
  • Developer Infrastructure
  • Client Plugin
  • Server Plugin
  • Extensions
  • Others
Originally created by @synclab-srl on GitHub (Apr 18, 2025). Original GitHub issue: https://github.com/fatedier/frp/issues/4760 ### Bug Description Hi @fatedier I am testing the functionality of virtual_network. I have the following use case: I have started two clients on two different remote machines. When I try to start two visitors on my local laptop machine, I get the following error: ``` 2025-04-18 14:45:47.985 [E] [client/service.go:180] init virtual network controller error: device or resource busy ``` This happens because the utun interface is busy with one of the two visitors. It would be necessary for each visitors to open a different interface (utun0, utun1, utun2, utunN) In this way from the same host it is possible to connect to different remote clients: example: ``` 100.85. 0.0/24 -> utun0 100.86. 1.0/24 -> utun1, etc. ``` Thank you very much. ### frpc Version 0.62.0 ### frps Version 0.62.0 ### System Architecture linux/amd64 ### Configurations VISITORS 1 ``` serverAddr = "mydomain.net" serverPort = 7835 auth.method = "token" auth.token = "zzzzzz" transport.protocol = "tcp" transport.tls.enable = false featureGates = { VirtualNet = true } virtualNet.address = "100.90.0.2/24" [[visitors]] name = "vnet-t100ta-visitor" type = "stcp" serverName = "vnet01" secretKey = "zzzzzz" bindPort = -1 [visitors.plugin] type = "virtual_net" destinationIP = "100.90.0.1" ``` VISITORS 2 ``` serverAddr = "mydomain.net" serverPort = 7835 auth.method = "token" auth.token = "zzzzzz" transport.protocol = "tcp" transport.tls.enable = false featureGates = { VirtualNet = true } virtualNet.address = "100.85.0.2/24" [[visitors]] name = "vnet-adiprint-visitor" type = "stcp" serverName = "vnet02" secretKey = "zzzzzz" bindPort = -1 [visitors.plugin] type = "virtual_net" destinationIP = "100.85.0.1" ``` ### Logs ``` 2025-04-18 14:45:48.651 [E] [client/service.go:180] init virtual network controller error: device or resource busy ``` ### Steps to reproduce 1. 2. 3. ... ### Affected area - [ ] Docs - [ ] Installation - [ ] Performance and Scalability - [ ] Security - [ ] User Experience - [ ] Test and Release - [ ] Developer Infrastructure - [ ] Client Plugin - [ ] Server Plugin - [ ] Extensions - [ ] Others
gitea-mirror 2026-05-05 14:24:35 -06:00
  • closed this issue
  • added the
    todo
    label
Author
Owner

@manprint commented on GitHub (Apr 29, 2025):

Seems to work in 0.62.1.
I'll do more testing in the next few days.
Thanks

<!-- gh-comment-id:2837219956 --> @manprint commented on GitHub (Apr 29, 2025): Seems to work in 0.62.1. I'll do more testing in the next few days. Thanks
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: github-starred/frp#3761
No description provided.