{"id":18746696,"url":"https://github.com/matrixeditor/ubnt-discovery-tool","last_synced_at":"2025-09-01T07:32:48.767Z","repository":{"id":269891545,"uuid":"729830205","full_name":"MatrixEditor/ubnt-discovery-tool","owner":"MatrixEditor","description":"Updated and faster version of the Ubnt Discovery Tool (last update 2017 by provider) for Java (with GUI and CLI)","archived":false,"fork":false,"pushed_at":"2023-12-10T13:47:17.000Z","size":220,"stargazers_count":2,"open_issues_count":3,"forks_count":2,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-04-02T11:51:34.032Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"unlicense","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/MatrixEditor.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":"2023-12-10T13:47:15.000Z","updated_at":"2024-10-20T18:46:18.000Z","dependencies_parsed_at":"2024-12-27T00:44:36.232Z","dependency_job_id":"69e9b0be-430f-4370-b2e4-292ed290f454","html_url":"https://github.com/MatrixEditor/ubnt-discovery-tool","commit_stats":null,"previous_names":["matrixeditor/ubnt-discovery-tool"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/MatrixEditor/ubnt-discovery-tool","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MatrixEditor%2Fubnt-discovery-tool","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MatrixEditor%2Fubnt-discovery-tool/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MatrixEditor%2Fubnt-discovery-tool/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MatrixEditor%2Fubnt-discovery-tool/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/MatrixEditor","download_url":"https://codeload.github.com/MatrixEditor/ubnt-discovery-tool/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MatrixEditor%2Fubnt-discovery-tool/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":273088766,"owners_count":25043559,"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-09-01T02:00:09.058Z","response_time":120,"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":["java","ubiquiti","ubnt","ubnt-tool"],"created_at":"2024-11-07T16:26:33.205Z","updated_at":"2025-09-01T07:32:48.416Z","avatar_url":"https://github.com/MatrixEditor.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Ubnt-Discovery-Tool\n\nThis tool is a renewed implementation of the original [Ubnt-Discovery-Tool](https://www.ui.com/download/utilities/default/default/ubiquiti-discovery-tool-chrome-app) which hasn't been updated since 2017. Because the latest version offered by _Ubiquiti_ is very CPU-heavy and does not work properly as described in many issues at their forum, this repository offers an updated version of that tool.\n\nFeatures of this repository:\n\n- Java(-Swing) GUI\n- CLI support\n- Minimal Python implementation of the Ubnt Discovery Protocol\n- Wireshark dissector in Lua for the Ubnt Discovery Protocol\n\nIf you want to use this tool in your browser, Ubiquiti also offers a Chrome Web-Extension of this utility that \"should\" work.\n\nThis tool can either be compiled or one of the pre-compiled versions from the `Releases` page of this repo can be used. Detailed building instructions can be found in the [wiki](https://github.com/MatrixEditor/ubnt-discovery-tool/wiki) of this repository. Start it with the following command.\n\n````console\njava -jar ubnt-discovery-tool-VERSION.jar\n````\n\n\u003e **Note:** This renewed version uses the `MulticastSocket` by Java that can receive multicast and broadcast messages in combination with a `FixedThreadPool` which lowers the CPU-usage compared to the older version.\n\n## Application principles\n\nThis utility is designed to search in the local network for devices manufactured by Ubiquiti by sending discovery packets (version 1 and 2). For application design and build information, see the wiki of this repository.\n\nA user interface (UI) guide will also be available in the wiki. By default, the application creates a packet listener for every `NetworkInterface` of the local machine. With the `ubnt.ipv6.enabled` key in the application's properties you can specify whether IPv6 sockets should be created. \n\nAt the moment, the following functions are implemented:\n\n1. Scanning the network for devices (10s interval)\n2. Show details of each device by hovering over it (ToolTip)\n3. [Since v1.2]: Import and export XML-Documents that contain the structure equal to the [example.xml](/docs/example.xml) document.\n4. [Since v1.3]: CLI support\n\nReleases will be published with and without the `FlatLaf` LookAndFeel dependency to prevent errors with Java version `8`. A quick impression of what the output of this utility looks like (mocked service):\n\n![example](docs/ToolExample.png)\n\n## CLI support\n\nSince release v1.3, there is support for a CLI version of the UbntDiscoveryTool. It can be addressed by adding the `-cli` argument: (**This option must come first**)\n\n```bash\njava -jar ./build/libs/ubnt-discovery-tool-1.3.jar -cli -help\nUsage: \u003cmain class\u003e [options]                    \n  Options:                                       \n    -file                                        \n      Prints information from the given XML file.\n    -g, -grouped                                 \n      Prints grouped output.                     \n      Default: false                             \n    -h, -help                                    \n      Shows this usage information.              \n      Default: false                             \n    -I, -interface                               \n      Interface names to include.                \n      Default: []                                \n    -ratio\n      The second-ratio (amount of internal loops).\n      Default: 20\n    -sec\n      The amount of seconds to listen for packets.\n      Default: 10000\n```\n\n\u003e *Note*: Unless `-file` is used to dump an XML file, all received multicast packets will be displayed.\n\nExample output:\n\n```bash\n# --- snip ---\n============ 'U7PG2' v0x002@wlan2 ============\n       IPINFO (0x2): IpInfo{mac='...', ip='172.39.0.204'}\n   HW_ADDRESS (0x1): ...\n       UPTIME (0xa): 1781702\n     HOSTNAME (0xb): Zi351\n     PLATFORM (0xc): U7PG2\n   FW_VERSION (0x3): BZ.qca956x_6.0.21+13673.220607.2004\nSHORT_VERSION (0x16): 6.0.21.13673\n     MODEL_V2 (0x15): U7PG2\n      DEFAULT (0x17): false\n     LOCATING (0x18): false\n        DHCPC (0x19): true\n  DHCPC_BOUND (0x1a): true\n   SOURCE_MAC (0x13): ...\n          SEQ (0x12): 355003\n        DHCPC (0x19): true\n  DHCPC_BOUND (0x1a): true\n   SOURCE_MAC (0x13): ...\n          SEQ (0x12): 790191\n        REQ_W (0x1b): 3.4.1\n    \u003cUnknown\u003e (0x27): length=46 (0x2e)\n# --- snip ---\n```\n\n## Building\n\nUbntDiscoveryTool uses [Gradle](https://gradle.org) to build. To just compile the source code of this app, run:\n\n    ./gradlew build --warning-mode all\n\nIf you want to build the app with all dependencies, run:\n\n    ./gradlew build UbntTool --warning-mode all\n\nThis utility requires at least Java 9 if you want to use the FlatLaf UI. \n\n## Getting Help\n\n* Add an issue on GitHub\n* Check the project's [wiki](https://github.com/MatrixEditor/ubnt-discovery-tool/wiki)","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmatrixeditor%2Fubnt-discovery-tool","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmatrixeditor%2Fubnt-discovery-tool","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmatrixeditor%2Fubnt-discovery-tool/lists"}