661fb0d54c
45-use-statistical-testing
...
Keepalive is based on per mesh and not per node.
Using total ordering mechanism similar to paxos to elect a leader
if leader doesn't update it's timestamp within 3 * keepAlive then
give the leader a gravestone and elect the next leader.
Leader is bassed on lexicographically ordered public key.
2023-12-07 18:18:13 +00:00
64885f1055
45-use-statistical-testing
...
Using statistical testing to test whether the node has failed.
2023-12-07 01:44:54 +00:00
32e7e4c7df
main
...
Bugfix. Fixed issue where consistent hashing was not working.
2023-11-28 14:42:09 +00:00
d8e156f13f
36-add-route-path-into-route-object
...
Added the route path into the route object so that we can
see what meshes packets are routed across.
2023-11-27 18:55:41 +00:00
aef8b59f22
32-fix-routing
...
Flooding routes into other meshes a bit like BGP.
2023-11-25 03:15:58 +00:00
d1a74a7b95
32-incorporate-dns
...
Incorporated a DNS server. A DNS server can be run to resolve host
names.
2023-11-24 15:04:07 +00:00
4c54022f63
25-modify-code-to-use-public-api
...
Modify the code to use a public IP address by default if none is
specified
2023-11-22 10:41:54 +00:00
0d63cd6624
main
...
Adding words.txt for what words
2023-11-20 18:12:58 +00:00
95f4495b0b
21-phonetic-words-ipv6
...
Simple what 8 words implementation
2023-11-20 18:07:52 +00:00
330fa74ef4
IPv6 What 8 Words
...
what 8 words for ipv6 started
2023-11-20 15:22:32 +00:00
b179cd3cf4
Hashing the WireGuard interface
...
Hashing the interface and using ephmeral ports so that the admin doesn't
choose an interface and port combination. An administrator can alteranatively
decide to provide port but this isn't critical.
2023-11-20 13:03:42 +00:00
388153e706
Stubbing out WireGuard components
...
Stubbing our WireGuard components so that I can use docker/podman
network_mode=host. This is much more efficient than the docker/podman
userspace network.
2023-11-20 11:28:12 +00:00
68db795f47
Ability to specify aliases
...
Ability to specify aliases that automatically append to /etc/hosts
2023-11-17 22:13:51 +00:00
f6160fe138
Adding aliases that automatically gets added
2023-11-17 19:13:20 +00:00
5f176e731f
Developed a rest API
2023-11-13 10:44:14 +00:00
acbeb689b5
Prune nodes if they exceed their timeout time
2023-11-06 13:37:28 +00:00
c88012cf71
Added health system to count how many times a node
...
fails to conenct.
2023-11-06 09:54:06 +00:00
9454d62417
Adding stubs and writing tests
2023-11-05 18:03:58 +00:00
843caddf6b
Implemented clustering betweeen nodes
2023-11-03 15:24:18 +00:00
d462d95d6d
Ability for each node to set their description describing what
...
service they provide.
2023-11-01 11:58:10 +00:00
e56780fdd4
Added ability to query the JSON data store
2023-10-30 19:02:28 +00:00
579426e32d
Tidied up code, made changes for benchmarking.
2023-10-30 16:49:02 +00:00
472718c9a3
Standardising filenames, interfacing out
...
for tests and modifying network device
manipulation
2023-10-28 16:38:25 +01:00
5757d81a81
Advertising routes into the mesh
2023-10-27 17:49:18 +01:00
4c6bbcffcd
Interfacing out components for unit testing
2023-10-26 16:53:12 +01:00
c205be6748
Implemented the forwarding of packets between meshes
2023-10-25 18:34:38 +01:00
180f5e226c
Ability to be in multiple meshes and refactored consensus
2023-10-24 16:00:46 +01:00
8e89281484
Tested with large number of nodes
2023-10-24 00:12:38 +01:00
360f9d3c54
Few refactorings of managing the mesh and a graph
...
visualisation tool for seeing the state of a mesh.
2023-10-22 13:34:49 +01:00
c4dc984fc7
Added ability to detect if a node should be removed from the mesh.
2023-10-21 18:08:45 +01:00
976dbf2613
Automatically remove nodes from the mesh after a
...
certain threshold.
2023-10-20 17:35:02 +01:00
c200544cee
Timer in go that syncs with random nodes in the mesh every
...
given time interval.
2023-10-20 12:41:06 +01:00
ec87afc235
Added sync
2023-10-10 20:14:40 +01:00
e729c5b181
CRDTs fully incorporated
2023-10-06 18:25:38 +01:00
47e260e310
Incorporated automerge
2023-10-06 11:52:51 +01:00
923ca716ec
Automerge changes
2023-10-05 17:48:54 +01:00
a069b89a9a
Refactored client and server and interfaced out dependencies
2023-10-02 16:03:41 +01:00
94afd68460
Implemented JWT authentication
2023-10-01 19:01:35 +01:00
c819bec63d
Interfaced problem out
2023-09-29 15:00:20 +01:00
a0c20e4d11
IPV6 SLAAC
2023-09-28 16:55:37 +01:00
ea2a073875
Added ability to set interface as up
2023-09-21 18:43:29 +01:00
cfdf377567
Pseudo-random address allocation
2023-09-20 14:34:34 +01:00
dcf851a02e
Ability to add peer to config
2023-09-19 23:50:44 +01:00
6e9ca4f31f
Migrated to using grpc for handling rpc calls
2023-09-19 18:29:35 +01:00
86756903c7
Created join-mesh, list-meshes command
2023-09-19 13:45:49 +01:00
b679b7fb6e
Added IPC handler to wgmesh
2023-09-18 17:00:43 +01:00
01238aca59
Incorporated gin server.
...
Each node communicates in the mesh
2023-09-18 15:52:28 +01:00
fa16480521
Commit
2023-09-18 12:59:28 +01:00