{"id":16703387,"url":"https://github.com/ti-mo/conntrack","last_synced_at":"2025-04-13T02:07:32.825Z","repository":{"id":39708057,"uuid":"150478212","full_name":"ti-mo/conntrack","owner":"ti-mo","description":"Pure-Go Conntrack implementation; for humans.","archived":false,"fork":false,"pushed_at":"2024-05-17T12:29:50.000Z","size":326,"stargazers_count":121,"open_issues_count":0,"forks_count":36,"subscribers_count":5,"default_branch":"master","last_synced_at":"2025-03-28T03:01:44.753Z","etag":null,"topics":["conntrack","golang-library","hacktoberfest","netfilter","netlink"],"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/ti-mo.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":"2018-09-26T19:17:30.000Z","updated_at":"2025-03-24T02:41:01.000Z","dependencies_parsed_at":"2024-06-18T13:47:22.352Z","dependency_job_id":"7a1a2903-4848-434a-9dd6-6a1c895c92fe","html_url":"https://github.com/ti-mo/conntrack","commit_stats":null,"previous_names":[],"tags_count":5,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ti-mo%2Fconntrack","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ti-mo%2Fconntrack/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ti-mo%2Fconntrack/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ti-mo%2Fconntrack/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ti-mo","download_url":"https://codeload.github.com/ti-mo/conntrack/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247112771,"owners_count":20885606,"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":["conntrack","golang-library","hacktoberfest","netfilter","netlink"],"created_at":"2024-10-12T19:08:09.260Z","updated_at":"2025-04-04T04:04:25.029Z","avatar_url":"https://github.com/ti-mo.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# conntrack [![GoDoc](https://godoc.org/github.com/ti-mo/conntrack?status.svg)](https://godoc.org/github.com/ti-mo/conntrack) ![Tests Status](https://github.com/ti-mo/conntrack/actions/workflows/linux-integration-test.yml/badge.svg) [![Coverage Status](https://coveralls.io/repos/github/ti-mo/conntrack/badge.svg?branch=master)](https://coveralls.io/github/ti-mo/conntrack?branch=master) [![Go Report Card](https://goreportcard.com/badge/github.com/ti-mo/conntrack)](https://goreportcard.com/report/github.com/ti-mo/conntrack)\n\nPackage `conntrack` implements the Conntrack subsystem of the Netfilter (Netlink) protocol family.\nThe package is intended to be clear, user-friendly, thoroughly tested and easy to understand.\n\nIt is purely written in Go, without any dependency on Cgo or any C library, kernel headers\nor userspace tools.  It uses a native Netlink implementation (https://github.com/mdlayher/netlink)\nand does not parse or scrape any output of the `conntrack` command.\n\nIt is designed in a way that makes the user acquainted with the structure of the protocol,\nwith a clean separation between the Conntrack types/attributes and the Netfilter layer (implemented\nin https://github.com/ti-mo/netfilter).\n\nAll Conntrack attributes known to the kernel up until version 4.17 are implemented. There is experimental\nsupport for manipulating Conntrack 'expectations', beside listening and dumping. The original focus of the\npackage was receiving Conntrack events over Netlink multicast sockets, but was since expanded to be a full\nimplementation supporting queries.\n\n## Features\n\nWith this library, the user can:\n\n- Interact with conntrack connections and expectations through Flow and Expect types respectively\n- Create, get, update and delete Flows in an idiomatic way (and Expects, to an extent)\n- Listen for create/update/destroy events\n- Flush (empty) and dump (display) the whole conntrack table, optionally filtering on specific connection marks\n\nThere are many usage examples in the [godoc](https://godoc.org/github.com/ti-mo/conntrack).\n\n## Contributing\n\nContributions are absolutely welcome! Before starting work on large changes, please create an issue first,\nor join #networking on Gophers Slack to discuss the design.\n\nIf you encounter a problem implementing the library, please open a GitHub issue for help.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fti-mo%2Fconntrack","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fti-mo%2Fconntrack","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fti-mo%2Fconntrack/lists"}