IPv4 and IPv6 userland network stack
Switch branches/tags
Nothing to show
Clone or download
iangudger and shentubot Fix data race on tcp.endpoint.hardError in tcp.(*endpoint).Read
tcp.endpoint.hardError is protected by tcp.endpoint.mu.

PiperOrigin-RevId: 213730698
Latest commit 9d8eef3 Sep 20, 2018



Netstack is a network stack written in Go.

Getting started

Try it out on Linux by installing the tun_tcp_echo demo:

go install github.com/google/netstack/tcpip/sample/tun_tcp_echo

Create a TUN device with:

[sudo] ip tuntap add user <username> mode tun <device-name>
[sudo] ip link set <device-name> up
[sudo] ip addr add <ipv4-address>/<mask-length> dev <device-name>

Then run with:

tun_tcp_echo <device-name> <ipv4-address> <port>


Please see CONTRIBUTING.md for more details.


This is not an official Google product (experimental or otherwise), it is just code that happens to be owned by Google.