3

After reading Valve's new employee handbook, I was really interested in setting up a company map like they described on page 6:

"The fact that everyone is always moving around within the company makes people hard to find. That’s why we have http://user — check it out. We know where you are based on where your machine is plugged in, so use this site to see a map of where everyone is right now."

What I'm trying to figure out is: how I can tell which machine or domain user (either will do) is connected to a particular wall jack?

2 Answers 2

5

Interesting. You'd need a custom web application to associate and present the data - I'm sure Valve doesn't have a problem with this.

I'd envision it like this, in the simplest case:

  • Have a database that associates a user's name to the MAC address of their computer, that gets updated when someone's computer changes or a new user is set up.
  • Configure your switches so that a description or label on the port conveys something useful about its location; r102.d004 for Room 102, desk 4, or something like that - something easily machine parsable.
  • Have an application sweep the switches every few minutes. Grab the MAC address from what's connected on the port, and the description on the port.
  • Use that data along with some nice map graphics that associate r102.d004 to a physical location, translate that MAC address into the user's name with your user database, and present it in a pretty interface.

if you use 802.1x, then you may want to adjust to use that data instead - and I can envision doing this with wireless access points to get the approximate location of someone's wireless client as well. Good luck!

3
  • I'm a developer not a sysadmin, so bare with me. Things like Have an application sweep the switches every few minutes don't really mean much to me. Can you telnet into the switch and run commands to get a status on which MAC addresses belong to which ports on the switch? I'm guessing it depends on the type of switch as well?
    – harryfino
    Jul 27, 2012 at 11:47
  • @harryfino Yes, you'll probably want homogeneous switches, and you'll definitely need a way to get the data out of the switches to associate the users. For most switch types, you'll need to have something create an telnet or ssh session to the device. Take a look at the network device login expect scipts such as clogin that are included with rancid - should be able to use those to get at the needed data. Jul 27, 2012 at 15:39
  • My guess is that such a highly secretive company like Valve would have 802.1x; that's certainly what I immediately assumed when I read that part of the handbook. Sep 4, 2012 at 8:36
0

I am facing a similar problem. As for "sweeping" the switches, that can easily be done via snmpwalk. Here's a simple loop to do just that:

for airport14 in 192.168.0.205 192.168.0.206 192.168.0.207 192.168.0.208
do

snmpwalk -v 2c -c community $airport14 AIRPORT-BASESTATION-3-MIB::wirelessPhysAddress | grep -o '"[^"]*"' |  tr -d '"' | awk '!x[$0]++' | tr '[A-Z]' '[a-z]' >> /tmp/14wifi.txt

done

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .