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

Support utun devices on Mac OS X. #12

Merged
merged 2 commits into from
Apr 8, 2015
Merged

Conversation

cpatulea
Copy link
Contributor

As of 10.6, OS X has native tunnel devices. They are implemented as
sockets rather than character devices, but otherwise they appear to
behave the same as Free/OpenBSD tunnels.

'-d utunX' will tell iodine to use a utun device. For backward
compatibility, we'll continue to default to the old tuntap devices for
now.

This is a port of Peter Sagerson psagers.github@ignorare.net's openvpn
commit 43e5016a.

/cc @psagers

As of 10.6, OS X has native tunnel devices. They are implemented as
sockets rather than character devices, but otherwise they appear to
behave the same as Free/OpenBSD tunnels.

'-d utunX' will tell iodine to use a utun device. For backward
compatibility, we'll continue to default to the old tuntap devices for
now.

This is a port of Peter Sagerson <psagers.github@ignorare.net>'s openvpn
commit 43e5016a.
@cpatulea
Copy link
Contributor Author

Pushed a new version (33abc0c) which fixes header mangling (looks like Darwin utun most closely resembles OpenBSD).

@cpatulea
Copy link
Contributor Author

cpatulea commented Apr 6, 2015

Hi, any chance this could get reviewed?

@cpatulea
Copy link
Contributor Author

cpatulea commented Apr 7, 2015

I'm not sure I understand your comment. You wish "// DARWIN (utun)" on line 29?

yarrick added a commit that referenced this pull request Apr 8, 2015
Support utun devices on Mac OS X.
@yarrick yarrick merged commit b559806 into yarrick:master Apr 8, 2015
@yarrick
Copy link
Owner

yarrick commented Apr 8, 2015

Thanks. Can you also add a section to the manpage/readme on how to use it?

@zhovner
Copy link

zhovner commented Sep 16, 2016

I still can't understand ho to use it. I need to create utun interface first?
If so, how to do this?

$ sudo iodine -d utun0 .....
iodine: open_tun: /dev/utun0: No such file or directory: No such file or directory

I can find only syscalls to create utun interface but it's not unsuitable for end users.

I have OS X 10.11.6 (15G1004) El Capitan

UPD

Oh, sorry, this function is not implemented in iodine-0.7.0 release version.
Building from head works.

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

Successfully merging this pull request may close these issues.

None yet

3 participants