ip

Resetting and upgrading old Hikvision IP Cameras

Hikvision security camera installed in drop ceiling

This guide isn't definitive, but it is a good reference point as I am wiping out some Hikvision IP cameras I inherited in my new office space. They were all paired with an annoying proprietary Hikvision NVR, and I wanted to wipe them and use them on a new isolated VLAN with my new Raspberry Pi Frigate-based NVR setup.

The cameras I have are Hikvision model number DS-2CD2122FWD-IS, but this guide should apply to many of the cameras from that era.

Hikvision security camera reset button location

Getting a new IP address via DHCP from Spectrum Internet

Recently this website's been the target of malicious DDoS attacks.

But after accidentally leaking my home IP address in some network benchmarking clips in a recent YouTube video, the same attacker (I assume) decided to point the DDoS cannon at my home IP.

I have things relatively locked down here—more on homelab security coming soon!—but a DDoS isn't something most residential ISPs take too kindly. So it was time for me to recycle my home IP. Lucky for me, I don't pay for a static IP address. That makes home hosting more annoying sometimes, since I have to deal with tunnels and dynamic DNS, but it also means I can hop to a new IP address if one is under attack.

Getting a new IP address

At least with the DOCSIS 3.1 modem I'm using, the overall process is as follows:

Using MaxMind's free GeoIP databases with the official Docker PHP image

I recently had to add support for the MaxMind free GeoIP database to a PHP container build that was based on the official Docker PHP image on Docker Hub. Unfortunately, it seems nobody else who's added this support has documented it, so I figured I'd post this so that the next poor soul who needs to implement the functionality doesn't have to spend half a day doing it!

First, you need the PHP geoip extension, which is available via PECL (note: if you can make the PHP project itself use a composer library, there are a few better/more current geoip libraries available via Packagist!). Here's how to install it in one of the php 5.6 or 7.0-apache images (note that 7.1 uses Debian Stretch instead of Jessie... but the instructions should be the same there):

Simple MAMP/MAMP Pro VirtualHosts in Parallels / Windows XP

(This tip should also work similarly with Vista, Windows 7, etc.).

After browsing around a bunch of different forums, the MAMP site, and Parallels documentation, I was still flummoxed by Parallels' weird Shared Host networking behavior, which seemingly didn't allow me to access virtualhosts I set up with MAMP for developing sites locally.

After much experimentation, I found that the simplest way to be able to type in 'local.example.com' (or 'dev.example.com', if that's your style) in Internet Explorer on Windows, and get a virtual host running via MAMP on my Mac, is to do the following:

Bad / Annoying IP Addresses

From time to time, there is a very disobedient/annoying computer or set of computers that annoy the heck out of me online—usually by attempting to bring down one of my websites, or by trying to access hundreds of vulnerable locations (which makes my server return a bunch of 404s) on my server.

For information on different IPs, I use the online IP information lookup tool at robtex.

Anywho, to cut a long story short, I will list the IP addresses and reverse DNS information for them on this page. Anybody that feels inclined to block these IP addresses should do so without a pang of conscience.