Quickstart
Build and run araneala:
cargo build --release
# needed to bind port 80
setcap cap_net_bind_service=+eip target/release/araneala
./target/release/araneala
Run any web server on your computer. For instance, you can serve the project documentation with mdbook serve docs -p 0
If you use the dns server, open araneala.internal in your web browser. You will see a list of web servers running on your computer.
If not, you can add the following in your host file to register the araneala.internal host :
127.0.0.1 araneala.internal
::1 araneala.internal
DNS
Araneala provides a DNS server that
It only resolves araneala.internal and all known subdomains to ::1 or 127.0.0.1. It does not forward other DNS requests
Systemd DNS delegate
Using systemd DNS delegation, you can configure
For instance, with araneala DNS server on port 8053, put the following config /etc/systemd/dns-delegate.d/araneala.dns-delegate
[Delegate]
DNS=127.0.0.1:8053
Domains=araneala.internal
NixOS module
You can use the nixos module by adding the flake input
{
araneala = {
url = "git+https://git.alpaga.dev/tools/araneala";
inputs.nixpkgs.follows = "nixpkgs";
};
}
and enable it using services.araneala.enable.
{ inputs, ... }:
{
imports = [ inputs.araneala.nixosModules.araneala ];
services.araneala = {
enable = true;
};
}
It runs as a user services and will only list services run as your user.