Show HN: Router7 – A pure-Go implementation of a small home internet router

  • I want to look into adding support for sniffing and forwarding the 802.1x packets that the AT&T fiber modem/gateways use to authenticate. This is done to bypass the crappy performance and insecurity of their device. There are some hacky implementations of this but I want to do it in Go. I've gotten as far as sniffing the packets using gopacket under FreeBSD. Unfortunately, FreeBSD doesn't seem to support VLAN 0 so I was unable to implement this for PFSense. Perhaps router7 would be a better option for me.

  • Author here. Happy to answer any questions you might have :)

  • One of the owners of Netgate, the main company behind pfSense here...

    Looks great! I’m impressed.

    I’m actually about to be out of touch for a week, so I’ve cloned the code for Router7 to read while I’m offline.

  • Stupid question: why is all the code marked "Copyright 2018 Google Inc."?

  • Any chance for split horizon dns? The ability to perma-name all my home computers is something I've always wanted in a home router.

  • @secure: Are you using netfilter or nftables for the firewall / NAT services?

  • This is super exciting as I've had this on my "hobby to do list" for a while... now I don't have to do it! :)

  • I am currently reading some source codes on tap-based IP/TCP stack and Babel. I have not wrapped my head around some of the concepts because I need to first understand some RFCs . I would be reading your code base soon, but can one fire it up to work on Raspberry Pi3 ? And can it work with something that is not fibre ?

  • Nice work.

    I would consider a router software stack, systems level coding.

  • So, just to clarify after looking at the source code:

    This is a something that manages a Linux device and makes it behave like a router by maintaining state, managing state changes and calling upon Linux utils written in C to actually make anything happen.

    So, yeah, that meta-layer is "Pure Go", sure.

  • Go is cool and all. But what's the point of buried cable when one can get 50Mbps for $5 to $10 a month on 4G in Indonesia?