{"id":37214937,"url":"https://github.com/subuk/bird2snmp","last_synced_at":"2026-01-15T00:52:09.786Z","repository":{"id":261933735,"uuid":"872032200","full_name":"subuk/bird2snmp","owner":"subuk","description":"SNMP AgentX client to expose bird metrics","archived":false,"fork":false,"pushed_at":"2025-04-13T21:51:37.000Z","size":330,"stargazers_count":7,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-04-13T22:36:24.256Z","etag":null,"topics":["agentx","bgp","bird","snmp"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/subuk.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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":"2024-10-13T15:57:32.000Z","updated_at":"2025-04-13T21:51:40.000Z","dependencies_parsed_at":"2024-11-09T11:25:59.972Z","dependency_job_id":null,"html_url":"https://github.com/subuk/bird2snmp","commit_stats":null,"previous_names":["subuk/bird2snmp"],"tags_count":2,"template":false,"template_full_name":null,"purl":"pkg:github/subuk/bird2snmp","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/subuk%2Fbird2snmp","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/subuk%2Fbird2snmp/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/subuk%2Fbird2snmp/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/subuk%2Fbird2snmp/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/subuk","download_url":"https://codeload.github.com/subuk/bird2snmp/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/subuk%2Fbird2snmp/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28440598,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-15T00:34:46.850Z","status":"ssl_error","status_checked_at":"2026-01-15T00:34:46.551Z","response_time":107,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"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":["agentx","bgp","bird","snmp"],"created_at":"2026-01-15T00:52:09.181Z","updated_at":"2026-01-15T00:52:09.769Z","avatar_url":"https://github.com/subuk.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# 🦅 Bird2 SNMP Agent\n\n[![Go Report Card](https://goreportcard.com/badge/github.com/subuk/bird2snmp)](https://goreportcard.com/report/github.com/subuk/bird2snmp)\n[![License](https://img.shields.io/badge/license-MIT-blue.svg)](LICENSE)\n[![Go Version](https://img.shields.io/badge/go-1.21+-00ADD8.svg)](https://golang.org/dl/)\n\nA lightweight SNMP AgentX implementation for monitoring BIRD routing daemon through SNMP. This agent provides real-time monitoring of BGP peers and their states using the standard BGP4-MIB.\n\n## ✨ Features\n\n- 🚀 Real-time BGP peer monitoring\n- 📊 SNMP AgentX protocol support\n- 🔄 Automatic data refresh\n- 🛠️ IPv4 BGP peer support\n- 📈 Standard BGP4-MIB compliance\n\n### Supported OIDs\n\n| OID | Description |\n|-----|-------------|\n| bgpLocalAs | Local Autonomous System number |\n| bgpPeerState | Current state of BGP peer |\n| bgpPeerRemoteAddr | Remote peer IP address |\n| bgpPeerFsmEstablishedTime | Time since BGP session establishment |\n| bgpIdentifier | BGP router identifier |\n\n## 🚀 Installation\n\n### Prerequisites\n\n- BIRD2 configured with BGP peers\n- net-snmpd installed and configured\n\n### Quick Start\n\n1. Install net-snmpd:\n```bash\nopkg install snmpd snmp-mibs\n```\n\n2. Configure net-snmpd:\n```bash\ncat \u003e /opt/etc/snmp/snmpd.conf \u003c\u003cEOF\nrocommunity public\nmaster agentx\nEOF\n```\n\n3. Start snmpd:\n```bash\n/opt/etc/init.d/S47snmpd start\n```\n\n4. Install bird2snmp:\n```bash\nwget -O /opt/usr/bin/bird2snmp https://github.com/subuk/bird2snmp/releases/download/v0.1.0/bird2snmp.linux.mipsle\nchmod +x /opt/usr/bin/bird2snmp\n```\n\n5. Create init script:\n```bash\ncat \u003e /opt/etc/init.d/S81bird2snmp \u003c\u003cEOF\n#!/bin/sh\nENABLED=yes\nPROCS=bird2snmp\nARGS=\"--bird-sock=/opt/var/run/bird.ctl\"\nPREARGS=\"\"\nDESC=$PROCS\nPATH=/opt/sbin:/opt/bin:/opt/usr/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin\n\nexport TZ=/opt/etc/localtime\n\n. /opt/etc/init.d/rc.func\nEOF\nchmod +x /opt/etc/init.d/S81bird2snmp\n/opt/etc/init.d/S81bird2snmp start\n```\n\n## 🔍 Verification\n\nTest the installation with snmpwalk:\n```bash\nsnmpwalk -m ALL -c public -v2c myhost.example.com bgp\n```\n\nExpected output:\n```\nBGP4-MIB::bgpVersion = STRING: \"4\"\nBGP4-MIB::bgpLocalAs.0 = INTEGER: 64842\nBGP4-MIB::bgpPeerState.169.254.153.78 = INTEGER: established(6)\n...\n```\n\n## 🛠️ Building\n\n### Build for all platforms\n```bash\nmake release-binaries\n```\n\n### Build for current platform\n```bash\nmake\n```\n\n## ⚙️ Configuration\n\n### Command Line Options\n\n| Option | Description | Default |\n|--------|-------------|---------|\n| `-s, --bird-sock` | BIRD socket path | `/run/bird/bird.ctl` |\n| `-r, --bird-refresh-interval` | Data refresh interval | `3s` |\n| `-x, --snmp-master-sock` | SNMP master socket path | `/var/agentx/master` |\n| `-p, --snmp-priority` | SNMP registration priority | `127` |\n\n## 📝 License\n\nThis project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.\n\n## 🤝 Contributing\n\nContributions are welcome! Please feel free to submit a Pull Request.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsubuk%2Fbird2snmp","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsubuk%2Fbird2snmp","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsubuk%2Fbird2snmp/lists"}