CTS 114: Automate or Die




Clear To Send: Wireless Network Engineering show

Summary: Automation and programming is making its way into the WLAN engineer’s daily work life. Jake Snyder joins the show to provide his experience and use cases.<br> <br> Automate or Die<br> We’ve seen automation take over the server and networking world. Wi-Fi is the last to fully embrace programming, APIs, and automation. It’s slowly making it’s way. There are now vendors which support a full API which makes the capabilities go far beyond what we see in a dashboard.<br> Jake Snyder joins CTS to talk about how he got started with Python, his programming language of choice nowadays, and how he uses what he has learned to make processes more efficient. For networking, it’s mostly Python.<br> What are some of the use cases available to show the power of automation and programming? It’s possible to automate the most mundane tasks which can help give back many hours. An example would be automating the upgrade of a network. It could take months for a fairly large installation. But with the help of Python it could take less than a month. Turning a multi-month long project into one month is a huge return on investment. The engineer can now focus on other projects with that saved time.<br> Jake takes this to more advanced levels by comparing his design to the installation. He automates a process to tell him which APs may have been installed incorrectly. The validation survey data such as AP locations, their transmit power, and channel can be directly compared to the design. This saves a lot of time spent analyzing data and finding out that access points were installed incorrectly.<br> Another example of Wi-Fi automation can be seen in security. In Jake’s home private network, he uses automates a process of a rogue device abusing his Guest Network. When identified, he receives a message in Slack and simultaneously pulls that device’s information from his firewall. The automated process moves the client to a proxy where he is able to inject a frame onto the device’s web browser displaying the person’s credentials captured over the network. A quick way to get them off the Wi-Fi right away! While Jake brings this example from his home network, it shows what can be accomplished.<br> There’s so much more that can be done but only a few examples which we talk about on the show.<br> How To Get Started?<br> There are quite a few resources available for the beginning programmer. Jake Snyder and Ryan Adzima did a class at WLPC 2018 teaching the basics of Python using <a href="https://amzn.to/2IliUeK" target="_blank" rel="nofollow noopener">Learn Python 3 The Hard Way</a>, a resource Jake highly recommends. They showed attendees how to parse data out of an Ekahau file using Python.<br> There are Python classes catered to network engineers. This is the best way to see relation into the day job as a general Python class may not help you really see what can be done on the network. Just check out the <a href="https://pynet.twb-tech.com/" target="_blank" rel="nofollow noopener">Python for Network Engineers</a> course from Kirk Byers.<br> Then start looking at the APIs provided by your Wi-Fi vendors such as <a href="https://www.mojonetworks.com/mojo-api" target="_blank" rel="nofollow noopener">Mojo Networks</a>, Mist, and <a href="https://documentation.meraki.com/zGeneral_Administration/Other_Topics/The_Cisco_Meraki_Dashboard_API" target="_blank" rel="nofollow noopener">Meraki</a>.<br> Links And Resources<br> <br> * <a href="https://www.youtube.com/channel/UCuhV2Jt58oAYwNT74shsvHA" target="_blank" rel="nofollow noopener">Jake’s Video Channel</a><br> * <a href="https://todsfromds.com/" target="_blank" rel="nofollow noopener">Jake’s Blog</a><br> * <a href="https://amzn.to/2G3ApE5" target="_blank" rel="nofollow noopener">Learn Python 3 The Hard Way</a><br> * <a href="https://www.mojonetworks.com/mojo-api" target="_blank" rel="nofollow noopener">Mo...</a>