Adam Ierymenko
0b3b994241
Relay policy can now be computed.
9 years ago
Adam Ierymenko
64774d0d4f
Replace piecemeal designation of upstreams with the concept of moons, which is simpler and easier to use and inherits all the cool live update stuff of worlds (now called planets) and global roots.
9 years ago
Adam Ierymenko
84732fcb12
Wire through external path lookup. Static paths should now work.
9 years ago
Adam Ierymenko
42ba70e79e
Replace long callback arg list with struct, and implement path whitelisting, path blacklisting, and local.conf support for roles.
9 years ago
Adam Ierymenko
39333c9e8e
Modify unite() to deal with a second layer of upstreams.
9 years ago
Adam Ierymenko
1615ef1114
Rename getBestRoot() etc.
9 years ago
Adam Ierymenko
d5f4d381d0
Go ahead and loop back packets whose destination is self. Some OSes require this since they aactually follow the full network path even for local IPs.
10 years ago
Adam Ierymenko
e1fbf7b34c
Check multicast limit on send after NDP emulation code.
10 years ago
Adam Ierymenko
cc4bacc199
Cleanup, and implement compression disable flag for networks.
10 years ago
Adam Ierymenko
d3524f3609
Refactor COM stuff a bit, and respond to COM requests a bit more readily for rapid setup. Will need to revisit later.
10 years ago
Adam Ierymenko
5b6d27e659
Implement relay policy, and setting multicast limit to 0 now disables multicast on the network as would be expected.
10 years ago
Adam Ierymenko
ef87069957
Fix gating of multicast GATHER replies since these can come from upstream, etc., and fix an issue with sending ECHO to recheck marginal paths.
10 years ago
Adam Ierymenko
0d4109a9f1
More refactoring to clean up code, and add a gate function to make sure we do not handle OK packets we did not expect. This hardens up a few potential edge cases around security, since such messages might be used to e.g. pollute a cache and DOS under certain conditions.
10 years ago
Adam Ierymenko
b5c86b6ba4
Bunch more path refactoring. Peers no longer forget paths, but do not normally use expired paths. Expired paths might still be tried if nothing else is reachable.
10 years ago
Adam Ierymenko
01aa469591
Remove debug line.
10 years ago
Adam Ierymenko
412979ba8f
Attempt to reactivate dead paths.
10 years ago
Adam Ierymenko
4f8253dcdb
Tweaks to path handling...
10 years ago
Adam Ierymenko
e8f6b4b5d3
Rest of big Path canonicalization refactor.
10 years ago
Adam Ierymenko
a3bdae9735
Work in progress: Path canonicalization refactor.
10 years ago
Adam Ierymenko
d5e6f59004
.
10 years ago
Adam Ierymenko
74afef8eb1
Think through and refine a few things in rules, especially edge case TEE and REDIRECT behavior and semantics.
10 years ago
Adam Ierymenko
c476285bd6
Harden PUSH_DIRECT_PATHS and simplify things by only doing it on receive when hops>0 and trust has been established.
10 years ago
Adam Ierymenko
2cdda38dc4
It basically works... at least on current controllers.
10 years ago
Adam Ierymenko
e1310a764a
More cleanup and removal of cruft due to obsolete network-specific relays (will be replaced with federation stuff).
10 years ago
Adam Ierymenko
00fd9c3a15
It builds... almost ready to test some rules engine stuff.
10 years ago
Adam Ierymenko
98152d974a
More cleanup and removal of DeferredPackets, will do the latter in a more elegant way.
10 years ago
Adam Ierymenko
91940cbcf5
Kill network preferred relays -- this feature is gone (and was seldom used anyway) in favor of federation.
10 years ago
Adam Ierymenko
7404eb46c4
Integration of Filter into inbound and outbound packet path.
10 years ago
Adam Ierymenko
765082fdb6
Trusted path support, and version bump to 1.1.9
10 years ago
Adam Ierymenko
20d155e630
.
10 years ago
Adam Ierymenko
be5996daca
Cleanup of 6plane stuff.
10 years ago
Adam Ierymenko
38dfebad8c
IPv6 NDP emulation flag in NetworkConfig, and implement Docker-friendly
...
(and other host friendly) IPv6 /80 magic subnetting to allow massive
multicast-free NDP emulated IPv6 networks where each host can have a
/48 worth of IPv6 IPs for internal containers, VMs, etc.
Alan Kay, thou art avenged.
https://ivanovivan.wordpress.com/2010/09/13/alan-kay-quotes/
10 years ago
Adam Ierymenko
8b9519f0af
Simplify a bunch of NetworkConfig stuff by eliminating accessors, also makes network controller easier to refactor.
10 years ago
Adam Ierymenko
b9dba97fdb
Bunch more refactoring for an even more compact NetworkConfig representation, especially rules.
10 years ago
Adam Ierymenko
2f18a92e20
Cleanup in numerous places, reduce network chattiness around MULTICAST_LIKE, and fix a "how was that working" latent bug causing some control traffic to take the scenic route.
10 years ago
Adam Ierymenko
e28838805f
Brace fix...
10 years ago
Adam Ierymenko
31db6f8f36
NetworkConfig refactor almost done.
10 years ago
Adam Ierymenko
56096be8b6
Tweak new RX queue algorithm to "expire" old entries to prevent always needing to traverse the whole queue array.
10 years ago
Adam Ierymenko
76f9b4c582
A few other little formatting things.
10 years ago
Adam Ierymenko
c589bc4c57
Indentation
10 years ago
Adam Ierymenko
d6a1868d0a
Refactor incoming packet (rxQueue/fragmentQueue) to eliminate variable length queues and merge queues. This is both faster and saves memory.
10 years ago
Adam Ierymenko
0c951b6e56
More tweaks to new symmetric NAT buster, and stop using old iterative method since this supersedes it.
10 years ago
Adam Ierymenko
eadafd8de7
Little fix to NAT-t alg
10 years ago
Adam Ierymenko
4e4fd51117
boring doc stuff
10 years ago
Adam Ierymenko
83ef98a9dc
Add a network-associated user ptr in API.
10 years ago
Adam Ierymenko
704205c5f7
Dead code removal.
10 years ago
Adam Ierymenko
bbcc3304a0
Check shouldUsePathForZeroTierTraffic in legacy beacon responder.
10 years ago
Adam Ierymenko
1023ef23b7
Remove somewhat ugly and costly anti-recursion hack -- we will switch to more explicit methods.
10 years ago
Adam Ierymenko
a56fbc1929
Close another potential anti-recursion loophole.
10 years ago
Adam Ierymenko
d8143a5e18
Implement first pass on rapid dead path detection, and increment version to 1.1.3 (dev)
10 years ago