Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

You're right that a lot of this stuff is learned on the job, but you can get really, really far with the right tools and the right resources and only a modicum of financial investment (if you're set on getting some hardware). Even more so now that things have open source versions. It makes it super easy to start out. That's one of the great things about this field, it's all built on more-or-less open standards. You're not far from the original RFCs used to create all of this: RFC 791 (IP), 793 (TCP), 4271 (BGP4), 9499 (overview of DNS), and many others. They can be dry, almost too much, but for the most part that's the gold right 'thar.

Stevens' book is also a stupendous resource for the down-and-dirty, so good work on starting there. Beyond that you need to start just building things.

Almost every virtualization suite allows you to create network resources (or at least it abstracts the low-level OS calls or commands required to do so). Set up two VMs. Make them talk. Break that link and learn how to repair it, using the tools that you've mentioned you are now using, tcpdump in particular. Figure out how ARP works at a low level, or NDP (neighbor discovery) if you're running IPv6. Learn how to subnet, too! Then work your way up the stack. Set up a VLAN interface, set a 802.1q tag on an interface, try to get two or more vlans to talk to each other, route between them. Break that. Set up a basic OSPF area. Set up a BGP adjacency between two private ASNs you have created. Redistribute routes among different protocols. Set up higher-level services like DNS. Set up a play anycast network on your local host. Play around with load balancers and web servers. Play, break, fix, repeat. That's pretty much what the 'professionals' do all day anyway. It all comes from practice. Software like BIRD, quagga, nginx, haproxy, ip/nftables, dnsmasq/powerdns, etc etc.

When you think you've exhausted the software side of the above tools and beyond and want to lay your hands on some actual hardware, look at picking up a 'white box' switch, a cast-off on eBay from the likes of Quanta/QCT, Edge-core or others. Don't spend more than a couple hundred bucks on this. Throw an ONIE network os on them (I suggest Sonic for open source, or if you want to pay, Cumulus) and start using 'real' hardware and play around with that. Learn the basics of sfp transceivers, fibre optics and the different mode types they come in, direct attach cables, port channels and the like. You can find super cheap transceiver hardware, fibre optic patch cables and all that at a discount vendor like fs.com, or from ebay as well. Learn how to interrogate the firmware on those, find out power transmission levels, error rates and other system info.

There's a sibling comment here suggesting you start out by setting up a LLC and going to ARIN and getting an autonomous system number. Please ignore that advice. You will be just wasting your time and your money and be distracted for no reason until you have the most basic of foundations. Use the abundance of resources you have to learn first. If you really feel like you want to take that next step, then be confident and do it!

Like a lot of things in this industry, the complexity can get fractal in nature the more you look at it. Don't let that overwhelm you. Take it one step at a time and don't be afraid to break shit, fixing it is how you learn best.



Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: