-
Notifications
You must be signed in to change notification settings - Fork 19
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
Integrate with Charon #68
Comments
I have similar needs for my My idea is to let a Snabb program pose as a "Pseudo-Kernel" to Charon. The plugin would implement the "kernel-ipsec" feature (in Strongswan-speak), which replaces the standard kernel plugin (e.g. In my use case, the IKE packets are exchanged via a regular interface on the host, not Snabb, so I would not need a TAP interface for punting, but this is orthogonal to the implementation of the plugin. I already have some running code but not yet the actual passing of keys to Snabb. |
Neat! So the idea behind "emitting Vita configurations" was that Vita already supports on-line reconfiguration of child SAs via lib.ptree YANG RPCs. I.e., one can do something like
so I imagined that would be what the charon plugin would do. Your proposal sounds reasonable to me. :-) |
The first version of the
to your I have implemented the Snabb side of things for The documentation of the interface is in |
This looks really neat to me! Awesome! For Vita I might not go for the ESP app re-configuring itself, but instead have changes to SAs trigger updates to the YANG model which then causes reconfiguration etc.. but the mechanism will be much the same. The only thing I do not immediately understand is the hashing. What is the advantage of hashing the traffic selector instead of just embedding it in the filename? The charon plugin seems really straight forward (is it really just 500 lines? That is awesome!) I am bit worried about potential races through partial reads/writes to the SHM file, but I do not know enough about the semantics to be a judge of that. |
I've chosen the hash to be independent of discrepancies how the addresses are formatted, but I guess just using the standard The potential race is probably a valid point, I'm also not sure. I guess I could simply use |
I would be nice to support integration with Charon, the StrongSwan IKE daemon, out of the box. Steps towards that goal seem to be:
kernel_pfkey
plugin as a reference) that emits Vita configurationsThe text was updated successfully, but these errors were encountered: