-
teutat3s
nahamu (LIBERA-IRC): Wow, I didn't think it would be this easy: `pkgin in tailscale` thank you so much for the effort you put into making WireGuard work smoothly on illumos
-
nahamu
teutat3s: I'm glad it's working for you!!
-
nahamu
jperkin did the packaging, and jclulow did the original port of wireguard-go, not to mention the original authors of Wireguard and Tailscale etc. etc.
-
nahamu
But yeah, that smooth simplicity of use is why I've been willing to keep maintaining the fork and working on getting things upstream.
-
teutat3s
nahamu (LIBERA-IRC): To me it looks like your upstreaming effort is really close to getting merged, if there's anything I can contribute, like testing, lemme know
-
nahamu
teutat3s: Honestly, the biggest help would be exercising the wireguard-go and wireguard-tools bits.
-
teutat3s
Exercising?
-
nahamu
Should also be packaged in pkgsrc.
-
nahamu
Try it out. See if it works or if there's an obvious bug I've missed.
-
teutat3s
Understood, will do and report back
-
nahamu
It's not as easy as Tailscale, but even just a "I got it to work" or "I tried X and it should have worked but failed" would be great!
-
nahamu
WireGuard/wireguard-tools #17 is the relevant PR. I can also sketch some documentation if you've never used wg-quick before.
-
nahamu
There's some generic wg-quick related content in
blog.shalman.org/wireguard-android-road-warrior
-
nahamu
The existing code should be at least beta quality. If a few other people don't trip over anything obvious it should be good enough to get upstream to ship it.
-
copec
That's convenient, I'm working on getting wireguard working on some smartos instances of mine this morning. I've been making linux instances and am cleaning up the number of VMs
-
copec
nahamu jclulow thanks for all your work!
-
nahamu
copec: let me know how it goes!
-
copec
It just worked, when initially setting up manually (I just saw the packages in pkgin), it's pretty neat that wg works the same with wireguard-go
-
copec
How do I set up a service with /opt/local/lib/svc/manifest/wireguard-tools.xml for say a tun0 instance?
-
nahamu
I would name it something more meaningful and let wireguard-go allocate the specific instance.
-
nahamu
-
nahamu
Let me know if you need additional detail.
-
copec
ah, thank you much
-
copec
nahamu How do you get wg-quick to specify a (sacrificial) remote address?
unaen.org/pb/7uv
-
nahamu
hmmm
-
nahamu
let me see what I have lying around
-
nahamu
can you strip the keys out of your config file and paste it somewhere?
-
copec
sure
-
nahamu
perhaps just remove the "/32" from the address specifications?
-
copec
-
nahamu
Yeah, I would try removing the "/32"
-
nahamu
Do you use those on Linux?
-
copec
yeah, I use them on linux
-
nahamu
Thank you for finding a bug!
-
nahamu
Can you confirm for now whether things work if you remove them?
-
copec
yeah, just tried, it is working now
-
copec
I notice it uses the same ip for local and remote
-
copec
and adds the route for each individual endpoint, nice
-
copec
-
nahamu
-
copec
ty nahamu
-
nahamu
thanks for kicking the tires!!
-
nahamu
copec: I think I have a fix for you to test.
-
copec
So my link to this instance seems to do about 250Mbit outside the tunnel, and 50Mbit inside the tunnel, and it doesn't appear the wireguard-go process is CPU limited. That is still sufficient for what I am doing, but I would enjoy tracing the performance aspects of it
-
nahamu
-
nahamu
if you can manually make that change to the wg-quick script and see if that fixes it for you, that would be helpful.
-
nahamu
it seemed to fix things for me.
-
copec
I'll try that now
-
nahamu
If there's enough momentum to get this stuff upstream, the fix might not make it to the pkgsrc package until after the upstreaming.
-
nahamu
copec: any luck?
-
copec
yup, it is working, both with the /32 and without
-
nahamu
Nice. Thanks!
-
Smithx10
danmcd: see that race in that gist for deploying to cloudapi ?
-
danmcd
I didn't... sorry, hold on.
-
danmcd
@Smithx10 it seems the "check-for-same-alias-as-user" is something that isn't concurrent against multiple simultaneous creations.
-
danmcd
I know little about triton-go, and even less about terraform.
-
papertigers
teutat3s: are you still using boringtun?
-
teutat3s
papertigers (LIBERA-IRC): yeah, but will test the pkgsrc wireguard-go version this week
-
teutat3s
I wonder if packaging boringtun in pkgsrc would make it somehow possible to choose the wireguard user space backend with something like wg-quick
-
nahamu
I think the way I ported the wg-quick code you could pass it a different binary in an environment variable.
-
nahamu
yeah, I'm even doing that in my example SMF manifest.
-
nahamu
papertigers: are you still maintaining your boringtun fork and/or is your stuff upstream?
-
papertigers
its not, but I was going through my gh notifications and I saw a question from copecog; which I am going to guess is copec?
-
papertigers
Did you figure out your issue?
-
papertigers
nahamu: I haven't used it in a long time, but teutat3s was keeping the branch up to date every so often
-
nahamu
ah
-
copec
papertigers I haven't figured out why it wasn't building yet
-
papertigers
were you building it off of the branch in my fork of the repo?
-
papertigers
-
papertigers
But I also just noticed there's a PR that needs to be merged from teutat3s that does a more recent sync.
-
copec
I was using that branch, but I was probably doing something wrong
-
copec
I'll try it again
-
papertigers
fwiw I haven't tried in awhile, if you can gist or put the build output somewhere I can try and find time to look. We probably should merge teutat3s's PR as I believe they have been using that since the PR was open in july without issue
-
Smithx10
danmcd: Yea, probably have to add that into cloudapi
-
danmcd
I tried two VMAPI ones but one failed with colliding-alias. Gonna see if I can make them Go Faster at launch time.
-
danmcd
Ahhh, there we go.
-
danmcd
[root@shemp (kebecloud) ~]# vmadm list |grep kebe
-
danmcd
187fc88f-1cea-4263-9b91-c676bdbaf180 OS 256 running kebetests
-
danmcd
992da0fc-63df-4836-9563-38ef917929ed OS 256 running kebetests
-
danmcd
[root@shemp (kebecloud) ~]#
-
danmcd
I did it with two concurrently-started sdc-vmapi invocations.
-
danmcd
So is this *really* going to be a big problem? Protecting against such races would cause some major-league slowdowns (esp in Manta).
-
bahamat
Smithx10: Basically the workaround for that is you should name things `myvm-{{shortId}}` (i.e., literally the exact string {{shortId}}). Then {{shortId}} will be replaced with the zone uuid prefix.
-
bahamat
Smithx10: e.g.,: 8bc86cde manta-shortener-8bc86cde base-64-lts⊙24 running - 29w
-
Smithx10
danmcd: and bahamat its not really a big problem
-
Smithx10
I was wondering it it may break anything down the line
-
danmcd
TIL about `{{shortId}}`
-
Smithx10
I dont think so.... except for same DNS.
-
bahamat
Using {{shortId}} is how to guarantee you're not going to race on alias names.
-
bahamat
And I think you can only run into this when you have multiple workflow instances (but I may be wrong, you might still be able to do it with only one)
-
Smithx10
Yea, I just gotta tell the users / send a warning
-
Smithx10
Just wanted to make sure it wasnt just me
-
Smithx10
We are planning on centralizing the terraform deployments so I can probably check this before we go to CloudAPI too
-
bahamat
Yeah, with terraform especially, I recommend using shortId
-
bahamat
But...I don't know, terraform is often very brain damaged when it comes to that kind of thing. It *really* doesn't like the cloud filling in details for it.
-
danmcd
Protip for testing:
-
bahamat
I had to fight tooth and nail to get them to be ok with network pools existing.
-
danmcd
"starting-pistol" protocol
-
danmcd
Invoke multiple of whatever you want concurrently running either with:
-
danmcd
low-res: (sleep <longtime> ; CMD )& (multiple times)
-
danmcd
pkill sleep <and off to the races>
-
danmcd
high-res: cat & (will suspend in background on tty input)
-
bahamat
One of my main blockers for using terraform was that it wouldn't work with network pools. You'd provision something and on every pass it would destroy/create again because the interface uuid was the network not the pool and for weeks they refused to fix it.
-
danmcd
(pwait $PID_OF_CAT ; CMD ) & (multiple times)
-
danmcd
fg %1 (cat)
-
danmcd
^D on cat <and off to the races>
-
bahamat
Ultimately they said if I wanted it fixed it would need to be documented. I pointed them at the existing documentation and they complained about the way it was phrased, so I had to rewrite the doc to appease them, and finally the begrudgingly fixed it.
-
danmcd
Wow.
-
danmcd
Awfully nice of them. :upside_down:
-
bahamat
It was maddening.
-
bahamat
It was also very difficult to get them to fix their broken data storage in manta plugin so that we could have a shared terraform deployment.
-
teutat3s
bahamat (LIBERA-IRC): sadly they dropped support for the manta storage backend in 1.3
-
teutat3s
papertigers (LIBERA-IRC): yeah no issues here with that PR, been running it since then
-
papertigers
teutat3s: cool! I will merge it
-
papertigers
done
-
papertigers
copec: ^ heads up if you want to redo your experiment with newer bits. Someone should find time to do another sync with upstream at some point.
-
copec
yay, I'll give it a try
-
teutat3s
papertigers (LIBERA-IRC): Thanks! I always waited for a tagged release, but yeah, syncing with the master branch would also be possible
-
papertigers
Feel free to keep it in sync with the strartegy you have been using
-
papertigers
wondering if I should transfer these bits to the illumos github rather than my account
-
bahamat
teutat3s: I'm not surprised, with how badly it was broken.
-
teutat3s
papertigers (LIBERA-IRC): I'd say yes, could make it more discoverable
-
papertigers
jclulow: any thoughts on me transferring the boringtun fork to the illumos github org? Instead of having it live under my github
-
jclulow
I'm not opposed per se, but who would look after it?
-
papertigers
well, teutat3s has been it's primary user I belive and has done the most work keeping it up-to-date. But if they don't want the burden it can just stay under my gh. It's not a big issue
-
teutat3s
I can continue to look after it : )