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

Windows support #27

Closed
omar391 opened this issue Jan 5, 2021 · 15 comments
Closed

Windows support #27

omar391 opened this issue Jan 5, 2021 · 15 comments

Comments

@omar391
Copy link

omar391 commented Jan 5, 2021

Any plan or timeline to support windows platform?

@meh
Copy link
Owner

meh commented Jan 5, 2021

Nope, I haven't really used Windows since Windows XP.

Pull requests welcome tho 🐼

@NN-Binary
Copy link

That would be such a great addition, I think most users can't implement this crate yet because of Windows non supported

@zonyitoo
Copy link
Contributor

Maybe we could support it by wintun.

@zonyitoo
Copy link
Contributor

Here is a proposal about supporting Windows with wintun. cc @iamwwc if you are interested.

Wintun is a good Tun driver on Windows designed for working in WireGuard.

  1. Add a new unix module that wraps all android, ios, linux, macos, posix, and then make a new windows module in the platform.
  2. Configuration on Windows will have optional fields wintun_library_path, wintun_pool
  3. Create a Device that contains Adapter and Session
  4. For AsyncDevice, starts 2 async tasks with spawn_blocking and then all reads and writes will send and recv from channels to those tasks.

Some problems for discussion:

  1. Should we keep the wintun as a singleton?
  2. How to support multiple interfaces (adapters) within the same "pool"?
  3. Should we support multiple "session"?

@mokhtarabadi
Copy link
Contributor

Any news?

@amyipdev
Copy link

amyipdev commented Jan 1, 2023

Bumping this since I think it could be really useful, I'm working on https://github.com/amyipdev/acc, after I found out pcap wouldn't work and I needed TUN, wintun support would be great.

@mokhtarabadi
Copy link
Contributor

@amyipdev
Copy link

amyipdev commented Apr 1, 2023

@mokhtarabadi i was gonna use that, but tun2ostrich has now been removed from github...

@omar391
Copy link
Author

omar391 commented Apr 2, 2023

@amyipdev
Copy link

amyipdev commented Apr 2, 2023

@omar391 thanks

@M0dEx
Copy link

M0dEx commented Apr 11, 2023

Any updates?

I could really use Windows support in my project Quincy.

I would love to help with anything I can to get this done in the next couple of weeks.

@mokhtarabadi
Copy link
Contributor

@YosefUT can you help to add support for windows?

@xmh0511
Copy link
Contributor

xmh0511 commented Sep 14, 2023

Any news?

@M0dEx
Copy link

M0dEx commented Oct 31, 2023

This can be closed now, as Windows support has been added, correct?

zonyitoo pushed a commit to zonyitoo/rust-tun that referenced this issue Feb 18, 2024
* fix decode in codec

* move codec to async
@amyipdev
Copy link

Seconding @M0dEx's request to close

@ssrlive ssrlive closed this as completed Oct 27, 2024
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

9 participants