Clone this repo:
  1. 352b003 Merge remote-tracking branch 'upstream/master' into HEAD by Tamir Duberstein · 4 weeks ago master
  2. c68c440 Add a type to represent the NDP Prefix Information option. by Ghanan Gowripalan · 4 weeks ago
  3. a4437b2 Remove the amss field from tcpip.tcp.handshake as it was unused by Ghanan Gowripalan · 4 weeks ago
  4. b3b7130 Use interface-specific NDP configurations instead of the stack-wide default. by Ghanan Gowripalan · 4 weeks ago
  5. f0c7b8d Support /proc/net/dev, /proc/net/route, /proc/net/snmp by Jianfeng Tan · 4 weeks ago

Netstack

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>

Contributions

Please see CONTRIBUTING.md for more details.

Issues/Bug Reports

Netstack is primarily developed as part of gVisor and any issues/bugs should be filed against the gVisor repository as this repo is not actively monitored for bug reports.

Disclaimer

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