I have said before that I work also as a system administrator, even though that usually means having to deal with Windows systems, to make sure I can pay the bills. One of my customers is a private security firm, and they have a centralised burglar alarm management software from an Italian producer called Micrologic — I’m not going to give them the benefit of the link.
I encountered this customer last year, when the computer they used for that management software went haywire and they needed someone quickly to fix it up. After battling with it a bit, the final solution was to reinstall it, so we spent a whole day on it and got it to work. Before formatting, though, I did look through the system, and I found two things that made me very upset: first they installed the free-non-commercial version of the antivirus Avast (obviously that’s a commercial usage, so they were in breach of license!), then the WinZip installation was … cracked! Yes not just used in demo mode (another breach of license) but outright cracked!
And you probably know already that I take these things personal: Free Software works because people respect software licenses, and not just those that they like. At any rate the solution was simple for me: get them a new antivirus, with a proper commercial license, and install 7zip instead of WinZip. Was my customer the one installing those two components earlier? Nope! It came that way from Micrologic, and when I asked them if they knew their WinZip was cracked, and the antivirus was free for non-commercial use only, they acknowledged it like there was nothing wrong with it. Congratulations.
Anyway, an year and a couple of weeks later I’m back talking with these
idiots guys. They now provide (probably just recently) DVRs for video surveillance, integrated in their management software, and my customer decided to try them out starting with his own house, but he couldn’t get it to work, and here I come in the picture.
My customer uses Fastweb at home, a well-known Italian provider, who just in the past year started providing “normal” configurations for their own customers; earlier, they wrapped their customers around in private MANs which are then NATed to the Internet, making it very difficult to open ports for their customers. Their configuration is still not entirely standard though: instead of setting up the configuration from the router itself, you have to go through the ISP’s own website, and from there you can configure port mapping … to one of the devices connected via DHCP. There is no way to configure it to work with non-DHCP devices, as far as I can tell.
So first issue: the DVR itself comes configured as 192.168.1.100⁄24, static. This sounds like a decent option at first, but as I said above, Fastweb requires you to use DHCP to do port mapping; then you have also to keep in mind that the main ISP in Italy (Telecom Italia) for their business customers provides 192.168.0.0/24 addresses, which makes it incompatible. The company who installed the DVR itself is also not very up to speed on how they should be configured, so they didn’t change it to DHCP. I did so, and remapped the two ports that it required (8000 and, as Micrologic told me, 554 — even though neither the configuration interface, nor their own documentation that came with the device, lists it), and went to configure it in their office.. to no avail.
I called their “tech support” (which is probably a poor guy my age, who barely knows how to install a computer I guess, seeing how he proceeded to do an upgrade following what is most likely a written “script” of actions), and even after the update they insisted that the problem is in the mapping done wrong.
I connect with TeamViewer to the box at my customer’s home, and I confirm the mapping is correct. I also check whether Chrome works with it, and the answer is a resounding “yes”, so the IP is correct. At this point I remind myself that while the default gateway they preset the machine with is 192.168.1.1, Fastweb uses 192.168.1.254 as gateway, and I start to see a pattern there.
The customer suggests me to call the “boss”, who wrote the stuff in the first place, so I explain the situation to me… I get a dejà vû sense when he starts insisting that by using DHCP I can’t make port mappings because the IPs would change after rebooting the router (never heard of permanent leases and reservations I guess) just like his minion did, and then he insists that “if it works locally there cannot be any problem with the network setup” (I was telling him that I thought it might get the gateway wrong, which would make it impossible to reach the device from outside the LAN, but would let it work within).
After trying to find out whether they did actually install any of these DVRs on any other “domestic” Fastweb line (office lines are configured differently), which the minion insisted they did, with no results (the guy laughed at me when I suggested he might know anything about installation — hey he’s the boss, doesn’t have to do the dirty work does he?), since even the “customer who installed most” had made no “home Fastweb” install, I ask a simple question: “Do you develop the DVR’s firmware yourselves?”.
Obviously no, why should they? Too bad I say, if they did I would have asked to take a look so I could find why it didn’t work. And then all shit broke loose. Who do I think I am? Well, I’m a firmware engineer. Oh sure anybody could say he’s something, but they are a nation-wide distributor, how could I even think I could teach them how to do their job… I tried to get him to stop feeling patronised to explain that, since I happen to know the Fastweb setup very well, and they clearly have no idea at all on how it works, it would take me a fraction of the time to find the issue, but at that point he insisted that the conversation went overboard already and that they would refer to my customer directly.
Who do I think I am? I don’t know, but I’m pretty sure I understand networking better than them.
When dealing with people, it’s important to remember that the technical right answer isn’t always the social right answer. Considering how other people will react to what you say – even when that reaction is completely counterproductive – is one of the most important parts of being a functional human being.I’m sorry your negotiations broke down, but obviously you can’t change who *they* are. As such, it’s probably best to view it as a failure and think about how you could have negotiated in a way that got you what you wanted (a resolution to the problem) within the constraints; those constraints include the less-than-bright folks on the other end of the telephone wire.If the customer doesn’t mind their network becoming a shambling monster, you could easily give their router or another piece of home networking equipment the 192.168.1.254 address and have it proxy to the true gateway address. You could also verify that’s what the security system is up to by sniffing ARPs.
I already plan on going sniffing to see where the DVR is sending the packets back, it’s just that I didn’t bring with me the laptop today simply because it was _supposed_ to be a simple configuration issue.In general I never had such a _bad_ rub with any software provider: when you let them know you are working in the sector they usually leave you be, even if they are not proactively helping you solving the issue. A quite different situation happened with another software producer for the same customer of mine they have a few very specialised software packages in use): the software was designed for Windows 98 and later, and it’s having trouble to run on Vista/7; my customer was using it on XP, but on a multi-core system, and with a bit of fiddling around, and the help of the software’s author, who was at the time _on vacation_, we tracked down the issue to the Borland Database Engine version used not being multicore-safe.I guess the difference here is that I hit a sore spot, since the only thing Micrologic does to the VDR is glueing their logo to it and know next to nothing to the way it works, which is the main issue with non-Free Software products: when the device/software is misbehaving you cannot have an idea why.