Wireless Networking Basics for Performance/Installations
Visiting Teaching Assistant Professor
Emergent Digital Practices
EDP Tech Tuesdays, Jan 26th 2016
At some point, you're going to need to connect some computers together.
It could be for a two person performance where one computer is handling visuals and another is doing sound, for an installation of many small computers like Raspberry Pis, or a gallery install that uses multiple computers displaying web pages from a local web server.
You could use existing WiFi at the location, but you won't always know if you have access, what services will be blocked, what the speed is, if it's used by tons of devices, etc. Or, it might be a location that doesn't have any networking infrastructure.
Don't worry. You can create your own network!
Quick Networking Theory
First, some quick networking theory.
How most computers talk to each other: Ethernet
In the Ethernet protocol, each computer has an address, the "IP address", on the network. This is basically a unique number for that computer/connection. Information is sent in little chunks called packets that contain the sender and receiver addresses. This information can be passed locally between two computers or out over the Internet where it's relayed across many different connections between many different computers. Thus, the "Internet" is essentially just many layers and connections between computers that pass information.
We're only concerned with local networks in this article.
Enter the Wifi Router
A router is basically an embedded computer that creates a local network and coordinates communication with an outside world, usually the Internet, through your ISP (Internet Service Provider) but could be another network (school local network). It acts as a sort of local post office that knows which computers have which addresses and then routes information between them, hence the name: "router". It also recognizes an address that is outside of it's local network, so it sends the information to the outside world and so on.
You can connect computers to a router directly using an Ethernet cable or via WiFi. A cabled or "hardwired" connection provides the fastest and most stable communication at the expense of running a cable. Wireless networking gives you more flexibility at the cost of possible interference and a slower speed (usually not a problem for most things).
Wireless networking or "WiFi" is specified by the IEEE 802.11 standard. Various versions of this standard have come out as new radio technologies are developed and these are denoted by letters: currently a, b, g, n, & ac. Eg. if you hear someone say "wireless n", they are referring to the 802.11 N standard. In general, the newer the version, the more frequencies, more antennae, and higher power the router will have which usually means longer range. At this point (circa 2016), don't get a router that supports anything less than wireless n.
Keep in mind that some buildings will pass WiFi better than others. If you are setting up a router for an install or performance, don't assume the network will work. Always try it out before hand if you're not able to install the router in the same room as all of your computers.
There are plenty of options for routers out there now and you don't need something too expensive or fancy aka Apple AirPort. Consumer routers will work fine for most things and there are lots of used/older options that will work great. (Hit up thrift stores!) Also, stick with larger named brands like Netgear, Belkin, Dlink, & Linksys/Cisco.
Setting Things Up
Setting up a router basically involves connecting to it and logging into a web page hosted by the router itself. This is true for pretty much every router out there although some such as Apple routers require a separate software tool, ie. Airport Utility1 which comes with OSX.
Routers generally have a reset button on the back. If you bought a used one or want to start form scratch, hold the reset button for about 30 seconds while the router's power is on to reset it. This will reset all settings to their factory defaults. This will not downgrade the firmware, basically upgradeable OS version, that the router is running.
Next, connect to the router directly using an Ethernet cable. Nowadays, you might need a adapter if your computer doesn't have a port, this is true for pretty much all Apple laptops made after about 2012. Make sure you plug into one of the client ports, usually marked by a number, and not the "WAN" or "Internet" port.
You'll also probably need to disable your computer's wireless connection to make sure you're talking down the cable to the router only.
Our example router is the Linksys WRT120N available from TechCheck:
With the router powered on and your Ethernet cable in connected, you should be able to log into the router's web interface. The trick here is that you need to know what the address of the router is and the default login information. Every manufacturer has documentation which covers how to set up their router which includes this information, so the easiest place to start is to look at the install guide that came with the router or the manufacturer's website.
In our case, the Linksys documentation has plenty of info on the WRT120N.
Also, there are a number of website which compile all of this info for various routers into one place. One example is setuprouter.com which also has the login information we need to get started with the WRT120N.
So, from the information on either website, we see that our login information is:
- Default router address: 192.168.1.1
- Default user: admin
- Default password: admin
Simply type the router address into to your web browser and then the log in using the default username and password when prompted.
Note: this info is for our example router, the Linksys WRT120N, and may not be the same for other router models.
Ok, we're in. You should see lots of settings and tabs but there are only a few that are actually important to what we want to do.
- Change the admin password! DO THIS FIRST
- Choosing the networking type
- Setting up WiFi
- Possible access restrictions
Changing Admin Login Information
This is usually listed under some sort of "Admin" tab or setting. At the very least, change the password & write it down somewhere. If the router will not be accessible physically, an option is to write it on a post-it note and stick it the bottom of the router. This way, if the router is used in a gallery install, there is a record for how to login in case there is a problem and another person, say a gallery tech, needs to fix something.
Choosing the Local Network Type
The network type option is basically choosing between static IP addressing or dynamic addressing (DHCP).
A static address is basically up to the machine. The networking interface has to be told what address to use and, hopefully, there won't be any other machines on the network using that address. The router acts in a "dumb" mode and just passing information back and forth without knowing or caring which computers use which addresses. This is great for a network of a set of known machines but requires more manual configuration since you need to assign an ip address to each machine yourself. This is the simplest method, but not necessarily the easiest.
Dynamic addresses are basically given to each computer as it connects by the router. In this case, the router is "smart" and chooses addresses to give to newly connected machines, this way you don't to set an ip address manually. This is the easiest, but not the simplest method.
Sometimes different machines will connect at different times and get different addresses, so it can make situations where you want to be able to talk to a specific computer a little more difficult. There are ways around this problem such as using the zero-conf/Bonjour protocol which allows computers to be addressed via a local name instead of the ip address. This works via broadcasting a computers name and associated address and is how you can easily see other computers and printers on the same network without knowing their addresses ahead of time.
So, using zero-conf on a local network, my computer could be accessible by both its ip address 192.168.1.100 and it's name danomatika.local. Both will work but using the name will give you the same computer regardless of which local network ip address that computer currently has.
Setting up WiFi
First of all, we'll want to turn on WiFi. Sometimes it's already enabled by default for a router, sometimes not.
Important WiFi settings are:
- network name
- network mode
Network Name aka "SSID". This is the broadcast name for the network and is what you see when your device is search to connect to a new one. It's usually set to a boring default such as "linksys", so it's a good idea to change it to something more memorable.
Also, you usually have the option to enable/disable SSID broadcasting which means you have control whether the network name shows up in a list of networks when doing a WiFi search. This means you can hide a network but users can still connect to it if they know the name and type it in directly, say via the "Join Other Network..." option in the Mac OSX networking utility.
The network mode is which wireless radio protocol to use: wireless a, b, g, n, ac or a combination. If you only have newer devices, go with at least n or ac. This will give you the best performance as the router doesn't have to talk at a slower speed. If you have older devices or a mix of new and old, it's best to let the router decide by choosing a "Mixed" or hybrid option.
The safest option is to go with the default or "Mixed" mode.
Wireless networking uses digital radio technology. The router has a transmitter and receiver and your devices have transmitters & receivers.
The WiFi spectrum includes a number of channels within a give frequency band, this way you have less of a chance of interference with overlapping networks. This is kind of like international air traffic corridors where airliners travel at different levels in order to lessen the chance of collision.
In general, you will want to let the router decide on what channel to use as it will try to find and utilize the most open space.
Sometimes, however, it's helpful to choose a specific channel directly. There might be so many wireless networks nearby, the router may end up jumping channels frequently resulting in lower performance. In this case, it's good to do a little snooping to see what the best channels are yourself.
Finding the Right Channels
Using a WiFi utility scanner program, you can see the current SSIDS and channels in use. This can help you choose an alternate channel set that doesn't interfere.
On OSX, you can use the Scan tool that is part of the Wireless Diagnostics application in the
Open Wireless Diagnostics, ignore the splash screen, and open the Scan tool via Window->Scan.
Wireless security is the encryption protocol and password you need to talk to the router. We've all seen this via WiFi login screens over the years.
Nowadays you want to use at least WPA or WPA 2 Personal. The original WEP security mode is outdated and easily cracked.
If you don't want outside people in, simply lock the wireless with a suitable password and go. Sometimes, though, you might want to make it easy for people to connect, but you want to lock access to only specific devices. In this case, you can use access control.
Every Ethernet networking interface has a unique id called the MAC address. You can use this to create a list of devices which are allowed on the network as well as map static IP address to devices.
This allows you to create an "open network" that only your devices can connect to. This is sometimes advantageous when working with embedded devices as it's often much easier to configure the network use in Linux than which password protocol.
Also, being able to map machines to addresses helps solve the problem of knowing which devices have which IP addresses. The router can be set to assign the same IP address to your device and you will know it's always the same and not reused for another device.
Most router interfaces have a status to show which machines are connected on the local wired network as well as the wireless network. This is useful in debugging a bad connection and making sure any access rules are working.
Ok, that's the basics. You should be able to get a router set up and have some machines talking to each other. This is only a short guide so feel free to look online to much deeper texts in networking theory.
Airport Utility is great, but that main problem is that it only comes with Mac OSX. This means you won't be able to configure an Apple Airport with a Windows or Linux computer. ↩