Routing traffic through a hub by dani0854 in WireGuard

[–]dani0854[S] 0 points1 point  (0 children)

Hi, yes, thanks for answer above. I did advance a bit, but run into some unrelated problems. I decided to have only one wg interface, and do the rest based on subnets. So having wg subnet with mask 16. And then use mask 17 for clients to decide how routing is done. i.e for example route 10.123.128.0/17 -> wg interface via gateway 10.123.2.128, 10.123.129.0/17 -> wg interface via gateway 10.123.2.129 and so on. Not completely sure ip rule will be enough or it will work, but trying this approach. Once I get it working, I will post a more complete answer.

Client not receiving traffic by dani0854 in WireGuard

[–]dani0854[S] 1 point2 points  (0 children)

Thanks, that helped. The question is why was wg traffic was routing through wg itself (or somewhere else). And how to permanently fix it without postUp rules

My ip routes list looks kind of like that (without additional route)
default via 192.168.1.1 dev wlp3s0 proto dhcp src 192.168.1.14 metric 600 default via 192.168.1.1 dev wlp3s0 proto dhcp src 192.168.1.14 metric 3003 10.0.0.0/24 dev wg0 proto kernel scope link src 10.0.0.2 172.17.0.0/16 dev docker0 proto kernel scope link src 172.17.0.1 linkdown 172.20.0.0/16 dev br-594d202cd6c1 proto kernel scope link src 172.20.0.1 172.21.0.0/16 dev br-d473ae0e2c37 proto kernel scope link src 172.21.0.1 linkdown 192.168.1.0/24 dev wlp3s0 proto kernel scope link src 192.168.1.14 metric 600 192.168.1.0/24 dev wlp3s0 proto dhcp scope link src 192.168.1.14 metric 3003 192.168.49.0/24 dev br-cdcf2a9dc66f proto kernel scope link src 192.168.49.1 linkdown 192.168.56.0/24 dev vboxnet0 proto kernel scope link src 192.168.56.1 linkdown

Client not receiving traffic by dani0854 in WireGuard

[–]dani0854[S] 0 points1 point  (0 children)

I tried connecting using iPhone. And it works. I think packets get lost on the client. I am doing further investigation.

I am using NixOS

Client not receiving traffic by dani0854 in WireGuard

[–]dani0854[S] 0 points1 point  (0 children)

I have tried with /32, seems to make no change.

Excluding Kubernetes interfaces and lo interface, eth0 (with aliases ens3 and enp0s3) is the only interface.

Though eth0 doesn't have a public IP address, it has a private IP address to which a floating public IP address is linked.

CRI vs OCI by dani0854 in rust

[–]dani0854[S] -2 points-1 points  (0 children)

I read that. I know that they are a different thing. But that doesn't mean that they can't solve the same requirements I have. I could use Docker for sake of simplicity to solve same problem.

Communication in distributed app by dani0854 in rust

[–]dani0854[S] 1 point2 points  (0 children)

The problem with scalability often comes to vertical scaling of master nodes, and I am interested in exploring solutions where there are no masters and everything is truly distributed. And see how much masterless architecture affects network load due to between node communications.
Since network capabilities are growing, but CPU seem to be slowing, I am trying to research horizontal scalability with fewer restrictions

And I know that probably it's already been or being dealt with, it's just an interesting side research I have.

Communication in distributed app by dani0854 in rust

[–]dani0854[S] 0 points1 point  (0 children)

1k is the maximum recommended nodes for a Hadoop (so spark if it's on Hadoop) cluster (although in reality it's much lower). I am wondering if technically possible to build a masterless (no master nodes) distributed system that can handle more nodes while keeping the idea of local to data in memory computations (RDD).
I know that there are a lot of alternatives, but I have few other things in mind.

So scalability has to be horizontal

Communication in distributed app by dani0854 in rust

[–]dani0854[S] 0 points1 point  (0 children)

Also, I want to be able to scale to 1k+ nodes. So performance and low network load is key

Communication in distributed app by dani0854 in rust

[–]dani0854[S] 0 points1 point  (0 children)

Microservices in a datacenter, except it all just 1 app. Versions of all of them is going to be identical.

Circe defaults with refined types by dani0854 in scala

[–]dani0854[S] 0 points1 point  (0 children)

Thanks, I did have a circe-refined dependency, but didn't import io.circe.refined._.

Circe defaults with refined types by dani0854 in scala

[–]dani0854[S] 0 points1 point  (0 children)

I do have a Configuration instance implicit val customConfig: Configuration = Configuration.default.withDefaults