{"id":17145958,"url":"https://github.com/foxcpp/wirebox","last_synced_at":"2025-08-10T06:39:15.545Z","repository":{"id":57519317,"uuid":"247567793","full_name":"foxcpp/wirebox","owner":"foxcpp","description":"Dynamic WireGuard tunnel configuration.","archived":false,"fork":false,"pushed_at":"2023-03-08T09:04:18.000Z","size":54,"stargazers_count":15,"open_issues_count":12,"forks_count":1,"subscribers_count":4,"default_branch":"master","last_synced_at":"2025-04-13T11:23:20.718Z","etag":null,"topics":["wireguard","wireguard-vpn"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/foxcpp.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2020-03-15T23:13:08.000Z","updated_at":"2024-10-10T18:09:43.000Z","dependencies_parsed_at":"2024-06-20T21:49:41.125Z","dependency_job_id":"84b52e06-f148-4cc6-8973-1dde617dc4e6","html_url":"https://github.com/foxcpp/wirebox","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/foxcpp/wirebox","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/foxcpp%2Fwirebox","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/foxcpp%2Fwirebox/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/foxcpp%2Fwirebox/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/foxcpp%2Fwirebox/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/foxcpp","download_url":"https://codeload.github.com/foxcpp/wirebox/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/foxcpp%2Fwirebox/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":269687952,"owners_count":24459394,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-08-10T02:00:08.965Z","response_time":71,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["wireguard","wireguard-vpn"],"created_at":"2024-10-14T21:07:21.972Z","updated_at":"2025-08-10T06:39:15.522Z","avatar_url":"https://github.com/foxcpp.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"Wirebox\n=========\n\u003e Dynamic WireGuard tunnel configuration daemon.\n\n**Unmaintained: The project is not in active development. Existing code works (hopefully), but no further improvements or bugfixes will be made.**\n\n_Both client \u0026 server are Linux-only now._\n\n## Features\n\n- Clients need no configuration other than ed25519 key pair and server endpoint\n  (IP + port).\n- Multicast-friendly thanks to PtP mode.\n- Can assign IPs dynamically if you do not care.\n- Centralized configuration at a single node (server).\n\n## Server\n\nActs as a router between connected clients (and possibly other networks),\nsends client configurations on request using [WGDCP](#WGDCP) protocol.\n\n### Installation \u0026 configuration\n\nInstall [Go](https://golang.org) toolchain and run the following to install its\nexecutable:\n```\n$ env GO111MODULE=on go get github.com/foxcpp/wirebox/cmd/wboxd@latest\n```\nGrab example configuration file [here](cmd/wboxd/wboxd.example.toml).\n`wboxd` looks for the configuration file named wboxd.toml in the current\ndirectory. This can be changed using `-config` command line option.\n\nDo not forget to enable IP forwarding and adjust your firewall configuration\nappropriately:\n```\n# sysctl net.ipv4.ip_forward=1\n```\n\n## Client\n\nCLI utility that requests configuration from the server using [WGDCP](#WGDCP)\nprotocol, configures the WireGuard tunnel appropriately and exits.\n\n### Installation \u0026 configuration\n\nMostly the same as Server, just replace `wboxd` in the `go get` command.\nAnd the example configuration is here: [cmd/wbox/wbox.example.toml].\n\n## WGDCP\n\u003e WireGuard Dynamic Configuration Protocol\n\nSimple ProtoBuf-based protocol running on top of UDP/IPv6 inside\n\"configuration\" WireGuard tunnel. Intended as a specialized minimal DHCP\nreplacement.\n\nThe configuration received from the server is authenticated because it is\nreceived over WireGuard tunnel.\n\nThe server uses strict \"Allowed IPs\" options for all tunnels and therefore will\nnot allow IP spoofing to happen. Filtering is applied to prevent clients from\npeeking at configuration of other clients, but it is not bullet-proof.\n\n*TODO: Protocol documentation/specification is non-existent.*\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffoxcpp%2Fwirebox","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ffoxcpp%2Fwirebox","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffoxcpp%2Fwirebox/lists"}