Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

remote start-tunnel error when connect device with usbfluxd #930

Open
li8911255 opened this issue Apr 12, 2024 · 6 comments
Open

remote start-tunnel error when connect device with usbfluxd #930

li8911255 opened this issue Apr 12, 2024 · 6 comments

Comments

@li8911255
Copy link

Test environment

  • macOS Ventura 13.5
  • iPhone 13 Pro , iOS 17.2.1

Describe the bug
After connect device from usbfluxd, remote start-tunnel return

ERROR Device is not connected

but usbmux list can print my device info correctly.

@doronz88
Copy link
Owner

Please provide exact steps to reproduce

@li8911255
Copy link
Author

li8911255 commented Apr 15, 2024

@doronz88

Please provide exact steps to reproduce

To Reproduce
Steps to reproduce the behavior:

  1. Two macs located on the same LAN
  2. Mac 1:Launch usbfluxd with root privileges (sudo ./usbfluxd -f),then launch socat to transferring data between addresses(socat tcp-listen:5000,fork unix-connect:/var/run/usbmuxd)
  3. Mac 2:Connect to the remote Mac 1 (sudo ./usbfluxd -f -r #Mac 1 ip:5000)
  4. now Mac 2 can list Mac 1 physically connected iOS device(Both idevice_id -l and pymobiledevice3 usbmux list),but pymobiledevice3 remote start-tunnel return ERROR Device is not connected

@doronz88
Copy link
Owner

doronz88 commented Apr 16, 2024

I don't have two macs to test this with.
However, if you're working with corellium you don't need usbflux at all. You can simply pass --usbmux option.

For example:

pymobiledevice3 syslog live --usbmux IP:5000

Also, if you need tunnel establishment, the easier way would be to use lockdown tunnels but that depends on iOS >= 17.4.

sudo pymobiledevice3 lockdown start-tunnel --usbmux IP:5000

This should also prove much faster since it doesn't go through any middleware.

I had problems implementing the remote pairing required for their devices since they did something weird to the device pairing process.

@kelvin321
Copy link

Test environment

* macOS  Ventura 13.5

* iPhone 13 Pro , iOS 17.2.1

Describe the bug After connect device from usbfluxd, remote start-tunnel return

ERROR Device is not connected

but usbmux list can print my device info correctly.

remote tunnel requires IPv6 address (and a bonjour service on this address) provided by NCM, your iPhone is connected to another PC, so there's no iPhone's IPv6 address on the PC you runs start-tunnel, I guess.

@Dinip
Copy link

Dinip commented Feb 23, 2025

hey @kelvin321, did you ever get your setup to work?
I was trying a similar setup, but instead of your Mac1 machine, I'm using a linux machine with the ios device connected.

I'm using the --usbmux parameter as mentioned:
sudo pymobiledevice3 lockdown start-tunnel --usbmux IP:5000
The lockdown tunnel part seems to be working well.

Image

Image

I wonder how this is handled on corellium side, probably something else needs to be "proxied", so the client machine can access the device through the host machine?

@kelvin321
Copy link

hey @kelvin321, did you ever get your setup to work? I was trying a similar setup, but instead of your Mac1 machine, I'm using a linux machine with the ios device connected.

I'm using the --usbmux parameter as mentioned: sudo pymobiledevice3 lockdown start-tunnel --usbmux IP:5000 The lockdown tunnel part seems to be working well.

Image

Image

I wonder how this is handled on corellium side, probably something else needs to be "proxied", so the client machine can access the device through the host machine?

yes, I followed the solution in this thread: #566

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants