{"id":25395815,"url":"https://github.com/yowenter/claude-ipam","last_synced_at":"2025-10-30T20:31:39.359Z","repository":{"id":266008066,"uuid":"864840679","full_name":"yowenter/claude-ipam","owner":"yowenter","description":"Just another simple \u0026 reliable CNI IPAM, better than whereabouts","archived":false,"fork":false,"pushed_at":"2025-01-16T12:11:59.000Z","size":68,"stargazers_count":4,"open_issues_count":1,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-01-16T13:10:59.836Z","etag":null,"topics":["bridge","cloud-native","cni","cni-plugins","ipam","macvlan"],"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/yowenter.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-09-29T10:00:52.000Z","updated_at":"2025-01-12T18:25:09.000Z","dependencies_parsed_at":"2024-12-02T17:33:59.266Z","dependency_job_id":null,"html_url":"https://github.com/yowenter/claude-ipam","commit_stats":null,"previous_names":["yowenter/claude-ipam"],"tags_count":3,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/yowenter%2Fclaude-ipam","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/yowenter%2Fclaude-ipam/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/yowenter%2Fclaude-ipam/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/yowenter%2Fclaude-ipam/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/yowenter","download_url":"https://codeload.github.com/yowenter/claude-ipam/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":239053979,"owners_count":19574153,"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","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":["bridge","cloud-native","cni","cni-plugins","ipam","macvlan"],"created_at":"2025-02-15T20:38:35.347Z","updated_at":"2025-10-30T20:31:33.972Z","avatar_url":"https://github.com/yowenter.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Claude: A Simple Etcd Backend CNI IPAM\n\nJust another simple CNI IPAM! \n\nYou can use it as macvlan, bridge .. cni ipam backend.\nI've tried [whereabouts](https://github.com/k8snetworkplumbingwg/whereabouts) before, it’s easy to use but there are more bugs and performance issues, such as IP conflict. \n\nThe whereabouts ipam has several bad design patterns:\n\n1 use a large configmap maintaining ip assign records, which doesn’t work good in large network. \n\n2 use daemonset instance for leader election, and iterate for the whole ip ranges to allocate just one ip. which may lead to ip conflict  in a high concurrent case.\n\nIP conflict is unacceptable, So I write my own!\n\n\n## Features\n\n### 1 Node Network Management\nYou can manually setup network for each node or just specify a  `/16` pod cidr, it will slice subnet for each node.\n\n\n### 2 No IP Conflict Issue\n\nSince we maintain the IP state machine, there will be no ip conflict bug.\n\n\n### 3 Works good with Multus CNI\n\nBest practice `Multus CNI + Macvlan|Bridge + Claude IPAM`\n\n```\napiVersion: k8s.cni.cncf.io/v1\nkind: NetworkAttachmentDefinition\nmetadata:\n  annotations:\n    k8s.v1.cni.cncf.io/resourceName: mellanox.com/roce\n\n  name: roce-macvlan\n  namespace: default\nspec:\n  config: '{ \"type\": \"macvlan\", \"cniVersion\": \"0.3.1\", \"name\": \"roce-macvlan\",\n    \"ipam\": { \"type\": \"claude\", \"range\": \"172.10.0.0/16\" } }'\n\n```\n\n\n## Build\n\n```\nexport DOCKER_IMAGE=\u003cyour own registry\u003e/claude-cni\nmake docker-build\nmake docker-push\n\n```\n\n## Deploy\n\n```\n# dependency: you should deploy your own etcd.\n# modify the claude-config cm, speciy the etcdEndpoints.\n\ncd deploy/base\nkustomize build | kubectl apply -f -\n\n```\n\n\n\n\n\n\n\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fyowenter%2Fclaude-ipam","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fyowenter%2Fclaude-ipam","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fyowenter%2Fclaude-ipam/lists"}