Cute Gopher Mascot

The Best Go Libraries For Networking (104)

Discover the best Go libraries for Networking! Find the perfect tools to streamline your development and boost productivity. From mdns to heimdall, we've got you covered. Let the coding begin!

mdns

Simple mDNS (Multicast DNS) client/server library in Golang

See More! 🚀

heimdall

An enhanced http client with retry and hystrix capabilities

See More! 🚀

sftp

Package sftp implements the SSH File Transfer Protocol as described in <https://filezilla-project.org/specs/draft-ietf-secsh-filexfer-02.txt>

See More! 🚀

arp

Package arp implements the ARP protocol, as described in RFC 826

See More! 🚀

req

Simple Go HTTP client with Black Magic (Less code and More efficiency)

See More! 🚀

request

HTTP client for golang. If you have experience about axios or requests, you will love it. No 3rd dependency

See More! 🚀

buffstreams

Streaming protocolbuffer data over TCP made easy

See More! 🚀

canopus

CoAP Client/Server implementation (RFC 7252)

See More! 🚀

dnsmonster

Passive DNS Capture/Monitoring Framework

See More! 🚀

easytcp

A light-weight TCP framework written in Go (Golang), built with message router. EasyTCP helps you build a TCP server easily fast and less painful

See More! 🚀

ether

Cross-platform Go package for sending and receiving ethernet frames

See More! 🚀

gldap

gldap provides an ldap server implementation and you provide handlers for its ldap operations

See More! 🚀

gmqtt

Gmqtt is a flexible, high-performance MQTT broker library that fully implements the MQTT protocol V3.1.1

See More! 🚀

gnet

`gnet` is a high-performance, lightweight, non-blocking, event-driven networking framework written in pure Go

See More! 🚀

gnet

`gnet` is a high-performance networking framework,especially for game servers

See More! 🚀

go-getter

Go library for downloading files or directories from various sources using a URL

See More! 🚀

go-multiproxy

Library for making HTTP requests through a pool of proxies offering fault tolerance, load balancing, automatic retries, cookie management, and more, via http.Get/Post replacement or http.Client RoundTripper drop-in

See More! 🚀

go-powerdns

PowerDNS API bindings for Golang

See More! 🚀

gopacket

Go library for packet processing with libpcap bindings

See More! 🚀

gopcap

Go wrapper for libpcap

See More! 🚀

gosnmp

Native Go library for performing SNMP actions

See More! 🚀

grab

Go package for managing file downloads

See More! 🚀

jazigo

Jazigo is a tool written in Go for retrieving configuration for multiple network devices

See More! 🚀

kcp-go

KCP - Fast and Reliable ARQ Protocol

See More! 🚀

kcptun

Extremely simple & fast udp tunnel based on KCP protocol

See More! 🚀

lhttp

Powerful websocket framework, build your IM server more easily

See More! 🚀

water

Simple TUN/TAP library

See More! 🚀

winrm

Go WinRM client to remotely execute commands on Windows machines

See More! 🚀

xtcp

TCP Server Framework with simultaneous full duplex communication, graceful shutdown, and custom protocol

See More! 🚀

fast-shot

Hit your API targets with rapid-fire precision using Go's fastest and simple HTTP Client

See More! 🚀

dhcp6

Package dhcp6 implements a DHCPv6 server, as described in RFC 3315

See More! 🚀

natiu-mqtt

A dead-simple, non-allocating, low level implementation of MQTT well suited for embedded systems

See More! 🚀

nbio

Pure Go 1000k+ connections solution, support tls/http1.x/websocket and basically compatible with net/http, with high-performance and low memory cost, non-blocking, event-driven, easy-to-use

See More! 🚀

NFF-Go

Framework for rapid development of performant network functions for cloud and bare-metal (former YANFF)

See More! 🚀

peerdiscovery

Pure Go library for cross-platform local peer discovery using UDP multicast

See More! 🚀

packet

Send packets over TCP and UDP. It can buffer messages and hot-swap connections if needed.

See More! 🚀

portproxy

Simple TCP proxy which adds CORS support to API's which don't support it

See More! 🚀

sdns

A high-performance, recursive DNS resolver server with DNSSEC support, focused on preserving privacy

See More! 🚀

raw

Package raw enables reading and writing data at the device driver level for a network interface.

See More! 🚀

ethernet

Package ethernet implements marshaling and unmarshalling of IEEE 802.3 Ethernet II frames and IEEE 802.1Q VLAN tags

See More! 🚀

go-cleanhttp

Get easily stdlib HTTP client, which does not share any state with other clients

See More! 🚀

ftp

Package ftp implements a FTP client as described in [RFC 959](https://tools.ietf.org/html/rfc959)

See More! 🚀

fwdctl

A simple and intuitive CLI to manage IPTables forwards in your Linux server

See More! 🚀

gNxI

A collection of tools for Network Management that use the gNMI and gNOI protocols

See More! 🚀

go-sse

Go client and server implementation of HTML server-sent events

See More! 🚀

go-stun

Go implementation of the STUN client (RFC 3489 and RFC 5389)

See More! 🚀

goshark

Package goshark use tshark to decode IP packet and create data struct to analyse packet

See More! 🚀

HTTPLab

HTTPLabs let you inspect HTTP requests and forge responses

See More! 🚀

iplib

Library for working with IP addresses (net.IP, net.IPNet), inspired by python [ipaddress](https://docs.python.org/3/library/ipaddress.html) and ruby [ipaddr](https://ruby-doc.org/stdlib-2.5.1/libdoc/ipaddr/rdoc/IPAddr.html)

See More! 🚀

bart

Package bart provides a Balanced-Routing-Table (BART) for very fast IP to CIDR lookups and more

See More! 🚀

cdns

Change DNS servers effortlessly via terminal

See More! 🚀

cidranger

Fast IP to CIDR lookup for Go

See More! 🚀

cloudflared

Cloudflare Tunnel client (formerly Argo Tunnel)

See More! 🚀

dns

Go library for working with DNS

See More! 🚀

event

Simple I/O event notification library written in Golang

See More! 🚀

fasthttp

Package fasthttp is a fast HTTP implementation for Go, up to 10 times faster than net/http

See More! 🚀

fortio

Load testing library and command line tool, advanced echo server and web UI. Allows to specify a set query-per-second load and record latency histograms and other useful stats and graph them. Tcp, Http, gRPC

See More! 🚀

ftpserverlib

Fully featured FTP server library

See More! 🚀

fullproxy

A fully featured scriptable and daemon configurable proxy and pivoting toolkit with SOCKS5, HTTP, raw ports and reverse proxy protocols

See More! 🚀

gev

gev is a lightweight, fast non-blocking TCP network library based on Reactor mode

See More! 🚀

go-pcaplite

Lightweight live packet capture library with HTTPS SNI extraction

See More! 🚀

gobgp

BGP implemented in the Go Programming Language

See More! 🚀

GoProxy

A library to create a customized HTTP/HTTPS proxy server using Go

See More! 🚀

gotcp

Go package for quickly writing tcp applications

See More! 🚀

graval

Experimental FTP server framework

See More! 🚀

gws

High-Performance WebSocket Server & Client With AsyncIO Supporting

See More! 🚀

httpproxy

HTTP proxy handler and dialer

See More! 🚀

netpoll

A high-performance non-blocking I/O networking framework, which focused on RPC scenarios, developed by ByteDance

See More! 🚀

nodepass

A secure, efficient TCP/UDP tunneling solution that delivers fast, reliable access across network restrictions using pre-established TCP/QUIC/WebSocket or HTTP/2 connections

See More! 🚀

psql-wire

PostgreSQL server wire protocol. Build your own server and start serving connections.

See More! 🚀

publicip

Package publicip returns your public facing IPv4 address (internet egress)

See More! 🚀

quic-go

An implementation of the QUIC protocol in pure Go

See More! 🚀

stun

Go implementation of RFC 5389 STUN protocol

See More! 🚀

tun2socks

A pure go implementation of tun2socks powered by [gVisor](https://gvisor.dev/) TCP/IP stack

See More! 🚀

vssh

Go library for building network and server automation over SSH protocol

See More! 🚀

webrtc

A pure Go implementation of the WebRTC API

See More! 🚀

axios4go

A Go HTTP client library inspired by Axios, providing a simple and intuitive API for making HTTP requests

See More! 🚀

azuretls-client

An easy-to-use HTTP client 100% in Go to spoof TLS/JA3 and HTTP2 fingerprint

See More! 🚀

gentleman

Full-featured plugin-driven HTTP client library

See More! 🚀

go-http-client

Make http calls simply and easily

See More! 🚀

go-ipmux

A library for Multiplexing HTTP requests based on multiple Source IPs

See More! 🚀

go-otelroundtripper

Go http.RoundTripper that emits open telemetry metrics for HTTP requests

See More! 🚀

go-req

Declarative golang HTTP client

See More! 🚀

go-zoox/fetch

A Powerful, Lightweight, Easy Http Client, inspired by Web Fetch API

See More! 🚀

Grequest

Simple and lightweight golang package for http requests. based on powerful net/http

See More! 🚀

httpretry

Enriches the default go HTTP client with retry functionality

See More! 🚀

pester

Go HTTP client calls with retries, backoff, and concurrency

See More! 🚀

resty

Simple HTTP and REST client for Go inspired by Ruby rest-client

See More! 🚀

rq

A nicer interface for golang stdlib HTTP client

See More! 🚀

sling

Sling is a Go HTTP client library for creating and sending API requests

See More! 🚀

tls-client

net/http.Client like HTTP Client with options to select specific client TLS Fingerprints to use for requests

See More! 🚀

linkio

Network link speed simulation for Reader/Writer interfaces

See More! 🚀

llb

It's a very simple but quick backend for proxy servers. Can be useful for fast redirection to predefined domain with zero memory allocation and fast response

See More! 🚀

gaio

High performance async-io networking for Golang in proactor mode

See More! 🚀

fibersse

Production-grade Server-Sent Events (SSE) for Fiber v3 with event coalescing, priority lanes, topic wildcards, adaptive throttling, and built-in auth

See More! 🚀

sslb

It's a Super Simples Load Balancer, just a little project to achieve some kind of performance

See More! 🚀

requests

HTTP requests for Gophers. Uses context.Context and doesn't hide the underlying net/http.Client, making it compatible with standard Go APIs. Also includes testing tools

See More! 🚀

surf

Advanced HTTP client with HTTP/1.1, HTTP/2, HTTP/3 (QUIC), SOCKS5 proxy support and browser-grade TLS fingerprinting

See More! 🚀

ssh

Higher-level API for building SSH servers (wraps crypto/ssh)

See More! 🚀

tcpack

tcpack is an application protocol based on TCP to Pack and Unpack bytes stream in go program

See More! 🚀

tspool

A TCP Library use worker pool to improve performance and protect your server

See More! 🚀

utp

Go uTP micro transport protocol implementation

See More! 🚀

go-retryablehttp

Retryable HTTP client in Go

See More! 🚀

grequests

A Go "clone" of the great and famous Requests library

See More! 🚀