-
Notifications
You must be signed in to change notification settings - Fork 6
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 for babeld 1.8.2 #15
Conversation
files changed: - /opt/tunneldigger/broker/scripts/down_hook.sh - /opt/tunneldigger/broker/scripts/up_hook.sh - /etc/babeld.conf - /etc/system/systemd/babeld.service
Cool stuff @Benny and thanks for updating HE! I noticed one problem, we can no longer start babeld with systemd like before. If you try running,
you'll get,
Checking an exitnode right after creating it, I noticed that babeld failed to start. This is isn't a huge problem, because as soon as you get an up hook on a tunnel, babeld is (I'm assuming) started properly by that? I can't test this theory because I don't have a home node on hand to point at my exitnode. Not sure of the best way to restart babeld in the latest version, but this system service was mostly used by the babeld-monitor (which is hopefully, no longer necessary 🤞 ). It would be nice to be able to just re-run
for each repo does the trick, but seems a little destructive. Also, love the |
Thanks for looking at this @paidforby ! And good catch. I forgot to include a change to babeld.service that I made on HE: to pass in a fake dummyinterface name to babeld when first starting. Also reminds me to ping jech about this... Would be nice to not have to do that.
No, babeld needs to already be running in order for the tunnel hooks to communicate with it over TCP.
I think that's actually a good solution. Wholesale obliteration is a good way to have certainty that you're actually replacing what you want to replace, and not accidentally missing a few files here and there. Wholesale obliteration gets easier (and better) the fewer the places we write to. Unfortunately, we probably don't want to obliterate the /etc and /opt directories. Would it be weird to write to |
Should now be able to run |
added that rebuild feature per your suggestion @bennlich |
Need to fix babeld-monitor.sh before merging this--it turns out the babeld memory leak was not fixed by the upgrade :-/ cc @eenblam |
I'm going to merge this because I'm tired of the rebuild feature not being in master |
files changed:
I made the corresponding changes manually to the HE exit node, but unfortunately I have not tested the create-exitnode.sh script yet. (Would be nice if the way to upgrade the deployed HE node was to simply rerun the create-exitnode.sh script, but I wasn't confident this would work. Does anyone know?)
TODO:
notes:
5fec6d32-83e9-41cf-aaa5-e038fea8d191
. This is sort of convenient because it helps us test whether we continue to see the memory error in setsockopt out of memory causes babeld failure bugs#24.babeld -i
is no longer a thing (same with-a
and-x
). The new way to dump babeld state is to communicate with babeld over TCP:(echo "dump") | nc -q1 ::1 31337
. I'm thinking it would be nice to put this in an easily accessiblebabeld-dump.sh
script on thePATH
. Any suggestions for where such a script ought to live? I imagine we might end up with some kind ofmesh-tools/
directory with useful debugging/management scripts.I'm okay to merge as soon as someone tests meshing with an exitnode created with
create-exitnode.sh
.